Sazabi

Notification types

Every notification type Sazabi can send, its scope, and which channels can deliver it.

A notification announces an event to a recipient who did not request it directly. Each notification has a type (the kind of event), a scope (the organization or project its recipients are drawn from), and a set of channels it can be delivered on. This page lists the types and how they route.

For how to configure delivery, see Route notifications.

Scope determines routability

  • Organization-scoped types deliver only to personal channels — each recipient's own in-app feed, email, SMS, or Slack DM, gated by that user's preferences.
  • Project-scoped types deliver to personal channels. Seven of them can also be routed to shared destinations — Slack channels, Microsoft Teams channels, webhooks, and incident providers — with the project's delivery rules: Issue triggered, Issue resolved, Issue ignored, Issue rejected, Issue updated, Issue still open, and Automation run failed. Issue still open goes to Slack channels, Microsoft Teams channels, and webhooks only.

Organization-scoped types, and every other project-scoped type, reach personal channels only.

Channels

Personal channels (per-user, gated by each user's preferences):

  • In-app
  • Email
  • SMS
  • Slack DM

Shared destinations (per-project, gated by a delivery rule that names both the destination and the event):

  • Slack channel
  • Microsoft Teams channel
  • Webhook
  • Incident providers: incident.io, PagerDuty, Rootly

Notification types

Issues (project-scoped)

TypeAnnounces
Issue triggeredA new issue opened.
Issue resolvedAn issue was resolved.
Issue ignoredAn issue was ignored.
Issue rejectedAn issue was rejected after review.
Issue updatedAn open issue changed: its severity went up, it came back after it was resolved, or it now affects another component.
Issue still openAn issue is still open, 1, 2, 3, 7, 14, 21 and 28 days after it opened, then once a month.

Issue notifications can be filtered by component and severity in a delivery rule. A rule matches Issue updated on the issue's severity and component after the change.

Issue updated is sent at most once per issue a day, unless the severity rises above the one the last update announced. A muted issue sends none. In a Slack or Microsoft Teams channel it is a reply under the issue's original alert, and the alert itself is refreshed; a channel that never received the alert gets nothing. Webhooks receive the issue, with the change as notification.message. Incident providers receive the issue's alert again: an open incident absorbs it, and an issue that came back alerts again. Like a trigger, it follows the provider's severity rules.

Issue still open reminds a team that an issue is still open: 1, 2, 3, 7, 14, 21 and 28 days after it opened, then 2, 3, 4… months after, for as long as it stays open. Resolving or ignoring the issue stops the reminders, and reopening it starts them again from the first. A muted issue sends none, and unmuting it continues the schedule rather than restarting it. A reminder that comes late (after an outage) is sent once, for the latest step that passed. In a Slack channel it is a reply under the issue's alert that is also sent to the channel, and in a Microsoft Teams channel a reply under the issue's card; a channel that never received the alert gets the reminder as a message of its own. Webhooks receive the issue with an ongoing object naming the reminder. Incident providers never receive it: the incident the issue's trigger opened is still open there.

Automations (project-scoped)

TypeAnnounces
Automation completedA scheduled automation finished.
Automation run failedAn automation run failed.

Project resources (project-scoped)

TypeAnnounces
Sandbox connectedA sandbox was connected to the project.
Sandbox disconnectedA sandbox was disconnected from the project.
Log source connectedA log source was connected.
Log source disconnectedA log source was disconnected.
GitHub connectedGitHub was connected to the project.
GitHub disconnectedGitHub was disconnected from the project.
Code repository connectedA code repository was connected.
Code repository disconnectedA code repository was disconnected.
Public key deactivatedA public key for the project was deactivated.

Organization (organization-scoped)

TypeAnnounces
Project createdA project was created in the organization.
Project deletedA project was deleted.
Member invitedA member was invited to the organization.
Member removedA member was removed.
MCP connector addedAn MCP connector was added.
MCP connector removedAn MCP connector was removed.
Secret key createdA secret key was created.
Secret key deletedA secret key was deleted.

Integrations (organization-scoped)

TypeAnnounces
Integration connectedAn integration was connected.
Integration disconnectedAn integration was disconnected.

Billing (organization-scoped, admins only)

Billing types reach organization owners and admins only.

TypeAnnounces
Billing upgrade appliedA plan upgrade took effect.
Billing downgrade scheduledA plan downgrade was scheduled for the end of the cycle.
Billing downgrade appliedA scheduled plan downgrade took effect.
Billing credits lowThe credit balance dropped below the low-balance threshold.
Billing credits depletedThe credit balance ran out.
Billing auto top-up changedAutomatic top-up settings were changed.
Billing auto top-up failedAn automatic top-up charge failed.
Billing invoice paidAn invoice was paid.
Billing invoice payment failedAn invoice payment failed.
Billing cancellation scheduledA subscription cancellation was scheduled.
Billing subscription canceledThe subscription was canceled.
Billing payment method expiringThe default payment method is about to expire.
Billing payment method changedThe default payment method was changed.
Billing outstanding balance chargedAn outstanding balance was collected.
Billing outstanding balance charge failedAn outstanding balance charge failed.

Security (organization-scoped, admins only)

TypeAnnounces
Security alertA security event needing attention, delivered to owners and admins.

Defaults and preferences

Every type has a default posture on each personal channel. Some default off (quieter lifecycle events), some default off on email only, and the rest default on. Each user overrides these under Settings > Notifications. Shared destinations never default on — a shared channel receives an event only when a project delivery rule names both that destination and the event.

Further reading