Microsoft Teams integration
The Microsoft Teams integration posts alerts to a Teams channel through a Workflows webhook URL. Each alert is an Adaptive Card with a colored title (red when a monitor goes down, green when it recovers) and a fact set: Monitor, Status and URL on every card, Reason when the check reported one, and Started and Resolved on a recovery. The card has no link back to Site Qwality.
Microsoft retired Office 365 Connectors in Teams, so Incoming Webhook connector URLs (outlook.office.com/webhook/... or *.webhook.office.com) do not deliver and are refused when you save them, as are Workflows URLs on the retired logic.azure.com hosts. If a Teams integration has a connector URL, create a new integration with a Workflows URL and point your notification channels at it.
Your organization must allow Workflows in Teams.
Set up
Section titled “Set up”-
In Microsoft Teams, open the channel you want alerts posted to.
-
Open Workflows for the channel (from the channel’s More options (…) menu, or the Workflows app) and choose the template Post to a channel when a webhook request is received.
-
Pick the team and channel, then finish the flow. Teams shows the flow’s webhook URL. Copy it.
-
In Site Qwality, go to Manage → Integrations and click the Microsoft Teams card. Give the integration a name, paste the URL into Workflows webhook URL and click Add integration.
Or through the API, with POST /integration/microsoft_teams:
curl -X POST https://api.siteqwality.com/integration/microsoft_teams \ -H "Authorization: Bearer $SITEQWALITY_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "friendly_name": "Ops Teams channel", "url": "<your Workflows webhook URL>" }'A flow belongs to the person who created it and stops if they leave your organization, so add a co-owner to the flow in Power Automate. On some Microsoft 365 plans, Microsoft turns off a flow that has had no successful run for 90 days, so check the flow if a channel for a quiet monitor has been silent for a long time.
Add it to a notification group
Section titled “Add it to a notification group”Right after you add the integration, the dashboard offers to do this for you: choose a group or create one, choose which monitors alert that group (the ones that already do, every monitor, or ones you pick), then send a test. If you skipped it, Route alerts on the integration’s card opens the same step. To do it by hand:
-
Go to Respond → Notifications. Click a group’s name to open it, or click Add group to make a new one.
-
Under Notifications, click Add notification method. Set Notification type to Microsoft Teams and choose this integration under Integration.
-
Click Done editing, then Save changes (Create group for a new group).
Through the API, create the channel with POST /notification:
curl -X POST https://api.siteqwality.com/notification \ -H "Authorization: Bearer $SITEQWALITY_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "notification_group_id": "<your-group-id>", "type": "microsoft_teams", "details": { "teams_integration_id": "<teams-integration-id>" } }'What reaches Teams
Section titled “What reaches Teams”Heartbeat (cron) monitors and DNS record changes do not post to Teams, and incidents and escalations do not use Teams. See the coverage table.
A failed send is not retried later. See delivery guarantees.
Multiple channels
Section titled “Multiple channels”For multiple Teams destinations, create one flow and one integration per channel.