Skip to content
Norbelys
Esc
↑↓navigate↵open⌘Jpreview

List the workspace's webhook deliveries, newest events first by default.

The order is by event, then by delivery.

GET/v1/webhook_deliveries
Authorization
AuthorizationBearer token · headerrequired

An API key (nb_live_…, nb_test_…), a workspace token (nbs_…) or a CLI token (nbc_…).

Query parameters
limitinteger<int64>

Deliveries per page, 1 to 100 (default 20).

cursorstring

The next_cursor of the previous page.

orderListOrder

desc (default) or asc.

Allowed:descasc
includeListInclude

total_count adds an exact count up to 10,000.

Allowed:total_count
webhook_endpoint_idId_WebhookEndpoint

Only deliveries to this endpoint.

matches ^whe_[0-9a-f]{32}$
event_idId_OutboxEvent

Only deliveries of this event.

matches ^evt_[0-9a-f]{32}$
stateWebhookDeliveryState

Only deliveries in this state.

Allowed:pendingdeliveredfaileddisabled
Responses
200

A page of deliveries.

dataobject[]required

At most limit rows, 100 at most.

max items 100
Show properties
Array of object
attemptsinteger<int32>required

Attempts made so far.

created_atTimestamprequired
delivered_atTimestamp | null
Show properties
One of:
Timestamp
string<date-time>
null
null
event_idId_OutboxEventrequired
matches ^evt_[0-9a-f]{32}$
event_typeEventTyperequired

The type of an event: the closed vocabulary webhook endpoints subscribe to. New types may be added.

Allowed:message.queuedmessage.sentmessage.failedmessage.uncertainmessage.cancelledmessage.snippets_fallbackdelivery_event.recordedinbound_message.receivedenrollment.stoppedenrollment.completedcampaign.status_changedconnection.health_changedimport.completedexport.completedsuppression.createdai.budget_warningai.budget_exceededendpoint.testwebhook_endpoint.disabled
idId_WebhookDeliveryrequired
matches ^whd_[0-9a-f]{32}$
last_attemptLastAttempt | null
Show properties
One of:
LastAttempt
duration_msinteger<int32> | null
response_excerptstring | null

The answer's first kilobyte, or what went wrong when nothing was answered.

response_statusinteger<int32> | null

The answer's status; null when nothing was answered.

started_atTimestamprequired
null
null
next_attempt_atTimestamp | null
Show properties
One of:
Timestamp
string<date-time>
null
null
stateWebhookDeliveryStaterequired

Where a webhook delivery is (webhook_deliveries.state): pending while an attempt is due at next_attempt_at, delivered, failed once the schedule is exhausted, or disabled when its endpoint was disabled.

Allowed:pendingdeliveredfaileddisabled
webhook_endpoint_idId_WebhookEndpointrequired
matches ^whe_[0-9a-f]{32}$
metaMetarequired

The page metadata.

Show properties
has_morebooleanrequired
next_cursorstring | null
total_countinteger<int64> | null

With ?include=total_count: exact up to 10,000.

total_count_cappedboolean | null

With ?include=total_count: true when the count stopped at 10,000.

400

The cursor is not valid for this request.

codeProblemCoderequired

The closed registry of problem codes: programs branch on a problem's code, never on its text. A code may be added, never repurposed.

Allowed:invalid_requestunauthorizedforbiddensession_requirednot_foundarchivedmethod_not_allowedconflictinvalid_stateidempotency_in_progressprecondition_failedpayload_too_largeunsupported_media_typevalidation_failedidempotency_mismatchsuppressedcaptcha_failedinsufficient_scoperate_limitedquota_exceededinternal_errorservice_unavailabletimeout
detailstringrequired

What went wrong, for a person; never an internal cause.

errorsFieldError[]

With validation_failed only: every invalid field.

Show properties
Array of FieldError
codestringrequired

What is wrong (required, range, length, format, invalid, …).

detailstringrequired

A safe, human-readable explanation.

pointerstringrequired

RFC 6901 pointer into the body, or ?name for a query parameter.

instancestringrequired

The request's path.

request_idstringrequired

The request's id, also in X-Request-Id: what support needs to find the request.

retry_afterinteger<int64> | null

With 429 and 503: the seconds to wait, as in Retry-After.

min 0
statusinteger<int32>required

The HTTP status.

min 0
titlestringrequired

Fixed per code.

typestringrequired

https://docs.norbelys.com/errors/<code>, a page that explains the code.

401

No valid credential.

codeProblemCoderequired

The closed registry of problem codes: programs branch on a problem's code, never on its text. A code may be added, never repurposed.

