Channels
Channels connect external chat surfaces — WhatsApp, mail, voice, and similar — to agents in your workspace. Once a channel is set up and active, people can message or call in, and agents or workflows can also start a chat on that channel with a chosen agent.
Use them when you want the same workspace agents reachable on messaging or voice, without building custom integrations yourself. For an embeddable website widget or in-app sidebar chat, use Chat Integrations instead.
Channel types
See Channel types for the full list (WhatsApp Chat, Mail Chat, and Exotel Voice Call). Types that need a connected service appear in the product only when a matching connection exists.
When to use
- Let customers reach an agent on WhatsApp, email, or voice
- Give agents and workflows a way to open a chat on that channel (for example outbound WhatsApp or a voice call)
- Turn a channel on or off without deleting the agent behind it
Create a channel
Open Build → Channels and choose Create channel. The wizard walks you through four steps:
- Select channel — pick a type (for example WhatsApp Chat, Mail Chat, or Exotel Voice Call). Available types depend on your connected services under Integrations → Third Party Services.
- Name and description — name the channel so it is easy to find later.
- Routing and defaults — choose the connected service (when required), optional Default agent and Agent input, and whether to enable Vectorize.
- Channel configuration — fill type-specific settings (for example WhatsApp sender number or Exophone), then create.
After create, open the channel to edit name, routing, config, or toggle it active / inactive. You can have only one channel of each type in a workspace.
Your channel address (WhatsApp sender, mailbox, Exophone) is set on the channel. Each conversation is the other person: their phone or email. Inbound chats use that automatically. Start Chat must pass that person as Channel identifier.
Default agent
Default agent is the agent that handles inbound traffic on the channel — when someone messages or calls in and there is not already an active chat for that conversation.
- Set it on create (Routing and defaults) or later under Edit routing.
- If the default agent has an input schema, you can also set Agent input passed when that session starts.
- For voice channels, pick a voice or realtime-voice agent. Messaging channels accept a normal chat agent.
- If no default agent is set and nothing else is already chatting on that conversation, inbound messages are not delivered to an agent.
When an inbound message arrives:
- If there is already an active chat on this channel for that person (started by an agent, not as the default), the message goes there.
- Otherwise, if a default agent is set, Vettero opens or continues a session on that agent and delivers the message.
- Otherwise the message is not routed.
Vectorize
Vectorize indexes chat messages on this channel into a vector store so Search Past Conversation (and the matching agent tool) can find similar past chats.
- Turn it on in Routing and defaults when you create the channel, or later under Edit routing.
- When enabled, new sessions started through this channel (inbound default-agent and Start Chat) inherit vectorization, and message text is indexed as the chat runs.
- Leave it off if you do not need searchable chat history for this channel.
- Only chats after Vectorize is enabled are indexed. Deleting a session also removes its indexed chunks.
Start a chat from an agent or workflow
Default agent is only for inbound. Any agent or workflow can also start a chat on a channel with a required agent you choose — it does not have to be the channel’s default agent.
In the agent or workflow builder, add a Start Chat block (under chat) and configure:
| Setting | What it does |
|---|---|
| Channel | Which workspace channel to use (must be enabled) |
| Channel identifier | Customer phone, email, or other conversation id (required) |
| User identifier | Optional. The person on that channel. Defaults to the channel identifier |
| Agent | The agent that runs this chat (required — pick any agent, not only the default) |
| Agent input | Values for that agent’s input schema, when it has one |
| Timeout | How long to wait for the conversation to finish (default 5 minutes) |
| Generate summary | Optional summary when the session ends |
The agent or workflow starts a system-initiated conversation on that channel with the selected agent, then waits until the session finishes or times out. Starting a new chat for the same channel and identifier ends other active sessions for that conversation.
On voice channels (for example Exotel Voice Call), Start Chat places an outbound call. Pass the callee number as Channel identifier.
Limits
- One channel per type per workspace.
- Service-backed types need a matching connected service.
- The channel must be active for inbound traffic and for Start Chat.
- Voice channels only list voice / realtime-voice agents as the default agent.
- If an event handler and a channel share the same identifier, an active channel takes priority for inbound traffic.