docs

Slack

Post uptime, endpoint alert and exception notifications to a Slack channel through an incoming webhook.

The Slack integration posts Unhandled notifications into a Slack channel. It is a notification channel backed by a Slack incoming webhook URL: Unhandled sends messages, and there is no Slack app to install, no slash commands and no buttons to click back. Use it for monitor outages, endpoint alerts and summaries of new and regressed exceptions.

Create the webhook in Slack

In Slack, create an incoming webhook for the channel that should receive notifications and copy its URL. It looks like https://hooks.slack.com/services/.... One webhook posts to one channel, so create one per channel you want to reach.

Add the channel in Unhandled

You need to be an organization admin.

  1. Open the organization's Integrations settings (/o/:org/settings/integrations) and click Add channel under Notification channels.
  2. Choose Slack as the type and give it a name, up to 80 characters, such as #prod-alerts.
  3. Paste the webhook URL into Webhook URL.
  4. Optionally tick defaults under the URL: Uptime monitors, Exceptions and Only for production environments.
  5. Click Send test. A "Test notification" message should appear in Slack, and Unhandled shows the HTTP result.
  6. Click Add channel.

Unhandled stores the URL encrypted and never shows it again; the channel page shows a short hint such as hooks.slack.com/…abcd. To change it, paste a new URL on the channel page. Every alert, monitor and rule that uses the channel switches to the new URL at once.

The URL must be https, resolve to a public address, and contain no credentials or #fragment. Unhandled does not check that it is a Slack URL, so a wrong paste only shows up when Send test fails.

Choose what posts here

NotificationHow to route it to this channel
Monitor down and recoveredTick Uptime monitors. Every uptime monitor in the organization then posts here
Exception summariesTick Exceptions for projects without a matching rule, or add a rule on the Exceptions tab of the project's Alerts page (/o/:org/projects/:project/alerts/exceptions)
Endpoint alertsSelect the channel in the alert itself; alerts never use defaults. See Alerts

With Only for production environments ticked, the defaults skip staging and development monitors and exceptions. Exception rules can also mute Slack for a service or environment without affecting Discord or webhook channels. The Notifications page explains rule matching.

Messages

Each message has a header with the title, a section with the details, and a line of links where they apply.

EventTitleDetails
Monitor downMonitor Down: <monitor>The URL, why it is unreachable (timeout, dns, connection, tls, http, ...), the environment, and an Open monitor link
Monitor recoveredMonitor Recovered: <monitor>The URL, the total downtime, and an Open monitor link
Alert firingAlert firing: <alert>Current value and threshold, request count in the window, endpoint, service and environment, with Endpoint, Slowest traces and Alert links
Alert resolvedAlert resolved: <alert>Peak value and threshold, the reason it resolved, how long it fired, with the same links
Alert reminderAlert still firing: <alert>Latest value and threshold, when it started firing, endpoint, service and environment, with Endpoint and Alert links
Alert errorAlert can't be evaluated: <alert>How many evaluations failed, project and environment, with an Alert link
Exception summary<n> new or regressed issues in <organization>One line per issue tagged [new] or [regressed], with project, environment and link
TestTest notificationWhich organization the channel belongs to

Exception summaries collect issues for 60 seconds, then post one message listing up to 10 issues and an "and N more" line for the rest. Monitor and alert messages that arrive within 20 seconds of each other are posted together as one message titled <n> notifications: <counts>, with one line and link per event, up to 25 per message.

Delivery

Unhandled posts JSON to the webhook with a 10-second timeout and does not follow redirects. A 2xx response counts as delivered.

Timeouts, network errors, 408, 429 and 5xx are retried:

  • Monitor and alert messages get up to 7 attempts over about 50 minutes.
  • Exception summaries get up to 6 attempts, waiting 30 seconds and doubling up to 8 minutes.

A Retry-After header is honoured up to twice the scheduled wait. After 10 failed attempts in a row Unhandled disables the channel and tells the organization admins. A successful Send test or a new URL turns it back on. See channel health.

The channel page (/o/:org/notification-channels/:channel) keeps a delivery log of the last 100 messages with status, attempts, response code and last error. If deliveries start failing with a 4xx code, the webhook may have been removed in Slack; create a new one and paste its URL.

Removing the channel

Deleting the channel stops monitors from posting to it, and alerts keep being evaluated without it. Exception rules that post to it are removed, so the next matching rule takes over.