Complete Manual

Chat

Put an AI chat widget on your site and build the conversation workflows behind it.

10 min readSidebar: ChatSwitch to Quick Start
Who can see this: Hidden from agents and supervisors.

Complete reference for the Chat section: the AI chat widget you embed on your website, the appearance customizer, sandbox test widgets, and the visual workflow builder.

The section is hidden from agents and supervisors.

For the fast path, use the Quick Start.

Section map#

Sidebar pagePathWhat it is
Widgets/chat-widgets/widgetsLive chat widgets you have deployed
Test Widgets/chat-widgets/test-widgetsSandbox clones for safe experiments
Workflows/workflowsThe conversation flows widgets execute

/chat-widgets redirects to /chat-widgets/widgets. The Chat group owns both URL trees, which is why Workflows lives here rather than in its own section.

Widgets#

The Widgets page.

Toolbar: a search box (Search widgets...), a status filter (All Status / Active / Inactive), Refresh, and Create Widget.

Creating a widget

Create Chat Widget has four fields:

FieldNotes
Widget NameRequired, up to 60 characters. Internal.
Allowed Domains (comma-separated)Domains or full URLs permitted to load the widget. Accepts example.com, https://example.com/, www.example.com.
Workflow (Optional)Defaults to No Workflow.
Knowledge Base (Optional)Defaults to No Knowledge Base. Attach one.

Allowed Domains is the single most common cause of "the widget doesn't appear". It is an exact-host allowlist: example.com and www.example.com are different entries, and both need listing if both serve your site.

Attaching a Knowledge Base is what makes the widget answer from your business, with inline citations, rather than from general knowledge. A widget without one is not broken, but it is a much weaker product.

The widget card

Each card shows the widget name, its ID with a copy button, its active state, and six actions:

ActionOpens
AppearanceThe appearance customizer
CodeWidget Configuration, containing the install snippet
ConfigAdvanced Configuration — appearance, behavior, and LLM settings
SurveyPost-chat survey configuration
EditEdit Chat Widget — the same four creation fields
DeleteA confirmation

Installing the widget

Code opens Widget Configuration. Under Integration Code is a <script> block. Copy it and paste it into your site's HTML, immediately before the closing </body> tag.

The snippet is a self-executing function that pushes your widget id and the API and socket URLs onto a global queue, then loads the widget UI bundle followed by the widget runtime. It is asynchronous, requires no build step, and works in any CMS or theme that lets you insert raw HTML.

The dialog also shows Widget Settings (status and widget id) and the Allowed Domains currently in force — check them here when debugging. Copy Widget ID copies the id only, not the whole snippet, so use the code block itself for the install.

Advanced Configuration at the bottom of the dialog opens the deeper per-widget settings for appearance, behavior, and LLM configuration.

The widget is a standalone bundle, not part of the dashboard's React app. If you are a developer editing the widget source in the repo, it has to be rebuilt separately.

The appearance customizer#

Reached from Appearance on a widget card. A live preview sits beside the controls, and View Full Screen expands it.

The header shows the active theme, or Custom (unsaved) when you have edits with no theme, plus an Unsaved changes indicator.

Save, Save As, Publish — the distinction that matters

ButtonWhat it does
SaveStores your changes. Does not affect the live widget.
Save AsSaves the current settings as a named, reusable theme with a Theme Name and Description.
PublishPushes the saved appearance to the live widget your visitors see.
ResetDiscards local edits.

You can iterate with Save as much as you like without changing anything publicly. Nothing your visitors see changes until you Publish.

Switching theme with unsaved edits prompts Unsaved ChangesYou have unsaved changes. Discard them to switch themes, or go back to save first. — with Go Back and Discard & Switch.

Setting groups

GroupContains
ThemesPreset starting points
Chat Interface StyleA complete look for the chat window — bubbles, input field, background. Your colour choices below still override individual elements on top of the preset.
ColorsPrimary Color, Secondary Color, Message Text Color
Shape & LayoutBorder Radius, Widget Position (all four corners), Theme Mode (light, dark, auto)
LogoUpload Logo or Or Logo URL
Advanced StylingBackground Darkness, Message Opacity, Message Font Size, Font Family
Suggested Question ButtonsButton Radius, Button Color, Button Text Color
Input FieldBackground Color, Text Color, Border Color
Header GradientGradient From, Gradient To
Custom CSSOverrides using .chatflow-* selectors
Floating ButtonThe launcher: Style Preset, Animation, Avatar Icon, Border Radius, Background Color, Text Color, Glow Color, Show Border, Greeting Text
Widget TextTitle, Subtitle, Welcome Message, Greeting Text, Placeholder Text, Widget Status

Widget Text is where the words your visitors read live, and it is worth more attention than the colours. A Welcome Message that names what the assistant can actually do outperforms a generic greeting.

Test Widgets#

Test Widgets.

A test widget is a clone of a live widget that you can experiment on without touching real traffic. Create one before making meaningful changes to a widget customers are using.

Create Test Widget asks for a Source Widget, then what to bring across under Include in Test Widget:

