Webhook payload (APIchat)
The shape of the payloads Landbot POSTs to your APIchat channel's webhook URL.
When your APIchat bot emits a message, Landbot POSTs it to the channel's webhook URL. The complete schema is documented as the structured message webhook in the APIchat API reference.
The APIchat envelope differs from Platform in five ways:
- Fires for bot messages only — customer sends to
/send/advance the flow but don't trigger a callback. customer,channel, andagentare top-level, not nested per message.- Message fields are flat — there's no
datawrapper. - No
_rawand no per-messagesender(the top-levelagentis the author). - No
channel.type— its absence is how you tell an APIchat envelope from a Platform one.
Two more gotchas: APIchat sends no Authorization header (authenticate via a hard-to-guess URL suffix or IP allowlist), and 4xx is retried just like 5xx — to reject a message permanently you must still return 2xx and discard it internally.
→ Full schema: APIchat API reference → Webhooks.
→ See it in action: Bridge a channel to Landbot is a complete, runnable recipe that consumes this webhook end to end.