Skip to main content
A web widget is an embeddable chat and voice surface backed by one published agent version. You create it once, configure it in the Widget Builder, and drop a single script tag on your site. This page covers creating a widget and the three Widget Builder tabs.

Create a widget

A widget always points at a specific assistant and a specific published version. You can create one from either place:
  1. Open Widgets from the sidebar (/widgets).
  2. Click Create Widget.
  3. Pick an Agent. Agents with no published version are disabled and labeled (agent not published).
  4. Pick an Agent Version. Only published versions are listed.
  5. Click Create.
The new widget starts Not published. Click the row to open the Widget Builder.
You need the web_widgets:manage scope to create or edit a widget. web_widgets:read grants view-only access.

Widget Builder

Opening a widget shows the Widget Builder: a configuration panel on the left and a live preview on the right. The panel has three tabs.
TabWhat it controls
GeneralAssistant assignment, name, privacy policy, allowed domains, branding, prompts, forms, and publish state
ThemingColors, theme mode, and trigger appearance — see Appearance and branding
DeployThe embed snippet for your platform — see Installing the snippet

General

The General tab holds the widget’s core settings.
FieldTypeDefaultDescription
AssistantSelectThe agent this widget serves.
Assistant versionSelectA published version of that agent. Only published versions appear.
NameTextAssistant nameDisplay name shown in the chat header. Defaults to the selected assistant’s name when left empty.
Privacy Policy URLURLemptyLink shown at the bottom of the chat interface.
Allowed DomainsListemptyDomains that may embed this widget.
Hide “Powered by Anyreach”ToggleoffRemoves the Anyreach attribution from the widget.
Suggested QuestionsListemptyUp to 4 prompts shown above the chat button.
Pre-Conversation FormToggleoffCollects user details before the conversation starts.
Post-Conversation FeedbackToggleoffCollects feedback at the end of a chat conversation (WebRTC only).
EnabledToggleoffWhether the widget renders where it is embedded.
Click Save changes to persist the tab.

Allowed domains

Whitelist the domains that are allowed to embed this widget. Leave the list empty to allow all domains — intended for development only. When the list is empty, the widget can be embedded on any site.

Suggested questions

Add up to 4 pre-configured prompts that appear above the chat button to nudge visitors into starting a conversation. Use Add question to append one; the button disappears once you reach 4.
Suggested questions are not visible on mobile.

Pre-conversation form

Turn on Pre-Conversation Form to show a form before the conversation begins. Enabling it seeds a default form with Name, Email, and an optional Phone Number field, which you can edit in the inline form editor. The Only show once per user toggle controls whether returning visitors see the form again; it is on by default.

Post-conversation feedback

Turn on Post-Conversation Feedback to collect feedback when a chat ends. Enabling it seeds a default form with a 1–5 star Rating and an optional Comments field, plus an editable Thank-you message.
Post-conversation feedback applies to WebRTC chat conversations only.

Publishing

The Enabled toggle is the widget’s publish switch. When enabled, the widget renders wherever it is embedded; when disabled, it will not render even if the snippet is present. New widgets start disabled.

Theming

The Theming tab covers auto-branding, theme mode, and the colors and trigger styling that control how the widget looks. See Appearance and branding for the full reference.

Deploy

The Deploy tab generates the embed snippet. Pick your platform to get a copy-ready script tag and platform-specific install instructions. See Installing the snippet for the step-by-step.

How the config is stored

Every General and Theming setting is written to the widget’s config under a versioned v1 key:
{
  "v1": {
    "chat": {
      "name": "Support",
      "privacy_policy_url": "https://example.com/privacy",
      "disable_powered_by_anyreach": true
    },
    "trigger": { "suggestedQuestions": ["..."] },
    "pre_conversation_form": { "...": "..." },
    "post_conversation_feedback": { "...": "..." }
  }
}
Allowed domains and the publish state are stored on the widget record itself (domains and published), not inside config.v1.

Next steps

Appearance and branding

Theme the widget with colors, modes, and trigger styling.

Installing the snippet

Get the embed snippet and add it to your site.