Webhooks & n8n
Turn a message into a workflow with a simple HTTP request.
Configure a destination
Open a connection → Webhook, enter a public HTTPS URL and optional authentication fields. The platform validates destinations and rejects local/private network targets.
{
"Authorization": "Bearer YOUR_RECEIVER_SECRET",
"X-Workflow-Key": "YOUR_WORKFLOW_KEY"
}Event structure
{
"event_id": "evt_unique_id",
"event": "message.received",
"channel_type": "whatsapp",
"connection_id": "YOUR_CONNECTION_ID",
"timestamp": "2026-11-06T09:00:00.000Z",
"message": {
"id": "provider_message_id",
"from": "+971501234567",
"to": "+971509876543",
"type": "text",
"text": "Hello!",
"direction": "inbound"
}
}Build it with n8n
- Add a Webhook node
Use the POST method. Enable header authentication if needed.
- Activate your workflow
Copy n8n’s production webhook URL into the connection settings. Test URLs only work while n8n is listening for a test.
- Map the message
Pass the sender and message text to your CRM, AI agent or business logic.
- Reply through the API
Add an HTTP Request node that calls
POST /api/v1/messages, using your API key in the Authorization header.
Retry behavior
The default is three delivery attempts, ten seconds apart. Platform administrators can change those settings. A retry is the same event, not a new billable message. Keep a record of processed event IDs so repeated requests do not repeat your action.
Good receiver behavior
Validate authentication, acknowledge quickly with a 2xx response, and do long-running work asynchronously. Do not include your API key or customer messages in public logs.
When credits are exhausted
Service follows your configured grace policy. Once a grace limit is reached, sends and callbacks stop while the account remains linked. Review the Billing page for your exact allowance and expiry.