webhookChannels and Sources

Configure channel sources that receive inbound traffic and route conversations to workflows.

Channels and sources control how external conversations enter Hexabot and how those conversations are routed to workflows.

Open them from Integrations > Channels or go to /settings/sources.

Core Concepts

Concept
What it means

Channel

An installed communication handler, such as web, console, or a custom channel. A channel defines the transport, message behavior, and settings schema.

Source

A configured entrypoint for one channel. A source has its own ID, name, enabled state, default workflow, and channel-specific settings.

Source ID

The identifier used by widgets and webhooks to connect to a specific source. For the web widget, this is the sourceId value.

You do not create channel types from this page. The channel list comes from the channels installed in the API. You create and maintain sources for those channels.

Hexabot creates a default source for each registered channel when the API starts and no source exists for that channel. You can add more sources when you need separate entrypoints for different websites, brands, environments, workflows, or settings.

Source List

The Channels page shows source rows.

Use the search box to find sources by name or channel. The source name is also shown in the Inbox conversation list, so clear names make support work easier.

Sources are not deleted from the admin panel. Disable a source when you want to stop traffic without losing the source ID, settings, or historical conversation links.

Create a Source

  1. Open Integrations > Channels.

  2. Click Add.

  3. Choose a channel from the menu.

  4. Enter a unique source name.

  5. Select a default workflow, if this entrypoint should start a specific conversational workflow.

  6. Keep Enabled on if the source should accept traffic immediately.

  7. Fill the channel-specific settings.

  8. Click Save.

The Add button is disabled when the API reports no registered channels. It is hidden when your role does not have source create permission.

Edit a Source

Click the pencil action on a source row.

Editable fields:

Field
Notes

Name

Required and stored without leading or trailing spaces.

Default workflow

Optional. Leave empty when the client or channel should decide which workflow to run.

Enabled

Turn off to reject new inbound events for this source.

Settings

Rendered from the selected channel's settings schema.

The channel field is read-only in the form. If you need the same settings on another channel, create a new source for that channel.

Default Workflow Routing

When an inbound event reaches a source, Hexabot resolves the workflow in this order:

Priority
Source

1

Explicit workflow passed by the client or webhook request.

2

Source default workflow.

3

Channel or workflow trigger behavior, if no workflow is set.

Use a default workflow when the source should consistently start the same automation. Leave it empty when the source is only used for manual tests, custom dispatch logic, or multiple workflow entrypoints.

The admin chat console uses enabled console sources. When a workflow is opened in the visual editor, the embedded console prefers a console source whose default workflow matches that workflow, then a console source with no default workflow, then the first enabled console source.

Channel Settings

The Settings section is generated from the channel schema returned by the API. Different channels can expose different fields. The backend validates these settings again when you save, so invalid values can still be rejected by the API.

Built-in web-style sources commonly include:

Setting
Effect

Allowed domains

Comma-separated CORS origins allowed to connect to the source. The API checks this before accepting web-style requests. Use exact origins such as https://www.example.com, or * only when any origin should be allowed.

Greeting message

Message shown on the widget pre-chat screen.

Window title

Header title for the web widget. Available on the web channel.

Avatar URL

Chatbot avatar image URL. Available on the web channel.

Show emoji / file / location

Enables or hides those widget actions.

Allowed upload types

Comma-separated MIME types accepted by the widget upload input.

Thread inactivity hours

Starts a new thread when the last message is older than this threshold.

Show start button / Disable input / Persistent menu

Exposed by the built-in schema for compatible web-style clients. Current widget behavior also depends on the widget implementation and available menu items.

If the form says no settings schema is available, the channel did not expose configurable source settings. You can still save the source with empty settings.

Web Widget Sources

For a web widget deployment, create or choose an enabled web source and use its ID in the widget configuration:

At runtime, the widget connects with that source ID. Hexabot then sends the source settings, persistent menu tree, current profile, thread information, and message history back to the widget.

The widget will not connect without a source ID. A disabled source, wrong source ID, wrong channel, or missing allowed domain can prevent the widget from loading or sending messages.

Inbox Behavior

Sources are attached to subscribers and threads. In the Inbox:

UI behavior
Detail

Source filter

Filters conversations by enabled sources.

Conversation badge

Shows the source name beside each conversation.

Thread history

Keeps the source association even if the source is later disabled.

Use separate sources when support agents need to distinguish traffic from different websites, products, regions, or test environments.

Last updated

Was this helpful?