githubEdit

Webhooks

Webhooks are automated mechanisms for real-time communication between systems, enabling one system to send data to another as soon as a specific event occurs.


Managing Webhooks

circle-exclamation
Webhookschevron-right

Webhook Triggers

Webhook triggers define which events will result in a webhook request being sent to your endpoint. For example, when a user reads a message, a webhook request is sent containing details about that event

Webhook Target

The webhook target defines the endpoint where Channel360 will send webhook event payloads.

appUserId

Webhook payloads include an appUserId, which uniquely identifies a user within the organisation.

The appUserId is created automatically when a user first interacts with your channel (for example, when they send a message). It can be used to correlate webhook events and to send notifications to that user.

Trigger
Description

notification:delivery:channel

Triggered when a notification is successfully delivered to a customer channel.

notification:delivery:failure

Triggered when a notification fails to be delivered to a customer channel / the user’s device.

notification:delivery:user

Triggered when a notification is successfully delivered to the user’s device.

conversation:read

Triggered when a user has read the conversation.

message:appUser

Triggered for inbound messages (from clients).

message:appMaker

Triggered for outbound messages, which are the messages the user sends in a conversation.

message:delivery:failure

Triggered for failed outbound messages from the /reply endpoint.

flow:submission

Triggered for whatsapp flow submissions.

Create Webhook

POST https://www.channel360.co.za/v1.1/org/{{orgId}}/webhooks

Get Webhooks

GET https://www.channel360.co.za/v1.1/org/{{orgId}}/webhooks

Delete Webhook

DELETE https://www.channel360.co.za/v1.1/org/{{orgId}}/webhooks/{{webhook-id}}

Path Parameters

Field
Type
Description

orgId

string required

Your Organization ID

webhook-id

string required

Unique identifier of the webhook

Retry Policy

A webhook call will be attempted up to 5 times over a 15 minute window. The attempts will happen at an exponentially increasing interval if the target responds with anything but a success (2XX) or a non-recoverable errorarrow-up-right. If no response is received within 20 seconds, the call will be considered a failure and will also be reattempted.

Non-recoverable Errors

The following status codes are deemed to be non-recoverable and Channel Mobile will not reattempt a call when receiving a response with them:

  • 400: The target exists, but can’t process the payload.

  • 401: The target is behind authentication or doesn’t recognize the webhook secret.

  • 403: Channel Mobile should not be calling the target.

  • 404: The target doesn’t exist.

  • 406: The target exists, and rejected the webhook intentionally.

Last updated

Was this helpful?