Integration

Microsoft Teams Integration

Alerts in your Microsoft Teams channels

Microsoft Teams Integration

Send API monitoring alerts directly to Microsoft Teams. Perfect for organizations using Microsoft 365 for collaboration.

Why Microsoft Teams?

Your team already uses Teams for communication. When an API fails, you need to know immediately — not when someone checks their email. APIAssert sends rich, actionable alerts to any Teams channel.

What You'll Get

  • Adaptive Cards — rich, interactive alert messages
  • Instant delivery — real-time notifications via webhooks
  • Action buttons — view details, acknowledge alerts
  • Custom routing — send different monitors to different channels

Setup Guide

Step 1: Create Incoming Webhook in Teams

  1. Open Microsoft Teams
  2. Go to the channel where you want alerts
  3. Click ... (More options) → Connectors
  4. Find Incoming Webhook and click Configure
  5. Name it "APIAssert Alerts"
  6. (Optional) Upload a custom icon
  7. Click Create and copy the webhook URL

Step 2: Add Teams Channel in APIAssert

  1. Go to AlertsChannels in your APIAssert dashboard
  2. Click Add ChannelMicrosoft Teams
  3. Paste your webhook URL
  4. Give the channel a name (e.g., "Teams - API Alerts")
  5. Click Save

Step 3: Test the Integration

Click Send Test to verify the webhook works. You should see a test message appear in your Teams channel.

Step 4: Assign to Monitors

Edit your monitors and add the Teams channel under Alert Channels.

Alert Format

APIAssert sends Adaptive Cards to Teams:

┌─────────────────────────────────────┐
│ 🔴 Monitor Failed                   │
│ Production API                      │
├─────────────────────────────────────┤
│ Status Code    500                  │
│ Response Time  2,340ms              │
│ Region         US East              │
│ Time           Dec 11, 2:34 PM UTC  │
├─────────────────────────────────────┤
│ Assertion Failed:                   │
│ $.status expected "success",        │
│ got "error"                         │
├─────────────────────────────────────┤
│ [View Details]  [Acknowledge]       │
└─────────────────────────────────────┘

Configuration Options

Option Description
Webhook URL Your Teams incoming webhook URL
Include Response Time Show request duration in alerts
Include Region Show which region detected the issue
Include Error Details Show assertion failure messages

Best Practices

Use Dedicated Channels

Create separate channels for different alert types:

📊 Monitoring
├── API Alerts
├── Critical Incidents
└── Vendor Status

Configure Notifications

Adjust channel notification settings:

  1. Right-click the channel → Channel notifications
  2. Set to "All activity" for critical channels
  3. Use "Mentions only" for lower-priority channels

Use @Mentions

Configure your webhook to mention specific people or groups when alerts trigger. Note: This requires additional configuration in your webhook handler.

Pin Important Channels

Pin monitoring channels to keep them visible:

  1. Right-click the channel
  2. Select Pin

Multiple Teams/Channels

You can send alerts to multiple Teams channels:

  1. Create webhooks in each channel
  2. Add each as a separate channel in APIAssert
  3. Assign monitors to multiple channels as needed

Example routing:

Monitor Type Teams Channel
Production APIs #critical-alerts
Staging APIs #dev-alerts
Third-party #vendor-status

Troubleshooting

Not receiving alerts?

  • Verify the webhook URL is correct
  • Check that the webhook connector is still configured
  • Ensure the channel hasn't been deleted or moved

Cards not rendering?

  • Microsoft Teams has limits on card complexity
  • Check that your Teams client is up to date
  • Try the Teams web client if desktop doesn't work

Webhook URL expired?

  • Teams webhooks can expire after 90 days of inactivity
  • Regenerate the webhook and update APIAssert

Rate limiting?

  • Teams limits webhooks to 4 requests per second
  • Reduce check frequency for monitors sending to the same channel

Security Considerations

Protect Your Webhook URL

Treat webhook URLs like passwords:

  • Don't commit them to source control
  • Use environment variables
  • Rotate if exposed

Audit Connector Usage

Regularly review connectors in your Teams channels:

  1. Go to channel settings → Connectors
  2. Review active webhooks
  3. Remove unused integrations

Alternative: Teams Workflows

For more control, use Power Automate with APIAssert webhooks:

  1. Create a APIAssert webhook integration
  2. Set up a Power Automate flow triggered by HTTP request
  3. Post to Teams using the Teams connector
  4. Add custom logic, approvals, or multi-channel routing

Next Steps