Overview
Conversational Components are in-chat UX features configured per WhatsApp business phone number. They help users start and navigate conversations faster.
Supported types:
- Welcome Messages — trigger (
request_welcome) on first contact - Ice Breakers — tap-to-send starter prompts
- Commands — slash commands with hints
In Dualhook setups, webhook events for these interactions are delivered directly from Meta to your endpoint through Webhook Override.
Welcome Messages
When enabled, WhatsApp emits a first-contact event when a user opens or starts chat with your number. The event opens a customer service window so you can reply with free-form messages.
{
"messages": [
{
"from": "<WHATSAPP_USER_PHONE_NUMBER>",
"id": "<WHATSAPP_MESSAGE_ID>",
"timestamp": "<TIMESTAMP>",
"type": "request_welcome"
}
]
}
Ice Breakers
Tappable starter prompts shown when a user opens chat for the first time.
- Up to 4 Ice Breakers per phone number
- Up to 80 characters each
- Emojis are not supported
- Tapping sends a normal text message — the selected text appears in
messages[].text.body
If a user enters chat through a wa.me link with pre-filled text, the Ice Breaker UI can be dismissed.
Commands
Slash-prefixed text options users discover by typing / in the chat:
- Up to 30 commands
- Keyword max 32 characters
- Hint max 256 characters
- Emojis are not supported
Command usage is delivered as a normal text message. Your backend should parse messages[].text.body and run the associated action.
Implementation Notes
- Handle
request_welcomeas a distinct trigger in your webhook consumer. - Treat Ice Breakers and Commands as plain inbound text events.
- Keep webhook handling idempotent using message IDs.
- Return
HTTP 200quickly and process asynchronously.
For setup instructions, see Configure Conversational Components. For Dualhook customers, these components are configured in WhatsApp Manager at phone-number level.