Skip to content

Webhook Delivery

  • Requests are sent as HTTP POST with Content-Type: application/json
  • Your endpoint must respond with 2xx within 30 seconds
  • Non-2xx responses or timeouts trigger retries

Failed deliveries are retried with exponential backoff, up to 5 attempts:

AttemptDelay before attempt
1Immediate
25 seconds
330 seconds
42 minutes
510 minutes

After the final failed attempt, the delivery is moved to the dead letter queue (DLQ).

Failed deliveries are stored in the DLQ for manual inspection and replay.

MethodPathDescription
GET/webhooks/:id/dead-lettersList dead letters
GET/webhooks/:id/dead-letters/:dlqIdGet dead letter (includes payload)
POST/webhooks/:id/dead-letters/:dlqId/retryRetry a pending dead letter
DELETE/webhooks/:id/dead-letters/:dlqIdDiscard a pending dead letter
GET/webhooks/:id/dead-letters/statsDLQ stats (pending/retried/discarded)
Terminal window
curl -X POST https://api.tokenbot.com/v1/webhooks/wh_123/dead-letters/dlq_456/retry \
-H "X-API-Key: tb_live_your_key"

Each event includes a unique event_id. Use this to deduplicate events in case of retries or replays.

If your endpoint fails consistently (10+ consecutive failures), the webhook may be automatically deactivated. You’ll receive an email notification.