Skip to main content
For AI agents: a documentation index is available at https://docs.coverbase.com/llms.txt — this page is also available in markdown by appending .md to the URL.
Coverbase records every webhook delivery attempt as an audit row. Whether the delivery came from a domain-event fan-out, a workflow send_webhook action, or a manual test, there is one history record per attempt — including retries and deliveries that were blocked by the URL restrictions. Use the history to debug failing receivers, confirm a delivery happened, and monitor delivery health over time. The aggregate health of a subscription (last_delivery_status, delivery_success_rate, delivery_count) is also surfaced on the webhook object.

List delivery attempts

GET
GET /v1/webhooks/{webhook_id}/deliveries
Returns the delivery attempts for one webhook, newest first, paginated. Org-scoped to the API key.

Path parameters

string
required
The webhook subscription ID (cbwh_...).

Query parameters

integer
default:"50"
Page size. Clamped to the range 1100 (values outside the range are clamped, not rejected).
integer
default:"0"
Number of records to skip. Negative values are clamped to 0.

Example request

cURL
Python

Example response

Response fields

object[]
The page of delivery attempts, newest first. Each item:
integer
Total recorded attempts for this webhook, ignoring limit/offset. Page until offset + len(data) >= total.
integer
The effective page size after clamping.
integer
The effective offset after clamping.

Delivery status values

delivered means a response was received, not that the receiver “succeeded”. If your endpoint returns a non-2xx, the attempt is still recorded as delivered with that response_status, and the delivery is retried.

Error responses

Pagination example

Next page
See API conventions → Timestamps for the epoch-seconds convention used by attempted_at and created_at.