List Support Webhook Deliveries
GET/api/support/webhooks/:webhook/deliveries
Returns one webhook's delivery log, paginated, newest first by default — every ticket event and test ping queued for it, with the exact payload sent, the attempt count, the latest response code and any error. Any member of the account can read it; a webhook belonging to another tenant is a 404.
support:readGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Query parameters
filter[status](string, optional) — one status or a comma-separated list of:pending,delivered,failedfilter[event](string, optional) — one event name or a comma-separated list:ticket.created,ticket.updated,ticket.replied,ticket.resolved,pingfilter[ticket_id](integer, optional) — one ticket id or a comma-separated listfilter[created_at](string, optional) — a single dayYYYY-MM-DDor an inclusive rangeYYYY-MM-DD,YYYY-MM-DD(when the delivery was queued)sort(string, optional) — prefix with-for descending. Allowed sorts:id,created_at,status,response_code,attempts,delivered_at. Default-idpage(integer, optional) — page number, default 1per_page(integer, optional) — page size, default 10, maximum 100
Delivery fields
id(integer) — the delivery id, sent asX-SKU-Deliverywebhook_id(integer)event(string) —ticket.created,ticket.updated,ticket.replied,ticket.resolved, orpingticket_id(integer, nullable) — null for pingsstatus(string) — one of:pending(queued, or between retries),delivered,failedresponse_code(integer, nullable) — HTTP status from the latest attempt; null when no response was received (timeout, connection error, not attempted)attempts(integer) — attempts made so far (max 3 for ticket events, 1 for pings)delivered_at(ISO-8601, nullable) — when the 2xx landederror(string, nullable) — why the latest attempt failed:HTTP <code>plus up to 500 characters of the response body, the transport error,Webhook is disabled.,Webhook no longer exists., or the unsafe-URL reason. Cleared on successpayload(object) — the exact JSON body that was (or will be) POSTed; the signature was computed over its serialised formcreated_at(ISO-8601) — when the delivery was queued
The response is a standard paginator: data[] plus current_page, last_page, per_page, total, from, to, first_page_url, last_page_url, next_page_url, prev_page_url, path, links.
Authentication: Bearer token with the support:read scope, or an authenticated session, from a tenant admin — like every other webhook endpoint, delivery history is readable only by an admin of the account (403 otherwise). Customer endpoints run in tenant context — send the X-Tenant-Id header or call from a tenant subdomain.
Request
Responses
- 200
- 401
- 403
- 404
- 429
OK
Response Headers
Unauthorized
Response Headers
Forbidden
Response Headers
Not Found
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.