Tonedocs
API referenceWebhooks

Recent webhook deliveries

What was sent, what your endpoint answered and how many attempts it took. The place to look when an integration "missed" an event. Newest first, 50 to a page unless you pass limit; page on with cursor, and read how many there are from the first page's meta.pagination.total.

Requires the read scope. A key with less gets 403 insufficient_scope.

GET
/v1/integrations/webhooks/deliveries
AuthorizationBearer <token>

Authorization: Bearer tone_live_… or tone_test_…. The prefix IS the environment: a test key reaches only the sandbox, and no request field bridges the two.

In: header

Query Parameters

limit?integer

How many results to return. 1-100, defaulting to 50.

Range1 <= value <= 100
Default50
cursor?string

Opaque page cursor — pass meta.pagination.cursor from the previous response to fetch the next page. Its contents are an implementation detail; do not parse or construct one.

Length1 <= length

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/integrations/webhooks/deliveries"
{  "data": [    {      "attempts": 0,      "callId": "9f1c2d84-4e3a-4f6c-b902-7d1e8a33c451",      "createdAt": "2026-08-25T09:14:22Z",      "deliveredAt": "2026-08-25T09:14:22Z",      "endpointId": "9f1c2d84-4e3a-4f6c-b902-7d1e8a33c451",      "eventType": "call.initiated",      "id": "9f1c2d84-4e3a-4f6c-b902-7d1e8a33c451",      "lastError": "connection_timeout",      "lastStatus": 0,      "status": "pending",      "subjectId": "9f1c2d84-4e3a-4f6c-b902-7d1e8a33c451",      "subjectType": "call"    }  ]}
Was this page helpful?