Skip to content

Microsoft Teams

Microsoft retired the classic O365 Connectors incoming webhook for Teams during 2024–2025. The replacement is Workflows (Power Automate) which accepts an Adaptive Card v1.4 envelope. ErrLens emits exactly that shape, so the path is:

  1. Build a one-step Workflow in Teams that says "when a webhook receives a request, post a card to this channel".
  2. Paste the Workflow's trigger URL into ErrLens.

No OAuth, no app registration, no admin consent — the Workflow lives in your tenant under the user who created it.

What it looks like

Each delivery becomes one Adaptive Card:

  • HeadingNew issue in <project>: <title> in level-coded colour (Attention for error, Warning for warning, Accent for info)
  • Project lineProject <name> · ErrLens <event-kind>
  • FactSet — Level, Times seen, Culprit, Environment, Release
  • Open in ErrLens button (Action.OpenUrl)

Create the Workflow

  1. In Teams, open the channel the alerts should land in.
  2. next to the channel name → Workflows → search for Post to a channel when a webhook request is receivedAdd.
  3. Team + Channel → confirm both are the right ones → Next.
  4. Add workflow → Teams shows the HTTP POST URL — copy it. It looks like:
    https://prod-XX.westus.logic.azure.com:443/workflows/<id>/triggers/manual/paths/invoke?api-version=2016-06-01&...

Two things to know about that URL:

  • It includes a sig= query string parameter — that's the workflow's shared secret. Anyone with the URL can post to your channel. Treat it like a credential.
  • The URL is bound to one channel. To post to a different channel, build a second Workflow.

Add it to ErrLens

  1. Open Org alerts (or a project's Alerts tab).
  2. Add destination → pick Microsoft Teams.
  3. Paste the Workflow URL → set a destination name → save.
  4. Click Send test event. The card should land in the channel within a second or two.

Quirks

  • Adaptive Card 1.4 only. Newer card features (1.5+) render inconsistently in the desktop client; ErrLens deliberately stays on 1.4 so cards render identically in desktop, web, and mobile Teams.
  • The Workflow has its own logs. If a card never arrives, open the Workflow in Power Automate → Run history — Teams logs the inbound request and any rendering error before posting.
  • No HMAC signing. The Workflow's sig= query param is the authentication mechanism; ErrLens doesn't add an additional signature header.

Troubleshooting

  • 401 from the workflow URL: the sig= query string was stripped when you pasted the URL. Re-copy the entire URL from Teams.
  • Card renders but the button does nothing: very old Teams clients don't support Action.OpenUrl on adaptive cards. Update the client.
  • Workflow disabled itself: by default the Workflow auto-disables after 90 days of inactivity. Re-enable it in Power Automate, no need to regenerate the URL.