Microsoft Teams#
Microsoft Teams is a persistent chat-based collaboration platform complete with document sharing, online meetings, and many more useful features for business communications.
The integration allows users of Automation Reporting distribution to send notifications with launch summary on its finish to desired channel(s). Under the hood, Zebrunner POSTs an Adaptive Card payload to a Microsoft Power Automate Workflow webhook that is bound to the destination channel.
Migration from Office 365 Connectors
Microsoft permanently retired Office 365 Connectors for Microsoft Teams during the May 18-22, 2026 rollout. Any Zebrunner integration that was created before that date and uses a webhook URL on *.webhook.office.com no longer delivers messages — Microsoft's endpoints reject the requests on their side. The interim Power Automate URLs on *.logic.azure.com that some tenants used between 2024 and 2025 are also dead since Microsoft's November 30, 2025 cutover to the new Power Platform infrastructure.
To restore notifications, every existing Microsoft Teams integration in Zebrunner must be recreated using a new Workflow URL obtained from the Microsoft Teams Workflows app, as described below. There is no automatic migration: the new URL is generated by Power Automate and must be copied manually.
Obtaining the Workflow URL#
There are two ways to obtain a Workflow URL: from a built-in template inside Microsoft Teams (faster, but the right template is not always visible), or by building the workflow from scratch in Power Automate (more steps, but works in every tenant). Either approach produces the same URL on a *.environment.api.powerplatform.com host.
Option A — From a template in Microsoft Teams (preferred when available)#
- In Microsoft Teams, open the team and channel that should receive notifications.
- Hover over the channel name, click the More options (
...) button next to it, and choose Workflows. - In the templates dialog, search for
webhook. Among the suggested templates, look for Post to a channel when a webhook request is received — this is the only built-in template that accepts the full Adaptive Card payload that Zebrunner sends. If you only see Send webhook alerts to a channel, do not use it: that template renders a plaintextfield and does not understand Adaptive Cards. Use Option B below instead. - Select Post to a channel when a webhook request is received, then click Next. Microsoft Teams will offer an account that the workflow uses to post messages — this account must be a member of the host team. Confirm or change the connections, then click Next.
- On the final page Teams shows the target Team and Channel. Adjust them if needed and click Add workflow.
- Power Automate creates the workflow and displays the generated Workflow URL on a
*.environment.api.powerplatform.comhost (for examplehttps://default<guid>.<region>.environment.api.powerplatform.com:443/powerautomate/automations/direct/workflows/{id}/triggers/manual/paths/invoke/?api-version=1&...). Copy it — it will be pasted into Zebrunner as the Webhook value, then click Done.
If you forget to copy the URL, you can retrieve it later: open the Workflows app in Teams (left rail → More apps → Workflows), open the My flows tab, click your workflow, click Edit, and expand the When a Teams webhook request is received trigger — the HTTP URL field shows the same URL.
Option B — From scratch in Power Automate (fallback)#
Use this path if the Post to a channel when a webhook request is received template is not listed in your tenant.
- Open https://make.powerautomate.com and sign in with the account that should own the workflow (this account must be a member of the target team).
- In the left navigation choose + Create, then Instant cloud flow. Enter a flow name (for example
Zebrunner notifications - <channel>), click Skip to dismiss the trigger picker, and you will land in the flow designer. - Click Add a trigger, search for
webhook, and select When a Teams webhook request is received under the Microsoft Teams connector. - Open the trigger's parameters and set Who can trigger the flow to Anyone. This makes the workflow callable without an Entra ID token, which matches Zebrunner's URL-only authentication model. The HTTP URL field stays empty until the flow is saved.
- Add an action below the trigger: click + New step (or the + between steps), search for
post card, and choose Post card in a chat or channel under the Microsoft Teams connector. - Configure the action:
- Post as:
Flow bot - Post in:
Channel - Team: pick the target team
- Channel: pick the target channel
- Adaptive Card: click into the field, open the fx (Expression) tab and paste
first(triggerBody()?['attachments'])?['content']— this extracts the first Adaptive Card from the payload Zebrunner sends. Click Add to insert the expression.
- Post as:
- Click Save at the top right.
- Click on the When a Teams webhook request is received trigger again — the HTTP URL field is now populated with the generated URL on
*.environment.api.powerplatform.com. Copy it.

Configuring integration#
The following steps need to be performed to add a Microsoft Teams integration:
- Navigate to Settings → Integrations → Microsoft Teams.
- Click the Integration button.
- Enter your Channel name and Webhook. The channel name may be not the actual name of the channel, but an alias that will be specified within automation launches. The webhook is the Workflow URL copied at the previous step.
- Select the projects to add the integration to. For more information, refer to Selecting projects documentation.
- (optional) Click the Test button to check connectivity — Zebrunner sends a small Adaptive Card probe to the URL and reports HTTP 2xx as a success.
- Click the Save button.

Verifying delivery#
To verify the integration end-to-end, run any automation launch whose notification targets include MS_TEAMS_CHANNELS with the channel alias configured above (or finish a launch that already has it configured). On launch finish, Zebrunner posts an Adaptive Card to the bound channel with a colour-coded status header, run metadata, test counts, and a View in Zebrunner button that opens the launch page.

Limitations#
- The Workflows webhook posts under the default Flow bot identity. Custom icon and display name are not supported by Microsoft when posting Adaptive Cards via a Workflow webhook.
- One Workflow URL is bound to one destination channel by default. To push notifications to multiple channels, create one workflow + one Zebrunner integration per channel; do not try to fan out to multiple channels from inside a single Workflow.
- The owner of a Workflow created via Option A or Option B must remain a member of the destination team — if the account is removed from the team, the workflow stops posting. For long-lived integrations, prefer a shared service / utility account over an individual user account.
- Private channels are supported for Workflows webhooks (rolled out by Microsoft in April 2026 via the Power Automate portal).