Skip to main content

What are webhooks?

Webhooks are HTTP notifications that sends to your server when events happen on a channel — such as a message received, delivery status, or connection change. Instead of your system periodically polling the API, pushes events to you as they happen.
Webhooks require the ENTERPRISE role on your account. If your account does not have this role, webhook CRUD calls return 422. Contact support to enable it.

Available events

Payload formats

supports three payload formats:

Webhook authentication

You can configure how authenticates when calling your URL:

HMAC signing

To ensure requests received are genuinely from and have not been tampered with, enable HMAC signing by setting signing: true when creating the webhook. When enabled:
  • A 64-character hexadecimal secret is generated and returned only once on create/update.
  • Each request sent to your webhook includes a header with an HMAC-SHA256 signature computed over the payload.
  • You verify the signature on your server using the stored secret.
The secret is shown only in the POST /webhooks (create) or PATCH /webhooks/{id} (update with signing: true) response. Store it securely — it cannot be retrieved afterwards.

Per channel

Each webhook is associated with a specific channel via channelId. A single channel can have multiple webhooks with different configurations — for example, one for messages and another for connection events.

Management

Create webhook

Register a new webhook endpoint on a channel.

List webhooks

View all webhooks for a channel.

Update webhook

Update URL, events, authentication, or status.

Delete webhook

Remove a webhook from a channel.

Payload structure

Real payload examples received for each message type.