Webhooks — Overview
Instead of polling, let Boostigo tell you when an order changes. Boostigo sends an HTTPS POST to the webhook URL configured on your API key (Client Dashboard → API Keys → Webhook settings).
POST https://customer.com/api/boostigo/webhook
Content-Type: application/json
X-Boostigo-Event: order.success
X-Boostigo-Delivery: evt_A8H72K
X-Boostigo-Timestamp: 1788794127
X-Boostigo-Signature: sha256=3f9c…
{
"event": "order.success",
"data": {
"order_id": "BST-LKE-8F72A19X",
"request_id": "ORDER-CLIENT-10001",
"platform": "likee",
"likee_id": "1137852558",
"likee_uid": "1278112264",
"diamond": 5000,
"amount": "95.00",
"currency": "USD",
"status": "success",
"created_at": "2026-09-07T12:30:00Z",
"updated_at": "2026-09-07T12:30:09Z",
"completed_at": "2026-09-07T12:30:09Z"
}
}
data has exactly the same shape as GET /orders/{order_id}.
#Failed order
{
"event": "order.failed",
"data": {
"order_id": "BST-LKE-8F72A19X",
"request_id": "ORDER-CLIENT-10001",
"platform": "likee",
"likee_id": "1137852558",
"likee_uid": "1278112264",
"diamond": 5000,
"amount": "95.00",
"currency": "USD",
"status": "failed",
"error": { "code": "RECHARGE_FAILED", "message": "Recharge could not be completed." },
"created_at": "2026-09-07T12:30:00Z",
"updated_at": "2026-09-07T12:30:15Z"
}
}
#Your endpoint must
- Read the raw request body (before any JSON parsing).
- Verify the signature with your webhook secret.
- Return any
2xxstatus quickly (e.g.200 {"received":true}) — do slow work afterwards. - Be idempotent: the same
X-Boostigo-Deliverymay be delivered more than once if your server answered slowly.
Anything other than 2xx (or a timeout) triggers the retry schedule. GET /orders/{order_id} always remains available as a fallback.
#Configuration
| Setting | Where |
|---|---|
Webhook URL (https:// required) |
Client Dashboard → API Keys → Webhook settings |
| Subscribed events | same dialog — default order.success, order.failed, order.cancelled |
Webhook secret (whsec_…) |
API key details ("Callback Secret") — regenerating the key rotates it |
| Delivery log & manual retry | Client Dashboard → Orders → open an order |