Real-Time Datadog Alerts in Microsoft Teams Private Channels & Group Chats

Ajin JosephAjin Joseph
3 min read

In this post, I’ll walk through how we integrated Datadog alerts with Microsoft Teams private channels and group chats using Power Automate and Datadog Webhooks β€” a setup that's especially useful when native connectors are insufficient.


🎯 Use Case

We needed to:

  • Trigger alerts in Teams private channels where Datadog can't directly post.
  • Notify specific Teams group chats based on Datadog monitor conditions.
  • Retain context with actionable card messages.

πŸ› οΈ Tools Used

  • πŸ”” Datadog Monitors
  • 🧩 Microsoft Power Automate (Workflows App)
  • πŸ’¬ Microsoft Teams (Private Channels + Group Chats)
  • πŸ”— Webhooks (from Datadog to Teams via Power Automate)

πŸ”„ High-Level Flow

graph TD;
    A[Datadog Alert Triggered] --> B[Datadog Webhook]
    B --> C[Power Automate HTTP Trigger]
    C --> D[Post Card to Teams]

🧱 Step-by-Step Setup

1. πŸ”§ Create a Webhook in Datadog

  • Go to Integrations > Webhooks.

  • Click New Webhook and fill:

    Name: scp-alerts-ms-teams
    URL: <Power Automate trigger URL>
    
  • Use this payload template:

    {
      "title": "$EVENT_TITLE",
      "message": "$EVENT_MSG",
      "date": "$DATE",
      "org": {
        "name": "$ORG_NAME"
      }
    }
    
  • Save and note your webhook handle: @webhook-scp-alerts-ms-teams.


2. βš™οΈ Setup a Power Automate Flow (Microsoft Teams)

  • Go to Power Automate.
  • Choose Microsoft Teams > Workflows > +New Workflow.
  • Select When a Teams webhook request is received.
  • Under action, select Post card in a chat or channel.

For Private Channels

  • Post in = Channel
  • Team = Select your team
  • Channel = Paste Channel ID (e.g., 19:<GUID>@thread.tacv2)
  • Use Advanced Mode if channel isn’t listed.

For Group Chats

  • Post in = Group Chat
  • Group Chat = Pick from the dropdown once synced.

πŸ” Note: Group chats may take a few minutes to sync.


3. πŸ”— Connect Webhook to Datadog Monitor

  • Open your Datadog monitor β†’ Edit β†’ Notification message.
  • Add your webhook handle:

    @webhook-scp-alerts-ms-teams
    

This ensures your monitor pushes alert content to Power Automate, which then posts it to Teams.


πŸ§ͺ Validation

You can test your setup by:

  • Triggering a test alert from Datadog.
  • Ensuring the alert flows through Power Automate.
  • Confirming the Teams channel or group chat receives the alert.

βœ… Outcome

  • πŸš€ Datadog alerts now flow directly into Teams private channels and group chats.
  • πŸ”’ Seamless integration without opening up public channels.
  • πŸ“¬ Alert context is preserved and visually structured via adaptive cards.

πŸ“Ž Reference

Official documentation from Datadog: πŸ‘‰ Datadog + Microsoft Teams Integration


πŸ’‘ Pro Tip

You can create multiple webhooks in Datadog for different Teams destinations (e.g., one per region or product line) and map them to different Power Automate flows. This allows clean routing and easier alert management.


πŸ™Œ Closing Thoughts

If you're using Teams as your collaboration hub, this approach ensures that your critical observability alerts are seen, acknowledged, and acted upon β€” right where your teams work.


0
Subscribe to my newsletter

Read articles from Ajin Joseph directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Ajin Joseph
Ajin Joseph