OptionBehaviour
WorkflowClones the workflow into a separate test copy
Knowledge BaseReferences the same knowledge base — not a copy
Prompt OverridesCopies prompt override settings
AppearanceCopies theme, colours, and styling

Note the asymmetry: the workflow is cloned, so editing the test copy is safe. The knowledge base is shared by reference, so editing that content does affect the live widget.

Test widget cards carry a TEST pill and add Reset Session, which clears the conversation so you can start from the first message again. This is the fastest way to test a workflow's opening branch repeatedly.

Deleting a test widget also deletes its cloned workflow.

Workflows#

The Workflows list.

A workflow is a defined conversation: a graph of nodes the widget walks through. Use one when the conversation has to do something in a particular order — qualify, book, look up, escalate. For open-ended question answering, a knowledge base alone is usually better.

The list shows production workflows with a count of each, plus test drafts nested under their production parent. Show only items with test drafts filters to work in progress.

Creating one

New Workflow opens Create New WorkflowChoose how you'd like to get started:

  • Start from ScratchBuild a custom workflow tailored to your specific needs with complete control.
  • Choose a TemplateSelect from pre-built workflow templates to get started quickly.

Templates

Workflow templates.

Filterable by category: All, General, Support, Sales, E-commerce, Booking, Marketing.

TemplateCategory
Blank CanvasGeneral
Customer SupportSupport
FAQ BotSupport
Feedback CollectionSupport
Technical SupportSupport
Welcome & RoutingSupport
Out of OfficeSupport
Lead QualificationSales
Product InquirySales
Product RecommendationE-commerce
Order TrackingE-commerce
Newsletter SignupMarketing
User OnboardingMarketing

Starting from a template and deleting what you do not need is consistently faster than building from Blank Canvas.

The builder

Drag nodes from the Components panel onto the canvas and connect them. Show Advanced Components reveals the rest; advanced nodes are marked PRO.

Categories are Core Flow Control, Communication, AI & Processing, Data & Storage, Integration & APIs, Advanced Features, Analytics & Tracking, Security & Validation, Custom & Extensions, and Industry Solutions.

The nodes you will use most:

NodeWhat it does
StartWorkflow entry point
EndWorkflow termination point
MessageSend text messages
Button MessageMessages with action buttons
Image MessageSend images
ConditionBranch based on conditions
LLM ProcessAI-powered responses
Local Data CallQuery data from data collections
API CallMake HTTP requests
ShopifyShopify store integration
Human HandoffTransfer to human agent

Advanced nodes include Switch (multiple condition branches), Loop (repeat actions), Carousel (display multiple items), Video Message, Form Message (collect user input), Webhook (trigger external services), Email, Schedule, and JavaScript.

Human Handoff is the node most workflows are missing. Without it, a conversation the AI cannot resolve has nowhere to go. It hands the conversation to a person with the full transcript attached — see Support.

Execution modes

Two toggles in the builder header:

  • Agentic or Graph. Graph follows your node connections strictly. Agentic gives the model latitude within the flow.
  • Auto-start: On / Off — whether the workflow begins on its own when a visitor opens the widget.

Saving, publishing, activating

ButtonWhat it does
SaveSaves the current workflow. On a new workflow the button reads Create.
PublishPromotes the current state to production
Activate / DeactivateWhether this workflow runs for live traffic
RunTests the workflow in place
NewStarts a fresh workflow

Status pills show whether you are looking at a Test Draft or Production, and whether it is Active or Inactive.

Save, publish, and activate are three separate steps. A saved workflow that is published but not activated will not run. If a workflow appears to be ignored, check all three, and then check that the widget's Edit dialog actually has that workflow selected in the Workflow field.

Test drafts

Saving a test workflow from the builder creates a test draft under its production parent. From the list you can Edit it, Promote it to production, or discard it. This is the safe way to change a workflow serving live traffic.

Chat and voice together#

Setting Link to Chat Widget on a call widget enables voice calling inside your web chatbot — a visitor can escalate from typing to talking without leaving the page. That field is on the call widget, not the chat widget: see AI Calls.

Languages#

Chat supports 50+ languages. This is a different figure from the 16 voice languages available to call widgets, and the two lists are not the same. Do not assume a language available in chat is available in voice, or the reverse.

Troubleshooting#

SymptomUsual cause
Widget does not appear on the siteThe host is not in Allowed Domains. www. and bare domains are separate entries.
Widget appears but answers genericallyNo knowledge base attached, or it is empty. Check Knowledge → Overview for document counts.
Appearance changes not visible to visitorsYou saved but did not Publish.
Theme reverts when switching themesYou switched with unsaved edits and chose Discard & Switch.
Workflow is ignoredNot activated, not published, or not selected in the widget's Edit dialog.
Workflow gets stuckNo path to an End node, or a Condition with no matching branch.
Conversation with an unhappy visitor dead-endsThe workflow has no Human Handoff node.
Editing a test widget changed the live oneThe knowledge base is shared by reference, not cloned. Only the workflow is cloned.
Cannot see the Chat sectionYour role is agent or supervisor.