Skip to Content
My App
Api

Webhook

Register and manage webhook endpoints so Aexrux POSTs real-time events to your server — including inbound messages on EVERY channel (WhatsApp, Facebook, Instagram, Telegram and more): subscribe to `conversation.received` and read `data.channel` + `data.message`. Also message sent / delivered / read / failed, plus campaign and contact events. When you set a signing secret each delivery carries an HMAC-SHA256 signature header you can verify.

GET
/webhooks

Authorization

http
headerAuthorizationBearer <token>

Response Body

application/json
  1. response
data*array<string>
meta*
Example Request
curl -X GET 'https://aexrux.com/api/v1/webhooks'
Example Response200
{  "data": [    "string"  ],  "meta": {    "count": 0,    "available_events": [      null    ]  }}
POST
/webhooks

Authorization

http
headerAuthorizationBearer <token>

Request Body

application/json
  1. body

Register an outbound webhook endpoint for the current workspace. Scramble reads these rules to document the request body. Mirrors the validation in the in-app WebhooksController::store.

The platform POSTs a JSON envelope to the registered url whenever a subscribed event fires. When a signing secret is configured the request carries an X-Aexrux-Signature header (HMAC-SHA256 of the body).

url*string

Public HTTPS endpoint the platform POSTs events to. Required.

Formaturi
Lengthlength <= 2048
name?|

Optional friendly label shown in the dashboard.

Lengthlength <= 191
secret?|

Optional HMAC signing secret. When set, deliveries carry an X-Aexrux-Signature header so receivers can verify authenticity.

Lengthlength <= 191
active?|

Whether the endpoint is active and should receive events. Defaults to true.

events?array<>|

Event names to subscribe to. Omit (or pass [""]) to receive all. Supported events fired by the system: message_received — inbound message received message_sent — outbound message sent message_delivered — outbound message delivered message_read — outbound message read message_failed — outbound message failed broadcast_created — broadcast created broadcast_status_updated — broadcast status changed broadcast_message_status_updated — per-recipient broadcast status changed campaign_created — campaign created campaign_status_updated — campaign status changed campaign_contact_status_updated — per-contact campaign status changed campaign_contact_clicked — campaign contact clicked a link campaign_contact_replied — campaign contact replied contact_opt_in — contact opted in contact_updated — contact updated device_status_updated — device (number) status changed "" — subscribe to every event

Response Body

application/json
  1. response
data*array<unknown>
meta*string
Example Request
curl -X POST 'https://aexrux.com/api/v1/webhooks' \  -H 'Content-Type: application/json' \  -d '{  "url": "http://example.com"}'
Example Response
{  "data": [    null  ],  "meta": "string"}
DELETE
/webhooks/{id}

Authorization

http
headerAuthorizationBearer <token>

Path Parameters

id*integer

Response Body

application/json
  1. response
data*
meta*string
Example Request
curl -X DELETE 'https://aexrux.com/api/v1/webhooks/0'
Example Response
{  "data": {    "id": 0,    "deleted": true  },  "meta": "string"}