Skip to main content
WEBHOOK
chat.message.created
{
  "id": "msg_xxxxxxxxxxxxxxxxxxxxxxxx",
  "api_version": "v1",
  "timestamp": "2025-01-01T00:00:00.000Z",
  "type": "chat.message.created",
  "data": {
    "reason": "channel_message",
    "audience": {
      "type": "channel",
      "user_ids": [
        "user_xxxxxxxxxxxxxx"
      ]
    },
    "channel": {
      "id": "feed_xxxxxxxxxxxxxx",
      "type": "chat",
      "experience_id": "exp_xxxxxxxxxxxxxx"
    },
    "message": {
      "id": "<string>",
      "content": "Hey, are you available for a **quick call**?",
      "created_at": "2023-12-01T05:00:00.401Z",
      "updated_at": "2023-12-01T05:00:00.401Z",
      "poll": {
        "options": [
          {
            "id": "<string>",
            "text": "<string>"
          }
        ]
      },
      "replying_to_message_id": "<string>",
      "is_edited": true,
      "is_pinned": true,
      "mentions": [
        "<string>"
      ],
      "mentions_everyone": true,
      "user": {
        "id": "user_xxxxxxxxxxxxx",
        "username": "johndoe42",
        "name": "John Doe"
      },
      "view_count": 42,
      "reaction_counts": [
        {
          "emoji": "<string>",
          "count": 42
        }
      ],
      "poll_votes": [
        {
          "option_id": "<string>",
          "count": 42
        }
      ]
    }
  },
  "company_id": "biz_xxxxxxxxxxxxxx"
}

Headers

webhook-id
string
required

A unique identifier for this webhook request

Example:

"msg_xxxxxxxxxxxxxxxxxxxxxxxx"

webhook-signature
string
required

The signature of the webhook request with the webhook version prepended

Example:

"v1,BASE64ENCODEDSIGNATURE"

webhook-timestamp
string
required

The timestamp in seconds since the Unix epoch that the webhook was sent at on the server

Example:

"1727606400"

Body

application/json
id
string
required

A unique ID for every single webhook request

Example:

"msg_xxxxxxxxxxxxxxxxxxxxxxxx"

api_version
string
required

The API version for this webhook

Allowed value: "v1"
Example:

"v1"

timestamp
string<date-time>
required

The timestamp in ISO 8601 format that the webhook was sent at on the server

Example:

"2025-01-01T00:00:00.000Z"

type
string
required

The webhook event type

Allowed value: "chat.message.created"
Example:

"chat.message.created"

data
object
required
company_id
string | null

The company ID that this webhook event is associated with

Example:

"biz_xxxxxxxxxxxxxx"

Response

200

Return a 200 status to indicate that the data was received successfully