Skip to main content
The System Health API serves the operational alert feed: errors, warnings, and critical thresholds tripped across the platform (flow runs, decisioning, approvals, licensing, data, models, and the Decision Sentinel). It is distinct from the notification bell, which carries passive product-feed content. All endpoints are tenant-scoped and require role viewer, editor, or admin.

GET /api/v1/system-health

Returns the alert feed for the current tenant, newest first, with the requesting user’s read state resolved per alert.

Query parameters

Severities: info, success, warning, error, critical. Sources: flow, decisioning, approvals, license, system, data, model, sentinel. (The source column accepts arbitrary strings; these are the canonical values emitted across the codebase.)

Response 200

The response echoes the full sources and severities value lists so a client can build filter controls without hard-coding them.
A user sees alerts addressed directly to them (userId matches) plus fan-out alerts (userId: null). API-key callers with no resolved user id see only fan-out alerts, and their read is always false (they have no per-user read state).

PATCH /api/v1/system-health/:id/read

Mark a single alert as read for the requesting user.

POST /api/v1/system-health/read-all

Mark every alert visible to the requesting user as read.

DELETE /api/v1/system-health/:id

Dismiss (delete) an alert for the tenant.
Read state is per-user, stored in SystemHealthAlertRead. Marking read does not delete or modify the alert — it only clears the unread indicator for that user. All three endpoints accept role viewer, editor, or admin.