Notifications
The bell in the top bar collects what happened in the current workspace. The badge counts unread notifications. Each workspace has its own feed: switching workspace switches the bell.
What you are notified about
| Event | Who gets it | Links to |
|---|---|---|
| Incident opened: an alert rule fired and opened an incident | Everyone in the workspace | The incident |
| Incident escalated: a more severe alert fired on an open incident | Everyone in the workspace | The incident |
| Node offline: a node sent no heartbeat for 10 minutes | Everyone in the workspace | The node |
| Rollout paused: a staged rollout paused on a failed health gate or by an operator, or a canary stopped on a failed health check | Everyone in the workspace | Operations |
| AI canary failing: a node’s AI canary failed twice in a row | Everyone in the workspace | AI health (the node) |
| LLM provider unreachable: a node can’t reach its LLM provider | Everyone in the workspace | AI health (the node) |
| AI recovered: the canary passes again or the provider answers again | Everyone in the workspace | AI health (the node) |
| Memory retrieval score dropped: a standing retrieval eval scored below the workspace floor | Everyone in the workspace | AI health (the node) |
| Invitation accepted: someone joined the workspace | Owners and admins | Team |
| Payment failed: a subscription payment was declined | Owners and admins | Billing |
| AI budget: AI spend reached the alert threshold or a monthly, daily or per-node cap of the AI budget | Owners and admins | AI usage |
The bell does not repeat itself: the same event for the same incident, node or invoice is shown once. A node that keeps dropping off notifies at most once every 6 hours; a failed payment at most once a day.
Reading and clearing
- Click a notification to open what it links to. It is marked as read.
- Mark all as read clears the badge.
- Notifications are kept for 30 days.
API
| Method | Path | Description |
|---|---|---|
GET | /api/notifications?unread=1 | Your notifications and the unread count |
GET | /api/notifications/count | Unread count only |
POST | /api/notifications/{id}/read | Mark one as read |
POST | /api/notifications/read-all | Mark all as read |
See the Control Panel API for response bodies.