List Notification Deliveries
GET /notification_deliveries
GET /notification_deliveriesInteractive request editor loads with JavaScript.
Authorization
BearerAdminToken Organization-scoped admin token. Read operations require a valid token, and write operations require a token with write permission.
In: header
Query Parameters
Restrict to deliveries to one notification channel.
uuidRestrict by delivery state. pending is still queued for
retry; failed has exhausted its attempts.
Value in
- "pending"
- "delivered"
- "failed"
Cursor: return deliveries older than this id. Use the
next_before_id from the previous page.
int641 <= valuePage size.
1 <= valueResponse Body
application/json
application/json
application/json
curl -X GET "$AISIX_CP/notification_deliveries" \ -H "Authorization: Bearer $AISIX_TOKEN"OK
{
"data": [
{
"id": 0,
"channel_id": "bbe8aa76-a4bb-46f6-a785-df8e831cc459",
"channel_name": "string",
"channel_type": "string",
"event_type": "string",
"payload": {},
"status": "pending",
"attempts": 0,
"last_error": "string",
"next_attempt_at": "2019-08-24T14:15:22Z",
"delivered_at": "2019-08-24T14:15:22Z",
"created_at": "2019-08-24T14:15:22Z"
}
],
"next_before_id": 0
}Request body or parameters failed validation.
{
"error": {
"code": "string",
"message": "string"
}
}Missing or invalid bearer.
{
"error": {
"code": "UNAUTHENTICATED",
"message": "no org context"
}
}Complete operation details and schema variants
GET /notification_deliveries
List Notification Deliveries
Read the delivery log for the organization's notification channels, newest first — what was sent, to which channel, and whether it landed.
Paginate with the cursor rather than an offset: pass the
next_before_id from the previous response as before_id. A
response whose next_before_id is null is the last page.
payload is the event body as it was handed to the channel, and
last_error carries the delivery failure verbatim.
Parameters
-
channel_id(query, string, optional): Restrict to deliveries to one notification channel. -
status(query, string, optional): Restrict by delivery state.pendingis still queued for retry;failedhas exhausted its attempts. -
before_id(query, integer, optional): Cursor: return deliveries older than this id. Use thenext_before_idfrom the previous page. -
limit(query, integer, optional): Page size.
Responses
-
200: OK -
data(array, required): -
data[].id(integer, required): Delivery id, and the cursor value forbefore_id. -
data[].channel_id(string, required): -
data[].channel_name(string, required): Channel name at read time.nullwhen the channel has since been deleted. -
data[].channel_type(string, required): Channel type at read time.nullwhen the channel has since been deleted. -
data[].event_type(string, required): Event that triggered the delivery, e.g. a budget threshold. -
data[].payload(object, required): Event body as it was handed to the channel. -
data[].status(string, required):pendingis still queued for retry;failedhas exhausted its attempts. -
data[].attempts(integer, required): Delivery attempts made so far. -
data[].last_error(string, required): Verbatim failure from the most recent attempt. -
data[].next_attempt_at(string, required): When the next retry is due. -
data[].delivered_at(string, required): When the delivery succeeded.nulluntil it does. -
data[].created_at(string, required): -
next_before_id(integer, required): Cursor for the next page.nullwhen this is the last page. -
400: Request body or parameters failed validation. -
error(object, required): Error details. -
error.code(string, required): Machine-readable identifier. Examples:UNAUTHENTICATED,INVALID_REQUEST,MASTER_KEY_UNSET,INTERNAL. -
error.message(string, required): Human-readable explanation; safe to surface to operators. -
401: Missing or invalid bearer. Response fields (application/json): identical toGET /notification_deliveries, response 400 above.
cURL
curl -X GET '$AISIX_CP/notification_deliveries' -H 'Authorization: Bearer $AISIX_TOKEN'