Webhooks

List webhook deliveries

Every delivery attempted in the project, newest first — what was sent, where, how many times, and what came back. Filter by endpoint, by lifecycle status, or by event type. Deliveries are per (event, endpoint): an event matching two subscribed endpoints produces two rows, retried and observed independently. A success or failed delivery is deleted 30 days after it was created, and can no longer be read or redelivered. A pending one is kept until it settles.

get/v1/projects/{project_id}/webhook-deliveries

Request

  • Base URL: https://api.naturali.ai
  • URL: https://api.naturali.ai/v1/projects/{project_id}/webhook-deliveries
  • Auth: one of:
    • HTTP bearer
    • OAuth 2 (authorization code, authorization URL https://api.naturali.ai/authorize, token URL https://api.naturali.ai/token, scopes: mcp:access)

Query parameters

limitinteger

Results per page, 1 to 100 (default 50). Above 100 it is clamped; below 1 or not an integer it is 400.

cursorstring

Opaque pagination cursor from a previous response's next_cursor.

webhook_idstring
Example:whk_V1StGXR8Z5jdHi6B

Only deliveries addressed to this endpoint.

status'pending' | 'success' | 'failed'

Only deliveries in this state.

typestring
Example:generation.completed

Only deliveries of this event type.

Response

A page of deliveries.

next_cursorstring nullable required

Cursor for the next page, or null when there are no more.

Example response

{
  "data": [
    {
      "id": "whd_V1StGXR8Z5jdHi6B",
      "project_id": "proj_V1StGXR8Z5jdHi6B",
      "webhook_id": "whk_V1StGXR8Z5jdHi6B",
      "event_id": "evt_V1StGXR8Z5jdHi6B",
      "type": "conversation.started",
      "payload": {
        "id": "evt_V1StGXR8Z5jdHi6B",
        "type": "conversation.started",
        "project_id": "proj_V1StGXR8Z5jdHi6B",
        "resource_type": "conversation",
        "resource_id": "conv_V1StGXR8Z5jdHi6B",
        "created_at": "2026-07-31T00:00:00.000Z"
      },
      "status": "success",
      "status_code": 200,
      "attempts": 1,
      "last_attempt_at": "2026-07-31T00:00:01.000Z",
      "response_body": "ok",
      "created_at": "2026-07-31T00:00:00.000Z",
      "updated_at": "2026-07-31T00:00:01.000Z"
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.