Skip to main content

Operator Notifications API

GET /api/operator/notifications returns a read-only, operator-facing feed of current attention items for Service Admin and other local consumers. It merges runtime state that otherwise lives behind separate update, recovery, lifecycle, health, and dashboard/diagnostic surfaces.

The feed is safe metadata only. Notification messages must not echo raw logs, environment values, provider credentials, secret values, command stdout/stderr, private keys, tokens, cookies, passwords, or recovery material. Source-specific details remain available through their owning APIs where already permitted.

Response shape​

{
"notifications": [
{
"dedupeKey": "lifecycle_crashed:echo-service",
"kind": "lifecycle_crashed",
"severity": "critical",
"serviceId": "echo-service",
"message": "Service \"echo-service\" crashed and is not running.",
"firstSeenAt": "2026-05-20T00:00:00.000Z",
"lastSeenAt": "2026-05-20T00:00:00.000Z",
"relatedActionEndpoint": "/api/services/echo-service/restart",
"source": "lifecycle"
}
],
"summary": {
"generatedAt": "2026-05-20T00:01:00.000Z",
"total": 1,
"critical": 1,
"warning": 0,
"info": 0
}
}

Notification contract​

Each item includes:

FieldMeaning
dedupeKeyStable key for merging equivalent source events.
kindOne of update_available, update_failed, install_deferred, recovery_review, lifecycle_crashed, health_unhealthy, blocked_start, or diagnostic_warning.
severitycritical, warning, or info.
serviceIdOwning service id, or null for aggregate diagnostics.
messageSafe operator summary. It must not include raw source payload values.
firstSeenAt / lastSeenAtOldest and newest source timestamps after dedupe.
relatedActionEndpointOwning API endpoint for follow-up, or null if none exists.
sourceSource family: updates, recovery, lifecycle, health, or diagnostics.

The endpoint sorts notifications by severity first, then newest lastSeenAt, then dedupeKey. Multiple recovery events for the same service/kind are merged into a single current notification with the earliest first-seen and latest last-seen timestamps.