Skip to content
API PlatformDevelopers

Webhook events · conversations

conversation.created/1

Conversation started. A new conversation was opened (usually the first message from a customer).

Payload

We POST this JSON to your endpoint. Answer any 2xx within 30 seconds. The same id arrives again on a retry — skip ones you have handled.

Payload fields
FieldTypeWhat it is
idrequiredstringEvent id. The same on every retry: use it to skip duplicates.pattern ^evt_[0-9A-HJKMNP-TV-Z]{26}$
typerequiredstringEvent type.always conversation.created
versionrequiredstringPayload version.always 1
api_versionrequiredstringThe endpoint's API version.
occurred_atrequiredstringWhen it happened.date-time
company_idrequiredintegerYour workspace id.
datarequiredobject
idrequiredintegerConversation id.
company_idrequiredintegerWorkspace id.
contactobject or nullThe contact.
idrequiredintegerId.
namerequiredstring or nullName.
channelobject or nullThe channel.
idrequiredintegerId.
namerequiredstring or nullName.
assigned_staffobject or nullAssigned staff member.
idrequiredintegerId.
namerequiredstring or nullName.
assigned_teamobject or nullAssigned team.
idrequiredintegerId.
namerequiredstring or nullName.
assigned_atstring or nullISO 8601.
created_atstring or nullISO 8601.

Example

{
  "id": "evt_01J8Z7BZQ4F6G8J2K5N7Q9S1VC",
  "type": "conversation.created",
  "version": "1",
  "api_version": "2026-10-01",
  "occurred_at": "2026-09-24T09:20:00Z",
  "company_id": 1001,
  "data": {
    "id": 77410,
    "company_id": 1001,
    "contact": {
      "id": 48213,
      "name": "Jane Doe"
    },
    "channel": {
      "id": 301,
      "name": "Main WhatsApp"
    },
    "assigned_staff": null,
    "assigned_team": null,
    "assigned_at": null,
    "created_at": "2026-09-24T09:11:40Z"
  }
}

Headers

  • Webhook-Signature: t=…,v1=… — how to check it
  • Webhook-Id (also Webhook-Event-Id): the event id, the same on every retry — skip ones you have handled
  • Webhook-Delivery-Id: this delivery attempt, new on every try