> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sureops.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Notifications & channels

> Configure where sureops sends alerts, approval requests, and status updates — per event, per channel, per escalation path

sureops can notify your team across several channels as incidents progress, approvals are requested, and budgets approach their limits. Notification routing is configured by Admins in **Settings → Notifications**.

***

## Supported channels

| Channel    | What it supports                                                         |
| ---------- | ------------------------------------------------------------------------ |
| **Email**  | All event types — always available, no integration required              |
| **Slack**  | All event types — requires the Slack integration to be connected         |
| **In-app** | Notification bell in the sureops dashboard — always on, not configurable |

<Note>
  Slack notifications require the Slack integration to be connected first. See [Settings → Integrations → Slack](/next/problem-management/incident-channels) for setup instructions.
</Note>

***

## Notification events

sureops generates notifications for the following events:

### Incident events

| Event                             | Default recipients                                       |
| --------------------------------- | -------------------------------------------------------- |
| New incident detected             | Admins, Owners; assigned on-call (if routing configured) |
| Incident severity escalated       | Assigned responders; Admins for P1 escalations           |
| HITL approval requested           | Commanders, Admins, Owners                               |
| HITL approval timeout approaching | Commanders, Admins, Owners                               |
| HITL approval timed out           | Admins, Owners; assigned responders                      |
| Incident stage transition         | Assigned responders                                      |
| Incident closed                   | Assigned responders; Admins                              |

### Problem events

| Event                       | Default recipients                     |
| --------------------------- | -------------------------------------- |
| New problem record created  | Admins                                 |
| Problem recurrence detected | Watchers of the problem record; Admins |
| Problem resolved            | Watchers of the problem record         |

### Budget events

| Event                            | Default recipients |
| -------------------------------- | ------------------ |
| Budget warning threshold reached | Admins, Owners     |
| Budget limit reached             | Admins, Owners     |

### Team events

| Event                  | Default recipients                                               |
| ---------------------- | ---------------------------------------------------------------- |
| New member invited     | Admin who sent the invite                                        |
| Member accepted invite | Admin who sent the invite                                        |
| Role changed           | No notification by default — recommended to communicate manually |

***

## Configuring notification routing

<Steps>
  <Step title="Open Settings → Notifications">
    Navigate to **Settings → Notifications**. You will see a routing table listing each event type and its current configuration.
  </Step>

  <Step title="Edit an event's routing">
    Click **Edit** on any event row. You can configure:

    * **Channels** — which channels this event is delivered on (email, Slack, in-app)
    * **Recipients** — role-based targets (e.g. all Commanders) or specific named members
    * **Severity filter** — for incident events, only notify when severity is above a threshold
    * **Enabled** — toggle the event off entirely if your team doesn't want those notifications
  </Step>

  <Step title="Save">
    Click **Save**. Changes take effect immediately for new events. In-flight notifications that have already been queued are not affected.
  </Step>
</Steps>

***

## Per-user notification preferences

Individual team members can customize their personal notification preferences from their profile:

1. Click your profile menu (top right)
2. Select **Notification Preferences**
3. Adjust which events you receive and via which channels

Personal preferences narrow down what you receive — they cannot expand beyond what the org-level routing allows. If an event is disabled at the org level, personal preferences cannot re-enable it for an individual.

### Slack DM preferences

If the Slack integration is connected, each user can opt in to receive Slack direct messages for:

* **Incident assigned** — a DM when an incident is assigned to you
* **Problem status changed** — a DM when a problem you are watching changes status
* **High severity incident** — a DM when any incident above a configurable threshold opens (default: P2 and above)

These are opt-in and disabled by default. Enable them in **Settings → My Notifications → Slack Direct Messages**.

***

## Escalation policies

Escalation policies define what happens when a HITL approval is not acted on within the timeout window.

<Steps>
  <Step title="Open Settings → Notifications → Escalation Policies">
    Each environment can have its own escalation policy.
  </Step>

  <Step title="Configure the escalation chain">
    Define a sequence of escalation steps:

    1. **Initial notification** — who receives the HITL request first and on which channel
    2. **First escalation** — if no response within N minutes, notify this additional set of recipients
    3. **Final escalation** — if still no response after another N minutes, notify this final set (typically Admins and Owners) and optionally auto-deny the approval

    Each step has a configurable timeout and a recipient list.
  </Step>

  <Step title="Set the auto-deny timeout">
    If all escalation steps pass without a response, you can configure sureops to auto-deny the approval and alert the team. The incident stays open for manual response.

    Alternatively, leave auto-deny disabled — the approval will stay pending until a Commander acts on it.
  </Step>
</Steps>

<Warning>
  Escalation policies require that at least one step has a recipient who holds the Commander role or higher. An escalation chain that only notifies Responders or Observers will never resolve a pending HITL approval.
</Warning>

***

## Testing notifications

You can send a test notification for any event from its configuration panel:

1. Open the event routing in **Settings → Notifications**
2. Click **Send test notification**
3. sureops delivers a sample notification to all configured channels for that event

Use this after configuring a new channel (e.g., after connecting Slack) to confirm delivery is working before a real incident occurs.

***

## Troubleshooting

<AccordionGroup>
  <Accordion title="I'm not receiving email notifications">
    1. Check your spam or junk folder — sureops emails come from `notifications@sureops.ai`
    2. Verify that the event is enabled in **Settings → Notifications** and that your role is in the recipient list
    3. Check your personal notification preferences in **Settings → My Notifications** — you may have disabled email for that event
  </Accordion>

  <Accordion title="Slack notifications not arriving">
    1. Confirm the Slack integration is healthy (green status in **Settings → Integrations → Slack**)
    2. Verify that the target Slack channel still exists and that the sureops bot is a member
    3. Send a test notification to confirm the routing is working
  </Accordion>

  <Accordion title="HITL approvals timing out too quickly">
    Adjust the escalation policy timeout for your environment in **Settings → Notifications → Escalation Policies**. The default first-step timeout is 15 minutes.
  </Accordion>
</AccordionGroup>

***

## Related

* [Incident channels](/next/problem-management/incident-channels) — Slack war-room channels created per incident
* [Budgets & cost](/next/administration/budgets-and-cost) — configure where budget alerts are delivered
* [Roles & Capabilities](/next/administration/roles-and-capabilities) — understand which roles receive which default notifications
