Skip to main content
API Preview
Developers

REST API/Webhooks

Webhooks

Webhook subscription management and event delivery.

8 endpoints

Endpoints

MethodPathAuth
POST/webhooks/

Register a webhook

JWT
GET/webhooks/

List webhook subscriptions

JWT
GET/webhooks/{subscription_id}

Get webhook details

JWT
PATCH/webhooks/{subscription_id}

Update a webhook

JWT
DELETE/webhooks/{subscription_id}

Delete a webhook

JWT
GET/webhooks/{subscription_id}/deliveries

List webhook deliveries

JWT
POST/webhooks/{subscription_id}/test

Send test webhook

JWT
GET/webhooks/events

List supported event types

JWT

Endpoint Details

POST /webhooks/

POST/webhooks/JWT

Register a new HTTPS endpoint to receive webhook event notifications. Requires org_admin role.

Request Example

json
{
  "url": "https://ats.example.com/webhooks/alter",
  "events": [
    "match.proposed",
    "match.accepted",
    "attestation.issued"
  ],
  "secret": "whsec_abc123..."
}

Response

json
{
  "id": "w1h2k3s4-u5b6-7890-abcd-ef1234567890",
  "org_id": "e1f2a3b4-c5d6-7890-efab-cdef12345678",
  "url": "https://ats.example.com/webhooks/alter",
  "events": [
    "match.proposed",
    "match.accepted",
    "attestation.issued"
  ],
  "is_active": true,
  "failure_count": 0,
  "created_at": "2026-03-10T10:00:00Z"
}

GET /webhooks/

GET/webhooks/JWT

List all webhook subscriptions for the authenticated organisation. Cursor-paginated.

GET /webhooks/events

GET/webhooks/eventsJWT

Returns the list of event types that can be subscribed to: placement.created, placement.updated, attestation.issued, attestation.revoked, match.proposed, match.accepted, match.declined.

Response

json
{
  "events": [
    "placement.created",
    "placement.updated",
    "attestation.issued",
    "attestation.revoked",
    "match.proposed",
    "match.accepted",
    "match.declined"
  ]
}

GET /webhooks/{subscription_id}

GET/webhooks/{subscription_id}JWT

Retrieve details for a single webhook subscription.

Path Parameters

NameTypeDescription
subscription_id*stringSubscription UUID

PATCH /webhooks/{subscription_id}

PATCH/webhooks/{subscription_id}JWT

Update the URL, subscribed events, or active status.

Path Parameters

NameTypeDescription
subscription_id*stringSubscription UUID

DELETE /webhooks/{subscription_id}

DELETE/webhooks/{subscription_id}JWT

Delete a webhook subscription and its delivery history. Returns 204 No Content.

Path Parameters

NameTypeDescription
subscription_id*stringSubscription UUID

POST /webhooks/{subscription_id}/test

POST/webhooks/{subscription_id}/testJWT

Dispatch a synthetic test event to verify connectivity and signature validation.

Path Parameters

NameTypeDescription
subscription_id*stringSubscription UUID

GET /webhooks/{subscription_id}/deliveries

GET/webhooks/{subscription_id}/deliveriesJWT

Paginated list of delivery attempts for a subscription.

Path Parameters

NameTypeDescription
subscription_id*stringSubscription UUID

Query Parameters

NameTypeDescription
limitintegerPage size (max 100)
cursorstringPagination cursor