Allowed:invalid_requestunauthorizedforbiddensession_requirednot_foundarchivedmethod_not_allowedconflictinvalid_stateidempotency_in_progressprecondition_failedpayload_too_largeunsupported_media_typevalidation_failedidempotency_mismatchsuppressedcaptcha_failedinsufficient_scoperate_limitedquota_exceededinternal_errorservice_unavailabletimeout
detailstringrequired

What went wrong, for a person; never an internal cause.

errorsFieldError[]

With validation_failed only: every invalid field.

Show properties
Array of FieldError
codestringrequired

What is wrong (required, range, length, format, invalid, …).

detailstringrequired

A safe, human-readable explanation.

pointerstringrequired

RFC 6901 pointer into the body, or ?name for a query parameter.

instancestringrequired

The request's path.

request_idstringrequired

The request's id, also in X-Request-Id: what support needs to find the request.

retry_afterinteger<int64> | null

With 429 and 503: the seconds to wait, as in Retry-After.

min 0
statusinteger<int32>required

The HTTP status.

min 0
titlestringrequired

Fixed per code.

typestringrequired

https://docs.norbelys.com/errors/<code>, a page that explains the code.

403

The credential lacks automation:read.

codeProblemCoderequired

The closed registry of problem codes: programs branch on a problem's code, never on its text. A code may be added, never repurposed.

Allowed:invalid_requestunauthorizedforbiddensession_requirednot_foundarchivedmethod_not_allowedconflictinvalid_stateidempotency_in_progressprecondition_failedpayload_too_largeunsupported_media_typevalidation_failedidempotency_mismatchsuppressedcaptcha_failedinsufficient_scoperate_limitedquota_exceededinternal_errorservice_unavailabletimeout
detailstringrequired

What went wrong, for a person; never an internal cause.

errorsFieldError[]

With validation_failed only: every invalid field.

Show properties
Array of FieldError
codestringrequired

What is wrong (required, range, length, format, invalid, …).

detailstringrequired

A safe, human-readable explanation.

pointerstringrequired

RFC 6901 pointer into the body, or ?name for a query parameter.

instancestringrequired

The request's path.

request_idstringrequired

The request's id, also in X-Request-Id: what support needs to find the request.

retry_afterinteger<int64> | null

With 429 and 503: the seconds to wait, as in Retry-After.

min 0
statusinteger<int32>required

The HTTP status.

min 0
titlestringrequired

Fixed per code.

typestringrequired

https://docs.norbelys.com/errors/<code>, a page that explains the code.

422

A parameter is invalid.

codeProblemCoderequired

The closed registry of problem codes: programs branch on a problem's code, never on its text. A code may be added, never repurposed.

Allowed:invalid_requestunauthorizedforbiddensession_requirednot_foundarchivedmethod_not_allowedconflictinvalid_stateidempotency_in_progressprecondition_failedpayload_too_largeunsupported_media_typevalidation_failedidempotency_mismatchsuppressedcaptcha_failedinsufficient_scoperate_limitedquota_exceededinternal_errorservice_unavailabletimeout
detailstringrequired

What went wrong, for a person; never an internal cause.

errorsFieldError[]

With validation_failed only: every invalid field.

Show properties
Array of FieldError
codestringrequired

What is wrong (required, range, length, format, invalid, …).

detailstringrequired

A safe, human-readable explanation.

pointerstringrequired

RFC 6901 pointer into the body, or ?name for a query parameter.

instancestringrequired

The request's path.

request_idstringrequired

The request's id, also in X-Request-Id: what support needs to find the request.

retry_afterinteger<int64> | null

With 429 and 503: the seconds to wait, as in Retry-After.

min 0
statusinteger<int32>required

The HTTP status.

min 0
titlestringrequired

Fixed per code.

typestringrequired

https://docs.norbelys.com/errors/<code>, a page that explains the code.

Try it
Server
Authorization
Parameters
Request
curl -X GET 'https://api.norbelys.com/v1/webhook_deliveries' \
  -H 'Authorization: Bearer YOUR_TOKEN'
Response
{
  "data": [
    {
      "attempts": 0,
      "created_at": "2019-08-24T14:15:22Z",
      "delivered_at": "2019-08-24T14:15:22Z",
      "event_id": "evt_0190f8a2b4c87a10b6d2e4f6a8c0e2f4",
      "event_type": "message.queued",
      "id": "whd_0190f8a2b4c87a10b6d2e4f6a8c0e2f4",
      "last_attempt": {
        "duration_ms": 0,
        "response_excerpt": "string",
        "response_status": 0,
        "started_at": "2019-08-24T14:15:22Z"
      },
      "next_attempt_at": "2019-08-24T14:15:22Z",
      "state": "pending",
      "webhook_endpoint_id": "whe_0190f8a2b4c87a10b6d2e4f6a8c0e2f4"
    }
  ],
  "meta": {
    "has_more": true,
    "next_cursor": "string",
    "total_count": 0,
    "total_count_capped": true
  }
}