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

# Slack

> Post monitor alerts to a Slack channel with one-click authorisation or an Incoming Webhook

The Slack destination posts alerts into a channel in your Slack workspace. There are two ways to connect:

| Method | Best for | Needs |
| - | - | - |
| **Add to Slack (OAuth)** | Most teams. Recommended. | Permission to install apps in your workspace. |
| **Incoming Webhook URL** | Locked-down workspaces, or one fixed channel | A webhook URL from Slack. |

## Connect with OAuth

<Steps>
  <Step title="Open Destinations">
    Click **Destinations** in the sidebar, then **Add Destination**, then choose **Slack**.
  </Step>

  <Step title="Authorise UptimeIO">
    Click **Add to Slack**. On Slack's page, choose your workspace, review the permissions and click **Allow**. UptimeIO requests the scopes `chat:write`, `channels:read` and `groups:read`: post messages and list public and private channels.
  </Step>

  <Step title="Select a channel">
    Back in UptimeIO, pick the channel that should receive alerts. For a private channel, invite the UptimeIO app to it in Slack first, otherwise it cannot post there.
  </Step>

  <Step title="Choose events">
    Toggle which events post to Slack. All are enabled by default; at least one must stay enabled. See [Events](/notifications/overview#events).
  </Step>

  <Step title="Test and assign">
    Use **Test** to post a test message, then select the destination in each monitor's **Notifications** section.
  </Step>
</Steps>

## Connect with an Incoming Webhook

<Steps>
  <Step title="Get a webhook URL">
    In Slack, add the **Incoming Webhooks** app, choose a channel and copy the webhook URL.
  </Step>

  <Step title="Add it in UptimeIO">
    Choose **Slack** when adding a destination, switch to the webhook method and paste the URL. It must have the form `https://hooks.slack.com/services/T.../B.../...`.
  </Step>

  <Step title="Choose events, test and assign">
    As above.
  </Step>
</Steps>

## Message content

Slack messages include the event, the monitor name and URL, the error details and a link to the incident in UptimeIO. Recovery messages report that the monitor is back up.

## Change the channel

Open **Destinations**, edit the Slack destination, pick another channel and save.

## Troubleshooting

| Issue | Solution |
| - | - |
| Messages not appearing | Check that the event is enabled on the destination and that the destination is assigned to the monitor. |
| Not authorised error | Reconnect with **Add to Slack** to issue a fresh token. |
| Private channel not listed or not posting | Invite the UptimeIO app to the channel in Slack. |
| Test works but alerts do not | The destination must be assigned to the monitor, with the relevant event enabled. |

## Next steps

<CardGroup cols={2}>
  <Card title="Setting Up Alerts" icon="bell" href="/essentials/setting-up-alerts">
    Assign destinations to monitors
  </Card>

  <Card title="Notifications Overview" icon="bell" href="/notifications/overview">
    Events and delivery
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.