# Slack

Connecting Slack lets EvoHub post On-Call alerts to your channels and lets your team act on them from Slack. Slack runs alongside paging: it never replaces the phone calls, push notifications and emails your escalation policies send.

## What the Slack integration does

- **Posts new alerts to a default channel.** Every new alert in your organization is posted to the channel you choose.
- **Posts from escalation steps.** Any escalation step can also post the alert to a channel when it runs, in addition to paging its target.
- **Keeps each message up to date.** When an alert is acknowledged, taken over, assigned, redirected or resolved — in EvoHub, in the mobile app, by phone or in Slack — EvoHub edits the messages it already posted instead of posting new ones.
- **Lets people respond from Slack.** Each message has **Acknowledge** (while the alert is triggered), **Resolve** (until it is resolved), a **…** menu with **Take over** and **Add note**, and **View in EvoHub**.

Each message shows the alert's status and severity, its title, the start of its description, and **Source**, **Started** and **Assigned to**.

Slack is free: posting messages and button presses are not metered.

## Connect your workspace

:::steps
### Open Org Settings
Click your avatar and go to **Organization → Org Settings**. The **Slack** card is there.
### Add to Slack
Click **Add to Slack**, choose your Slack workspace and approve the EvoHub app. You return to Org Settings with "Slack connected".
### Invite the app to your channels
In each Slack channel EvoHub should post to, type `/invite @EvoHub`. EvoHub can only list and post to channels the app has been added to.
### Choose the default channel
Under **Post alerts to**, pick the channel. If it is not listed, invite the app and click **Refresh**. Choose **None** to stop posting every new alert.
:::

Connecting, disconnecting and choosing the default channel need the On-Call settings permission and access to **Org Settings**. If the card says **Slack is not available yet**, Slack cannot be connected for your organization at the moment.

## Post from an escalation step

To post an alert to a team's channel only when a particular step runs:

1. Open the escalation policy and click **Edit**.
2. In the step's **Chat** area, click **Send to Slack** and choose a channel.
3. Click **Save Changes**.

The step still pages its target; the channel post is in addition. To stop posting, remove the channel from the step. See [Escalation policies](https://docs-dev.evohub.io/escalation-policies.md).

## Respond from Slack

When someone clicks a button, EvoHub acts as that person's EvoHub account:

- EvoHub reads the email address on the person's Slack profile and looks for an EvoHub member of your organization with the same email.
- That member must be allowed to respond to alerts.
- The action is recorded on the alert's timeline under their name, marked as coming from Slack (for example "Acknowledged from Slack."). Notes added with **Add note** go on the timeline with "(from Slack)".

If the action cannot be carried out, Slack shows the person a message explaining why, for example:

- "Your Slack email (…) is not a member of the EvoHub organization this workspace is connected to." — invite them to EvoHub with that email.
- "You are not allowed to respond to alerts in EvoHub." — give them a role that can respond to alerts.
- "This alert is already resolved."

## Disconnect

In **Org Settings → Slack**, click **Disconnect** and confirm. EvoHub stops posting alerts to Slack, and buttons on existing messages stop working. Channels chosen on escalation steps are kept for when you reconnect. Reconnecting the same workspace also keeps the default channel; connecting a different workspace clears it.

## Related

- [Escalation policies](https://docs-dev.evohub.io/escalation-policies.md)
- [Alerts and incidents](https://docs-dev.evohub.io/alerts-and-incidents.md)
- [Integrations overview](https://docs-dev.evohub.io/integrations-overview.md)
