Notification Channels

Connect Drumbeats to Slack, Teams, PagerDuty, email, browser push, Telegram, Discord, or webhooks, and bundle channels with notification groups.

A Drumbeats notification channel is one delivery endpoint — one Slack channel, one email address, one webhook URL. Channels are created once per project and grouped into Notification Groups, which is what monitors actually route to. Every plan exposes the same eight channel types.

Supported channel types

ChannelPlansHow it connects
Browser pushAllOne-click in-app subscription. Works on Chrome / Edge / Firefox (desktop + Android), Safari macOS 13+, Safari iOS 16.4+ after Add to Home Screen.
EmailAllAdd a recipient address; external addresses get a confirmation mail before delivery starts.
SlackAllOAuth flow into your Slack workspace; pick the destination channel.
Microsoft TeamsAllPaste an incoming webhook URL from the Teams Workflows app.
TelegramAllBot-connect flow; supports DMs, groups, channels, and forum topics.
DiscordAllOAuth flow into your Discord server; pick a target channel.
PagerDutyAllPaste an Events API v2 integration key; DOWN triggers an incident, RECOVERY resolves it.
WebhookAllCustom HTTP request — Simple (fixed payload) or Advanced (custom URL + headers + templated body).

[SCREENSHOT: notifications/channels-list — the Channels page with one channel of each connected type and the "Add channel" button highlighted]

Where channels are configured

Open Settings → Notification Channels in the dashboard and click Add Channel, then pick a type. Each channel has a Test button — use it before assigning the channel to a group.

Browser push

Browser push delivers instant alerts directly to your browser, with no app install. Push requires permission at two layers — the browser and the operating system — so the first-time setup checks both.

Browser support

BrowserDesktopMobile
ChromeYesYes (Android).
EdgeYesYes (Android).
FirefoxYesYes (Android).
SafariYes (macOS 13+).Yes (iOS 16.4+, must be opened from a Home Screen icon).

Setup

  1. Open Settings → Notification Channels in the device you want alerts on.
  2. Click Enable on This Device on the Push Notifications card.
  3. Allow notifications in the browser permission prompt.
  4. Drumbeats sends a test push to verify delivery.
  5. If the test never arrives, walk through Push troubleshooting — it covers OS settings, Do Not Disturb modes, and service-worker recovery.

Limitations

  • Do Not Disturb and Focus modes suppress push delivery entirely. Use a backup channel (Telegram, Email, or a Webhook into PagerDuty) for genuinely critical monitors.
  • Clearing browser data deletes the push subscription. Re-enable from the Notifications page.
  • iOS requires opening Drumbeats from a Home Screen icon before push works.

Email

Email channels deliver to one recipient address per channel. Project-member addresses are auto-approved; external addresses get a confirmation email and must verify before delivery starts. Unverified external recipients expire after a grace window.

Use email when you want broad team visibility or a low-friction fallback path that does not depend on a chat app.

Slack

  1. Click Connect Slack on the Add Channel screen.
  2. Authorize the Drumbeats app in your Slack workspace.
  3. Pick the destination channel.
  4. Save and click Test to send a sample alert.

Slack channels use Slack's official OAuth flow — Drumbeats does not store raw webhook URLs. To deliver to a different Slack channel, add a new Drumbeats notification channel; one Slack channel per Drumbeats channel.

[SCREENSHOT: notifications/slack-message — a sample Slack alert showing monitor name, MISSED badge, timestamp, and Open Incident link]

Telegram

  1. Click Connect Telegram.
  2. Open the Drumbeats Telegram bot using the link provided.
  3. Send /start.
  4. Follow the connect link back into the Drumbeats dashboard.
  5. Confirm the project you want to connect.

Telegram channels work for direct chats, groups, channels, and forum topics. The bot must be a member of the destination conversation; group admins may need to add it explicitly.

Discord

  1. Click Connect Discord.
  2. Authorize Drumbeats in your Discord server.
  3. Pick the target channel.
  4. Save and test.

Drumbeats uses Discord's webhook-based OAuth so server admins do not have to hand-paste webhook URLs.

Microsoft Teams

Microsoft Teams channels post a formatted Adaptive Card to a Teams channel via an incoming webhook.

  1. In Teams, open the target channel and add the Workflows app.
  2. Choose the template "Post to a channel when a webhook request is received" and complete it. Teams generates a webhook URL.
  3. In Drumbeats, click Add Channel → Microsoft Teams and paste the webhook URL. Optionally add a label so you can tell channels apart.
  4. Save and click Test to post a sample card.

Webhook

Webhook channels send a custom HTTP request when an incident opens and again on recovery. Use them to bridge Drumbeats into Opsgenie, Datadog, your own incident management, or any system that takes inbound HTTP. (For PagerDuty, prefer the dedicated PagerDuty channel below — it handles incident triggering and resolution for you.)

Modes

  • Simple — Drumbeats POSTs a fixed JSON payload to the URL you provide. Good enough for most homegrown systems.
  • Advanced — custom URL, custom headers (including auth), templated body with Drumbeats placeholders for monitor name, incident type, timestamps, payload preview, and so on.

Simple-mode payload shape

The Simple-mode webhook posts JSON with this shape on incident open:

json
{
  "event": "INCIDENT_DOWN",
  "monitor": {
    "id": "<monitor-uuid>",
    "name": "Nightly Backup",
    "type": "JOB_CRON"
  },
  "incident": {
    "id": "<incident-uuid>",
    "type": "MISSED",
    "status": "OPEN",
    "started_at": "2026-05-11T02:10:00.000Z"
  },
  "project_id": "<project-uuid>"
}
{
  "event": "INCIDENT_DOWN",
  "monitor": {
    "id": "<monitor-uuid>",
    "name": "Nightly Backup",
    "type": "JOB_CRON"
  },
  "incident": {
    "id": "<incident-uuid>",
    "type": "MISSED",
    "status": "OPEN",
    "started_at": "2026-05-11T02:10:00.000Z"
  },
  "project_id": "<project-uuid>"
}

Recovery events use INCIDENT_RECOVERY. The incident.status field follows the OPEN | ACKNOWLEDGED | RESOLVED state machine — there is no separate RECOVERED value; recovery is signalled by the INCIDENT_RECOVERY event type with incident.status: "RESOLVED".

Test before relying on it

Every webhook has a Test button that sends a sample payload to your endpoint. Use it before going live — and again whenever you change the target system.

PagerDuty

PagerDuty channels map the Drumbeats incident lifecycle onto PagerDuty's Events API v2: a monitor going DOWN triggers a PagerDuty incident, and RECOVERY resolves it automatically. SSL-expiry advisories are sent as a separate low-severity alert so they never collide with a real outage.

  1. In PagerDuty, open (or create) a Service and add an Events API v2 integration. Copy the 32-character Integration Key (also called the routing key).
  2. In Drumbeats, click Add Channel → PagerDuty and paste the integration key.
  3. If your PagerDuty account is EU-hosted, set Region to EU; otherwise leave it on US.
  4. Save and click Test — Drumbeats sends a low-severity test alert and immediately resolves it, so no one gets paged.

Incident severity follows the cause: missed/failed checks page as critical, while run-duration anomalies are warning. The PagerDuty incident links straight back to the monitor in Drumbeats.

Test before you rely on any channel

Every channel type has a Test action on its row in the Channels list. Send a test the moment you create a channel, and again whenever you change its configuration.