Integrations

List webhook deliveries

List delivery attempts for a workspace webhook with cursor pagination and attempt boundaries.

GET/v1/webhooks/{webhookId}/deliveries

Path parameters

webhookId string required

An opaque webhook resource identifier.

Example01JQ2T5Y5Q3R8W9N6M4K2H7P1Y

Query parameters

filter[webhookId] string

Filter webhooks by webhookId. Use operator.value syntax.

eq, neq, in, is operators

Exampleeq.01JQ2T5Y5Q3R8W9N6M4K2H7P1Y
filter[logId] string

Filter webhooks by logId. Use operator.value syntax.

eq, neq, in, is operators

Exampleeq.01JQ2T5Y5Q3R8W9N6M4K2H7P2A
filter[attempt] string

Filter webhooks by attempt. Use operator.value syntax.

eq, neq, in, is operators

Exampleeq.1
filter[status] string

Filter webhooks by status. Use operator.value syntax.

eq, neq, in, is operators

Exampleeq.pending
filter[category] string

Filter webhooks by category. Use operator.value syntax.

eq, neq, in, is operators

Exampleeq.example
filter[nextAttemptAt] string

Filter webhooks by nextAttemptAt. Use operator.value syntax.

eq, neq, gt, gte, lt, lte, is operators

Exampleeq.2026-01-15T12:00:00Z
filter[leaseExpiresAt] string

Filter webhooks by leaseExpiresAt. Use operator.value syntax.

eq, neq, gt, gte, lt, lte, is operators

Exampleeq.2026-01-15T12:00:00Z
filter[attemptedAt] string

Filter webhooks by attemptedAt. Use operator.value syntax.

eq, neq, gt, gte, lt, lte, is operators

Exampleeq.2026-01-15T12:00:00Z
filter[completedAt] string

Filter webhooks by completedAt. Use operator.value syntax.

eq, neq, gt, gte, lt, lte, is operators

Exampleeq.2026-01-15T12:00:00Z
filter[latencyMs] string

Filter webhooks by latencyMs. Use operator.value syntax.

eq, neq, gt, gte, lt, lte, is operators

Exampleeq.1
filter[httpStatus] string

Filter webhooks by httpStatus. Use operator.value syntax.

eq, neq, gt, gte, lt, lte, is operators

Exampleeq.1
filter[responseExcerpt] string

Filter webhooks by responseExcerpt. Use operator.value syntax.

eq, neq, in, is operators

Exampleeq.example
filter[createdAt] string

Filter webhooks by createdAt. Use operator.value syntax.

eq, neq, in, is operators

Exampleeq.2026-01-15T12:00:00Z
select string

Comma-separated fields. Select a declared relation with relation(field,field).

declared fields and relations only

ExamplewebhookId,logId
order string

Order by field.asc or field.desc. Repeat fields with commas.

repeat fields separated by commas

ExamplewebhookId.asc,logId.asc
limit integer

Maximum records returned. Defaults to 25.

1 to 1000

Example25
cursor string

Opaque continuation cursor returned by the previous page.

Exampleopaque-cursor
count string

Request an exact count. This may cost more than a normal page.

exact

Exampleexact
Query options

Use filter, select, order, limit, cursor, count, search. The default limit is 25; the maximum is 1000.

Filterable: webhookId, logId, attempt, status, category, nextAttemptAt, leaseExpiresAt, attemptedAt, completedAt, latencyMs, httpStatus, responseExcerpt, createdAt.

Selectable: webhookId, logId, attempt, status, category, nextAttemptAt, leaseExpiresAt, attemptedAt, completedAt, latencyMs, httpStatus, responseExcerpt, createdAt.

Sortable: webhookId, logId, attempt, status, category, nextAttemptAt, leaseExpiresAt, attemptedAt, completedAt, latencyMs, httpStatus, responseExcerpt, createdAt.

Errors: invalid_input, query_invalid, unauthenticated, not_found, forbidden, plan_limit, conflict, rate_limited, request_quota, unavailable, internal_error.

Headers

authorization string required

Bearer workspace API key.

ExampleBearer $NQD_API_KEY
workspace-id string required

Workspace scope for the request. Required for workspace operations and must belong to the authenticated identity.

