Webhook Logs
Returns paginated delivery logs for a webhook: request metadata, HTTP status, and truncated response bodies for debugging.
Request
GET /api/webhooks/{webhook}/logs HTTP/1.1
Host: app.nomacms.com
project-id: <project-uuid>
Authorization: Bearer <api-token>
Accept: application/json| Path segment | Description |
|---|---|
{webhook} | Webhook UUID |
Requires the admin ability on the token.
Query parameters
| Param | Description |
|---|---|
paginate | Page size (default 25). Capped by the server (typically 100 maximum). |
page | Page number (Laravel pagination; default 1). |
Response (200)
JSON object in Laravel pagination form, including:
| Field | Type | Description |
|---|---|---|
data | array | Log rows (newest first) |
current_page | number | Current page |
per_page | number | Page size used |
total | number | Total log rows |
last_page | number | Last page number |
Each element in data reflects stored delivery attempts. Typical fields include:
| Field | Type | Description |
|---|---|---|
action | string | Event name (for example content.updated) |
url | string | URL that was called |
status | string | HTTP status code as string, or values like blocked / error for failures before a normal response |
request | object | Sanitized copy of the outgoing payload (large payloads may be truncated for storage) |
response | object | status, body (possibly truncated), body_truncated |
Exact keys match the server implementation; use logs to confirm behavior for your project.
Errors
| Status | When |
|---|---|
| 400 | Missing project-id or project cannot be resolved |
| 401 | Missing or invalid bearer token |
| 403 | Token does not have admin (or *) |
| 404 | Unknown UUID or webhook belongs to another project (Webhook not found.) |
| 429 | Rate limited |
Example
import { createClient } from "@nomacms/js-sdk"
const client = createClient({
projectId: process.env.NOMA_PROJECT_ID!,
apiKey: process.env.NOMA_API_KEY!,
})
const logs = await client.webhooks.logs(process.env.NOMA_WEBHOOK_UUID!, {
paginate: 20,
page: 1,
})
console.log(logs)import axios from "axios"
async function main() {
const uuid = process.env.NOMA_WEBHOOK_UUID!
const { data } = await axios.get(`https://app.nomacms.com/api/webhooks/${uuid}/logs`, {
params: { paginate: 20, page: 1 },
headers: {
"project-id": process.env.NOMA_PROJECT_ID!,
Authorization: `Bearer ${process.env.NOMA_API_KEY}`,
Accept: "application/json",
},
})
console.log(data)
}
void main()curl -sS "https://app.nomacms.com/api/webhooks/$NOMA_WEBHOOK_UUID/logs?paginate=20&page=1" \
-H "project-id: $NOMA_PROJECT_ID" \
-H "Authorization: Bearer $NOMA_API_KEY" \
-H "Accept: application/json"Related
- Get a Webhook — Webhook settings
- List Webhooks — Delivery overview
- JavaScript SDK — Webhooks —
webhooks.logs