Skip to content
Small Business Chatbot Docs
Support Open the app

Chat ended

Starts a workflow when a website chat with your AI chatbot ends, with the visitor's details, the summary and the transcript.

What this does

In Small Business Chatbot, this trigger starts a run in every published workflow that uses it, once for each website chat.

Label in the app
Chat Widget Conversation Ended
Fires
About a minute after the visitor closes the chat or leaves the page
Carries
The fields below, as {{trigger.…}}
Settings
None. Its window shows "No settings for this node yet."

When it fires

  • The visitor closes the chat window or leaves the page. The app then waits about a minute in case they come back, and starts the runs.
  • If the same visitor still has the chat open in another tab, the runs start when the last tab closes. One chat starts one run per workflow.
  • A chat in Chat Widget › Playground is a real chat and starts runs too.
  • The owner's summary email for the chat goes out at the same point.

What it carries

Variable Type What it holds
trigger.first_name text The visitor's first name. Empty when not given.
trigger.phone text The phone number the visitor gave in the chat. Empty when not given.
trigger.email text The email the visitor gave. Empty when not given.
trigger.action_items text The chat summary: what the visitor wants and what to do next, written to you
trigger.contact_information_collected true or false true when the visitor gave a phone number or an email
trigger.company_name text Your company name as the chatbot has it
trigger.chatbot_url text The address of your chat assistant
trigger.llm_model text The AI model that answered
trigger.conversation_history_id id The saved conversation's id
trigger.session_id id The chat session's id
trigger.conversation_type text Always Bot
trigger.date_created date and time When the chat was summarised, as 2026-10-27 14:03:11
trigger.number_of_messages number Messages in the chat, both sides
trigger.messages list The transcript. Each message has role (user for the visitor, assistant for the chatbot) and content.
trigger.token_usage object AI usage counts for the chat
trigger.event_name text Always conversation_ended. The same value is in trigger.event_type and trigger.event.name.
trigger.event_source text Always chatbot_websocket_disconnect
trigger.public_config_id id Your account's id. Also in trigger.workspace.public_config_id.
trigger.contact.* object The CRM contact linked to the chat. All fields are empty when there isn't one. The fields are listed in Contact events.
trigger.summary.* object first_name, phone, email, action_items and contact_information_collected, grouped
trigger.chatbot.* object chatbot_url, company_name and llm_model, grouped
trigger.conversation.* object conversation_history_id, session_id, conversation_type, date_created, number_of_messages, messages and token_usage, grouped
trigger.conversation_record.* object The conversation as saved, with its original field names, such as First_Name and Action_Items

trigger.conversation_record.Lead_Quality_Score holds A, B, C or D when Allow Lead Grading in the Summary? is Yes under Chat Widget › Look and Feel.

Note

trigger.contact is filled only when the chat is linked to a CRM contact. That needs Save contacts or Log activity on for Chat widget under CRM › Contacts › Settings, and a phone number or email from the visitor. Stop workflows when contact replies and Only enrol each contact once match runs by this contact. With Only enrol each contact once on, a chat with no contact is blocked and shows Blocked due to re-enrol.

Example

A trimmed run:

trigger
{
  "first_name": "Dana",
  "phone": "416-555-0133",
  "email": "[email protected]",
  "action_items": "Dana wants a quote for a new furnace. Call her back this week.",
  "contact_information_collected": true,
  "number_of_messages": 9,
  "messages": [
    { "role": "assistant", "content": "Hi, how can I help?" },
    { "role": "user", "content": "I need a quote for a new furnace." }
  ],
  "contact": { "contact_id": "c_1042", "first_name": "Dana", "phone": "+14165550133", "tags": [] }
}

Used in

Next steps