WebhookDelivery
Single webhook delivery record (each retry increments `attempt`). Returned by `GET /webhooks/deliveries` (cross-endpoint feed) and `GET /webhooks/{id}/deliveries` (per-endpoint). The cross-endpoint variant adds a joined `endpoint_url` to avoid extra lookups.
Properties
| Field | Type | Description |
|---|---|---|
type * | string | |
id * | integer | Auto-increment delivery identifier. |
attributes * | object | Canonical webhook delivery attributes (receiver endpoint, attempt, response, and status). |
endpoint_id | string (uuid) | UUID of the webhook endpoint that originated this delivery. |
endpoint_url | string | Receiver endpoint URL. Only present on the cross-endpoint feed (`GET /webhooks/deliveries`). |
event_type | string | Event type that triggered the delivery. Determines the shape of the HMAC-signed payload sent to the receiver. |
validation_id | string | null | Validation UUID when the event is `validation.*`. `null` for `billing.*` events. |
response_status | integer | null | HTTP code returned by the receiver. `null` when the delivery never completed a request (timeout, SSRF block). |
response_body | string | null | Receiver response body, truncated to 500 characters. |
response_time_ms | integer | null | Total request time in milliseconds. |
attempt | integer | Attempt number (1 = first send, >1 = retries). |
status | string | Current delivery status. |
next_retry_at | union | UTC ISO 8601 of the next scheduled retry. `null` when the delivery is terminal (delivered or exhausted). |
error_message | string | null | Error message if the delivery failed (`null` on success). |
created_at | string (date-time) | ISO 8601 timestamp in UTC with explicit `Z` suffix. Example: `"2026-05-01T05:14:38Z"`. Every datetime field uses this shape. The descriptor at `meta.datetime` makes the contract runtime-assertable. |
Used in operations
GET /v1/webhooks/{id}/deliveriesGET /v1/webhooks/deliveries