Generic HTTP webhooks

Generic HTTP webhooks enable you to trigger HTTP endpoints and notify external services when events occur in Ably. Events include when messages are published, presence events occur, changes in channel occupancy, and when channels are created or discarded. Data can be delivered individually or in batches to any HTTP endpoint.

Create a generic HTTP webhook integration

To create a generic HTTP webhook integration in your dashboard:

  1. Login and select the application you wish to integrate with an HTTP endpoint.
  2. Click the Integrations tab.
  3. Click the New Integration Rule button.
  4. Choose Webhook.
  5. Choose Webhook (again).
  6. Configure the webhook settings.
  7. Click Create.

You can also create a generic HTTP webhook integration using the Control API.

Settings

The following settings are available when creating a generic HTTP webhook integration:

SettingDescription
URLThe HTTP/HTTPS endpoint URL where webhook requests will be sent. Ably strongly recommends using HTTPS for security.
HeadersOptional HTTP headers to include with each request. Use the format key:value, for example, X-Custom-Header:my-value. Each header should be on a new line.
Request ModeChoose between Single request (sends each event individually) or Batch request (groups multiple events into a single request).
Event typesChoose which event types trigger the webhook: channel.message, channel.presence, channel.lifecycle, or channel.occupancy.
Channel filterFilters the source channels based on a regular expression.
EncodingSpecifies the encoding format of messages. Either JSON or MsgPack.
Sign with keyChoose whether to sign webhook requests with your API key for security.
EnvelopedWhen enabled (default), messages are wrapped in additional metadata. When disabled, only the raw message data is sent.