Overview
Returns a paginated list of notifications for the current user, including incident updates, approval requests, and system messages. Notifications are sorted by most recent first.
Required role: admin or member
JWT Bearer token. Format: Bearer <your-jwt>.
Query parameters
Filter by read status. true returns only read notifications; false returns only unread.
Filter by notification type (e.g. incident.status_changed, approval.requested).
Maximum results. Default: 50. Maximum: 200.
Pagination cursor from a previous response.
Response
Returns 200 OK.
{
"items": [
{
"notificationId": "ntf_01HX9VTPQR3KF8MZWBYD5N6JCE",
"type": "approval.requested",
"title": "Approval required: Scale connection pool",
"body": "AI has proposed scaling the payment processor connection pool from 50 to 150. Your approval is required before execution.",
"read": false,
"incidentId": "inc_EXAMPLE_01JX",
"remediationId": "rem_01HX9VTPQR3KF8MZWBYD5N6JCE",
"createdAt": "2024-04-01T14:35:00Z"
}
],
"unreadCount": 3,
"nextCursor": null
}
| Field | Type | Description |
|---|
notificationId | string | Unique notification identifier |
type | string | Event type that generated this notification |
title | string | Short notification title |
body | string | Full notification message |
read | boolean | Whether the notification has been marked read |
incidentId | string | Related incident ID, if applicable |
createdAt | string | ISO 8601 timestamp |
Error responses
| Status | Error code | Description |
|---|
401 | unauthorized | Missing or invalid JWT |
Examples
curl "https://api.causeflow.ai/v1/notifications?read=false" \
-H "Authorization: Bearer eyJhbGc..."
Mark read
Mark notifications as read
SSE stream
Receive notifications in real time