# Microsoft Teams

EvoHub can post On-Call alerts to a Microsoft Teams channel. Each alert arrives as a card with its title, severity, source and start time, and buttons to acknowledge it, resolve it or open it in EvoHub. Teams runs alongside paging: it never replaces the phone calls, push notifications and emails your escalation policies send.

Teams messages are free: they are not counted towards your usage.

:::note
Microsoft retired Office 365 connectors in Teams in May 2026. Old "Incoming Webhook" URLs (`outlook.office.com/webhook/…`) no longer work and EvoHub does not accept them. Use a Workflows webhook as described below.
:::

## Add a Teams channel

:::steps
### Create the Workflows webhook in Teams
In Teams, open the channel, click **•••** next to its name and choose **Workflows**. Pick the template **Send webhook alerts to a channel**, confirm the team and channel, and click **Add workflow**. Copy the URL Teams shows you.
### Add the channel in EvoHub
In EvoHub go to **On-Call → Chat Channels** and click **Add Teams channel**. Give it a name, paste the URL, and choose whether **every new alert** should be posted there.
### Check it works
Click **Add and send a test**. A card saying "EvoHub is connected" appears in the channel. You can send another test at any time with **Send test**.
:::

The URL is a credential: anyone who has it can post to your channel. EvoHub stores it encrypted and never shows it again. To change it, remove the channel and add it again with the new URL.

Only URLs on `powerplatform.com` or `logic.azure.com` over `https` are accepted.

Adding, testing and removing chat channels needs the On-Call settings permission.

## Where alerts are posted

- **Every new alert** — tick **Every new alert** on the channel in **Chat Channels**.
- **From an escalation step** — open the escalation policy, click **Edit**, and in the step's **Chat** area pick the channel under **Teams / Telegram**. The step still pages its target; the post is in addition. See [Escalation policies](https://docs-dev.evohub.io/escalation-policies.md).

An alert is posted to a channel once, even if both apply.

## Acknowledge and resolve from Teams

The **Acknowledge** and **Resolve** buttons open EvoHub in your browser. You confirm the action there, signed in as yourself:

- You need permission to respond to alerts. If the alert belongs to a team, you must be in that team, be an admin, or be the person the alert is assigned to.
- If you are signed in to a different organization, EvoHub tells you to switch to the alert's organization first.
- Each button link works once and expires after 24 hours. After that, open the alert from **Open in EvoHub** instead.

The action is recorded on the alert's timeline under your name, for example "Acknowledged from Microsoft Teams."

## When the alert changes

A Workflows webhook cannot edit a card it has posted. So when the alert is acknowledged, taken over or resolved — anywhere: in EvoHub, the mobile app, by phone, in Slack or Telegram — EvoHub posts a short follow-up card under the original, for example "Resolved by Ada Lovelace: Disk full on db-1". The original card keeps its buttons; using one on an alert that is already done just tells you so.

Cards are posted by Teams' "Flow bot". Teams limits a channel to a few messages per second; EvoHub waits and retries once when Teams asks it to slow down.

## Remove a channel

In **On-Call → Chat Channels**, click the bin icon next to the channel and confirm. Escalation steps that named it post nowhere until you choose another channel. Delete the workflow in Teams as well if you no longer need it.

## Related

- [Telegram](https://docs-dev.evohub.io/telegram.md)
- [Slack](https://docs-dev.evohub.io/slack.md)
- [Escalation policies](https://docs-dev.evohub.io/escalation-policies.md)
