Skip to content

A webhook's latest deliveries, newest first: what was sent, how the receiver answered, and when it will be tried again.

GET/workspaces/{workspace}/hooks/{id}/deliveries
Name Type Required Description
workspace string Yes Instead of repo: the workspace, for its own webhooks.
id string Yes The webhook’s id.
curl https://api.g1t.sh/workspaces/flagon-io/hooks/hk_01kpx5p9s4h0t1w6x8y2a3b4cd/deliveries \
-H "Authorization: Bearer $G1T_TOKEN"

A successful request answers 200 with:

[
{
"id": "dlv_01kpx6a2b3c4d5e6f7g8h9j0kz",
"hook_id": "hk_01kpx5p9s4h0t1w6x8y2a3b4cd",
"event_id": "",
"event": "ping",
"status": "pending",
"attempts": 1,
"response_status": 503,
"response_body": "Service Unavailable",
"error": null,
"duration_ms": 212,
"payload": "{\"hook\":{\"events\":[\"git.push\",\"pull.merged\"],\"id\":\"hk_01kpx5p9s4h0t1w6x8y2a3b4cd\",\"url\":\"https://hooks.example.com/g1t\"},\"message\":\"g1t will send this webhook's events here.\",\"time\":\"2026-10-04T16:01:12.440Z\",\"type\":\"ping\"}",
"created_at": "2026-10-04T16:20:03.100Z",
"delivered_at": null,
"next_attempt_at": "2026-10-04T16:21:03.312Z"
},
{
"id": "dlv_01kpx5p9v2j7k3m8n4p5q6r7st",
"hook_id": "hk_01kpx5p9s4h0t1w6x8y2a3b4cd",
"event_id": "",
"event": "ping",
"status": "delivered",
"attempts": 1,
"response_status": 200,
"response_body": "ok",
"error": null,
"duration_ms": 184,
"payload": "{\"hook\":{\"events\":[\"git.push\",\"pull.merged\"],\"id\":\"hk_01kpx5p9s4h0t1w6x8y2a3b4cd\",\"url\":\"https://hooks.example.com/g1t\"},\"message\":\"g1t will send this webhook's events here.\",\"time\":\"2026-10-04T16:01:12.440Z\",\"type\":\"ping\"}",
"created_at": "2026-10-04T16:01:12.440Z",
"delivered_at": "2026-10-04T16:01:12.631Z",
"next_attempt_at": null
}
]

A failed request answers with one of these statuses and a body like {"error": {"code": "not_found", "message": "Repository not found."}}. See errors.

Status Code When
401 unauthenticated A token is required, or the one sent is not valid.
403 forbidden The token is valid but not allowed to do this, such as a member-only change or an agent token outside its repository.
404 not_found It does not exist, or you cannot see it.
422 invalid The input is not valid. message says which field and why.