Skip to main content
Last Updated: May 13, 2026, 11:42 AM

Webhooks

Webhooks let you receive real-time notifications about WhatsApp message events — such as when a message is delivered, read, or when a contact sends a reply. Configure a webhook to push these events to your own server or third-party integration.


  1. Go to Settings → Channels → WhatsApp.
  2. Click the Webhooks tab.

WhatsApp channel settings with the Webhooks tab selected The Webhooks tab is in the WhatsApp channel settings.


Setting Your Webhook URL

  1. Enter your server's endpoint URL in the Webhook URL field.
  2. Click Save.

QuantixOne will send HTTP POST requests to this URL for each message event.

Webhook URL input field with a Save button Enter the HTTPS endpoint that will receive event payloads.

Requirements:

  • The URL must be publicly accessible over HTTPS.
  • Your server must respond with an HTTP 2xx status within 10 seconds.

Shared Secret & Signature Verification

After saving the webhook URL, QuantixOne displays a Shared Secret (HMAC-SHA256 key). Use this to verify that incoming webhook requests are genuinely from QuantixOne and have not been tampered with.

Every webhook request includes the header:

X-AiSensy-Signature: <HMAC-SHA256 signature>

To verify:

  1. Compute HMAC-SHA256(raw request body, shared_secret).
  2. Compare the result to the value in the X-AiSensy-Signature header.
  3. Reject the request if they do not match.

Shared secret field with a copy button below the webhook URL Copy the shared secret and store it securely in your server's environment variables.


Event Types

QuantixOne sends the following event types to your webhook:

EventDescription
message.sentA message was submitted for delivery
message.deliveredThe message was delivered to the contact's device
message.readThe contact opened and read the message
message.failedDelivery failed (includes error code and reason)
message.receivedAn inbound message was received from a contact

Webhook Payload Format

Each POST to your endpoint includes a JSON body:

{
"event": "message.delivered",
"timestamp": "2026-05-01T10:30:00Z",
"projectId": "proj_abc123",
"data": {
"messageId": "msg_xyz789",
"contactPhone": "+14155552671",
"status": "delivered"
}
}

Testing Your Webhook

Click Send Test Event to POST a sample payload to your configured URL. Check your server logs to confirm the event was received and the signature verified correctly.

Send Test Event button on the webhooks configuration page Use Send Test Event to verify your endpoint is working.


Partner vs. Direct Webhooks

Webhook TypeScope
Partner WebhookReceives events for all projects under your partner account
Direct WebhookReceives events for a single project (identified by X-AiSensy-Project-Id header)

Configure the appropriate type based on whether you are building a multi-tenant integration or a single-location setup.


Video Walkthrough


What's Next