Minimum length: 1 character. · Maximum length: 128 characters.

Example01JQ2T5Y5Q3R8W9N6M4K2H7P1A

Inspect webhook state and delivery attempts through the related resources.

Use the returned nextCursor for the next page. Do not combine cursor with before, beforeId, or beforeAttempt.

Response

200Success

Response headers

x-request-id string

Correlation identifier returned with every response for support and request tracing.

Example550e8400-e29b-41d4-a716-446655440000
data object[]

Returned records. Collections and batches use an array; single records use an object.

ShowHide 13 properties
data[].webhookId string

ID of the related webhook.

Minimum length: 1 character. · Maximum length: 128 characters.

Example01JQ2T5Y5Q3R8W9N6M4K2H7P1Y
data[].logId string

ID of the related log.

Minimum length: 1 character. · Maximum length: 128 characters.

Example01JQ2T5Y5Q3R8W9N6M4K2H7P2A
data[].attempt number

attempt for this webhook.

Example100
data[].status string

Current status of the record or operation.

Allowed values: "pending", "delivering", "succeeded", "failed", "unknown"

Examplepending
data[].category string

Category assigned to the delivery attempt.

Examplegeneral
data[].latencyMs number

latency ms for this webhook.

Example100
data[].httpStatus number

http status for this webhook.

Example100
data[].responseExcerpt string

response excerpt for this webhook.

ExampleOK
data[].nextAttemptAt string

ISO 8601 timestamp for next attempt.

Example2026-01-15T12:00:00.000Z
data[].leaseExpiresAt string

ISO 8601 timestamp for lease expires.

Example2026-01-15T12:00:00.000Z
data[].attemptedAt string

ISO 8601 timestamp for attempted.

Example2026-01-15T12:00:00.000Z
data[].completedAt string

ISO 8601 timestamp for completed.

Example2026-01-15T12:00:00.000Z
data[].createdAt string

ISO 8601 timestamp for the authored or payment event. Recurring records preserve their scheduled occurrence.

Example2026-01-15T12:00:00.000Z
page object

Pagination metadata for the returned records, or the current page number when this endpoint uses numbered pages.

ShowHide 4 properties
page.limit number

Maximum number of records to return for this page.

Example1
page.hasMore boolean

Whether another page is available.

Examplefalse
page.nextCursor string

Opaque cursor for the next page, or null when there is no next page.

Examplenull
page.total number nullable

Total number of records that match the request.

Example1

Possible errors

400 Invalid request

Response headers

x-request-id string

Correlation identifier returned with every response for support and request tracing.

Example550e8400-e29b-41d4-a716-446655440000
error object

Error details returned for a failed request.

ShowHide 4 properties
error.code string

Stable machine-readable error or resource code.

Exampleinvalid_input
error.message string

Human-readable explanation of the result or error.

ExampleThe request could not be validated.
error.requestId string

Correlation identifier for support and request tracing.

Example550e8400-e29b-41d4-a716-446655440000
error.details object nullable

Additional structured details about the result or error.

ShowHide 1 property
error.details.issues object[]

Structured field issues returned when request validation fails.

ShowHide 3 properties
error.details.issues[].path string | number[]

Field path where the validation issue occurred.

One of: string alternative 1, number alternative 2

Example0 items
error.details.issues[].reason string

Machine-readable reason for the validation issue.

Allowed values: "expected_type", "required", "unexpected_property", "invalid_value", "invalid_json", "invalid_query", "unsupported_media_type", "body_too_large", "body_timeout", "conflicting_scope", "missing_header", "concurrency_required", "invalid_resource_id", "invalid_request"

Exampleinvalid_request
error.details.issues[].code string nullable

Stable machine-readable error or resource code.

Exampleinvalid_input
Example 400 response
{
  "error": {
    "code": "invalid_input",
    "message": "The request could not be validated.",
    "requestId": "550e8400-e29b-41d4-a716-446655440000",
    "details": {
      "issues": [
        {
          "path": [],
          "reason": "invalid_request"
        }
      ]
    }
  }
}
View raw OpenAPI operation

Use the machine-readable contract for client generation and payload validation.

Open OpenAPI contract ↗