Skip to main content
API referenceWebhooks

Webhook Subscription

Last updated

GET
/api/v1/webhooks/subscriptions/{id}

Read back one webhook subscription and its recent delivery outcomes. delivery.status is the one field to branch on: ok means nothing is outstanding, retrying means the queue has the event and will try again (not a loss), and dead_letter means an event will never arrive. last_failure carries the reason, the HTTP status_code, the attempt count and the next scheduled attempt, which is what a subscriber debugging a missed event actually needs. The id is a UUID v4 returned once at creation -- there is no listing route, and an id that was not kept cannot be recovered. Mirrored by the get_webhook_subscription MCP tool. Served live (no static file).

Path Parameters

id*string
Formatuuid

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/v1/webhooks/subscriptions/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "data": {    "active": false,    "created_at": "2026-06-01T00:00:00.000Z",    "delivery": {      "dead_letter": 1,      "last_failure": {},      "pending": 1,      "status": "ok"    },    "filters": {      "example": null    },    "id": "example",    "url": "https://api.metagraph.sh/example"  },  "meta": {    "artifact_path": "example",    "cache": "short",    "contract_version": "2026-06-29.1",    "generated_at": "2026-06-01T00:00:00.000Z",    "pagination": {      "collection": "example",      "cursor": 1,      "limit": 1,      "next_cursor": 1,      "order": "asc",      "returned": 1,      "sort": "example",      "total": 1    },    "published_at": "2026-06-01T00:00:00.000Z",    "source": "live-cron-prober",    "stale_contract": {      "built_under": "example",      "live": "example"    }  },  "ok": true,  "schema_version": 1}