Webhooks
This guide explains what webhooks are and how to configure them in the platform for real-time Delivery Reports (DLR) and WhatsApp Mobile Originated (MO) responses.
What are Webhooks?
Webhooks are a way for two systems to communicate with each other in real-time. They enable the automatic and instant delivery of data from one system (the sender) to another system (the receiver) whenever a specific event or trigger occurs.
Instead of the receiver continuously polling or requesting data from the sender, webhooks allow the sender to proactively push data to the receiver. This makes integrations more efficient, reduces latency, and simplifies your application logic.
Webhooks are commonly used to streamline data synchronization, automate workflows, and facilitate seamless integrations. By utilizing webhooks, you can receive timely updates, notifications, or data payloads whenever certain events or actions occur, enabling you to respond promptly and trigger corresponding actions in your system.
How Webhooks Work
- Event Trigger: An event or action occurs in the sender system, such as a new SMS delivery update, a WhatsApp message, or a status change.
- Webhook Registration: The receiver system registers a webhook with the sender system by providing a callback URL or endpoint where the data will be sent.
- Payload Delivery: When the event is triggered, the sender system packages relevant data into a payload and sends an HTTP request to the specified webhook URL.
- Receiver Handling: The receiver system processes the payload at the webhook endpoint and performs any necessary actions or updates.
How to Use this Documentation
This page walks you through:
- Adding a webhook for SMS / WhatsApp DLR (Delivery Reports)
- Adding a webhook for WhatsApp MO (Mobile Originated) responses
- Managing and reviewing all configured webhooks
Add Webhook for DLR (SMS/WhatsApp)
To receive real-time Delivery Receipts (DLRs), you can set up a webhook. This webhook can be used for all supported products, such as SMS and WhatsApp.
Form Fields
- Product: Select the product for which you want to create the webhook (e.g., SMS, WhatsApp).
- Webhook Server Send Method: Select the send method for the webhook (e.g., POST, GET, JSON, XML).
- Webhook Report Type: Select the type of report you want to receive via the webhook (e.g., DLR, MO). MO is not available for the SMS product.
- Waba Number (WhatsApp only): Choose a Waba number from the list. This field will not appear for the SMS product.
- Webhook (URL Endpoint): Enter the URL where you want to receive the webhook data.
Required Parameters
Set the following required parameters for the webhook by specifying the parameter names that your endpoint expects:
- Transaction ID Parameter: Parameter name for the transaction ID.
- Message ID Parameter: Parameter name for the message ID.
- Error Code Parameter: Parameter name for the error code.
- Mobile Number Parameter: Parameter name for the mobile number.
- Received Time Parameter: Parameter name for the received time.
- Delivered Time Parameter: Parameter name for the delivered time.
For WhatsApp-specific DLRs, you can also configure the following:
- Read Time Parameter: Parameter name for the read time.
- Status Parameter: Parameter name for the status.
Custom Parameters & Headers (Optional)
Optionally, you can enrich webhook requests with additional data:
- Add Custom Parameters: Enable this checkbox to add extra parameters (key–value pairs) that will be sent alongside the default fields. You can click Add More to add multiple parameters.
- Add Custom Headers: Enable this checkbox to include additional HTTP headers. You can also click Add More to define multiple headers.
Testing & Saving
- Click Test Webhook to send a test request and preview the response from your endpoint.
- Once you are satisfied with the configuration, click Save to create the webhook. You can also add multiple custom parameters and headers using the Add More buttons.
Add Webhook for WhatsApp’s MO Response
To receive real-time MO (Mobile Originated) responses from WhatsApp, you can set up a dedicated webhook for the WhatsApp product.
Form Fields
- Product: Select the product for which you want to create the webhook. For MO responses, choose WhatsApp.
- Webhook Server Send Method: Select the HTTP method used for sending the webhook (POST, GET, JSON, or XML).
- Webhook Report Type: Select MO as the report type.
- Waba Number: If applicable, select the specific Waba number.
- Webhook (URL Endpoint): Provide the full URL (including protocol, e.g.,
https://) where MO data will be sent.
Custom Parameters & Headers (Optional)
You can also include custom parameters and headers:
- Enable Add Custom Parameters and define any extra parameters your endpoint expects. Use Add More to define multiple entries.
- Enable Add Custom Headers and set any additional HTTP headers needed by your system. Again, use Add More to add several headers.
Testing & Saving
- Click Test Webhook to validate that your endpoint is reachable and that it handles the payload as expected. The test response will be shown in the Webhook Test Response section.
- Click Save Changes to persist the webhook configuration.
Manage Webhooks
The Manage Webhooks section lets you review and maintain all configured webhooks for DLR and MO.
View Webhooks
The webhooks table typically includes:
- ID: Unique identifier for each webhook.
- Product: The product associated with the webhook (SMS, WhatsApp, etc.).
- Webhook: The URL endpoint where webhook data is sent.
- Report Type: The report type (DLR or MO).
- Server Method: The HTTP/send method used (POST, GET, JSON, XML).
- Product Unique ID: A product-specific identifier, such as a Waba number.
- Action: Controls for editing, deleting, or viewing details.
If no webhooks have been configured yet, the table will display a message indicating that there are no entries.
Available Actions
- Edit: Update the webhook configuration.
- Delete: Remove the webhook from the system.
- View Details: Inspect the full configuration of a webhook.
Next Steps
Once you have created and saved your webhooks, the platform will start sending real-time DLR and MO data to the specified webhook URLs based on your configuration. If you have any questions or need further assistance, contact support.