Documentation Webhooks & n8n
DEVELOPER GUIDE

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.

Custom headers
{
  "Authorization": "Bearer YOUR_RECEIVER_SECRET",
  "X-Workflow-Key": "YOUR_WORKFLOW_KEY"
}

Event structure

Incoming event · See OpenAPI for exact schema
{
  "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

  1. Add a Webhook node

    Use the POST method. Enable header authentication if needed.

  2. Activate your workflow

    Copy n8n’s production webhook URL into the connection settings. Test URLs only work while n8n is listening for a test.

  3. Map the message

    Pass the sender and message text to your CRM, AI agent or business logic.

  4. 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.

Need help with an integration?Talk to support