List webhook deliveries
GET
Returns recent deliveries, newest first, with each attempt's status code and latency (never your response body). Use it to debug a receiver: a failed delivery is retried up to 5 times, then marked failed.
Requires an API key with the webhooks:manage scope.
apiKeyheader
AuthorizationBearer <token>A secret API key from the dashboard (Developers → API keys): vl_live_…, or vl_test_… for test mode. Each operation says which scope the key needs.
subscriptionId?stringOnly deliveries to this subscription.
type?stringOnly deliveries of this event type.
Length
length <= 100status?stringpending, in_flight, delivered or failed.
Value in
"pending""in_flight""delivered""failed"since?stringOnly deliveries created at or after this time (ISO 8601).
Format
date-timeuntil?stringOnly deliveries created before this time (ISO 8601).
Format
date-timelimit?stringHow many items to return, 1–200. Default 50.
Deliveries with their attempts, newest first
application/json- response
deliveries*array<>curl "https://api.vlayers.ai/v1/webhooks/deliveries?status=failed&limit=20" \ -H "Authorization: Bearer $VOICELAYER_API_KEY"Example Response
{ "deliveries": [ { "id": "0192f5b3-4d5e-7f6a-9b7c-8d9e0f1a2b34", "subscriptionId": "0192f5a7-3c4d-7e5f-8a6b-7c8d9e0f1a23", "projectId": "0192f5a1-5e6f-7a7b-8c8d-9e0f1a2b3c45", "eventType": "message.received", "eventId": "0192f5b1-0a1b-7c2d-8e3f-4a5b6c7d8e90", "payload": { "id": "0192f5b1-0a1b-7c2d-8e3f-4a5b6c7d8e90", "type": "message.received", "createdAt": "2026-10-20T15:04:05.000Z", "data": {} }, "status": "delivered", "attempts": 1, "maxAttempts": 5, "lastStatusCode": 200, "lastError": null, "nextAttemptAt": "2026-10-20T15:04:05.000Z", "deliveredAt": "2026-10-20T15:04:05.000Z", "createdAt": "2026-10-20T15:04:05.000Z", "updatedAt": "2026-10-20T15:04:05.000Z", "attemptLog": [ { "attempt": 1, "at": "2026-10-20T15:04:05.000Z", "statusCode": 200, "errorCode": null, "latencyMs": 182 } ] } ]}