← Back to schema index

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}/deliveries
  • GET /v1/webhooks/deliveries