Sign in Start free

← Docs  /  Notifications

Notification routes: Slack, webhooks & external emails

Updated 2026-09-05

"Who else should hear about this?" — routing an alert kind to a plain email, a Slack channel, a webhook, or a specific teammate.

Browse documentation

What it does

Beyond each person's own preference, an owner or admin can route any alert kind to someone or something else — a client's IT lead's email, a Slack incoming webhook, a generic outgoing webhook, or a specific teammate regardless of their own preference — optionally scoped to just one client or one site instead of your whole fleet.

How to

  1. Under Settings → Notifications, find "Who else should hear about this?" and click + Add recipient.
  2. Pick a recipient type: team member, plain email, Slack webhook URL, or generic webhook URL.
  3. Choose which alert kind(s) to route, and optionally scope it to one client or one site.
  4. Choose cadence: Immediate or Daily digest (folds every matching alert into one message a day).
  5. Click Send test to prove the route actually works before relying on it.
  6. Remove a route at any time.

Limits & defaults

SettingDefault
External email footerExplains why they got it and who added them, plus a one-click unsubscribe that disables the whole route
Webhook deliveryQueued with 3 retries (15s, 90s, 5min backoff); a failure is recorded and shown against the route
Webhook signatureX-WPClientHub-Signature: sha256 HMAC of the raw JSON body, keyed with a per-route secret shown once at creation
Slack payloadA compact Block Kit message — no signature header, matching Slack's own incoming-webhook contract
PermissionsAny role can read the routes; only owner/admin can add, edit, remove or test one

Webhook payload shape:

FieldMeaning
evente.g. "downtime", or "daily_digest" for a digest-cadence route
occurred_atISO-8601 timestamp
organizationYour agency's name
site{id, name, url} or null when the alert has no site context
ticketHelp Desk ticket reference or null
dataKind-specific detail, e.g. {title, status}
linkDeep link back into the app

Troubleshooting

A webhook route shows an error
Check the route's last error message — it's recorded on every attempt, success or failure, and cleared the moment a delivery succeeds.
I lost the webhook signing secret
It's shown only once, at creation — remove the route and create a new one to get a fresh secret.
A route stopped delivering after a role change
A member-type route still respects the same role gate as their own preference — a demoted member is no longer eligible even if the route still names them.