Home/Apps/Microsoft Teams
Microsoft Teams logo

Microsoft Teams automations

Communication · 1 integration

Automating Microsoft Teams typically means routing notifications into channels, syncing hiring or CRM events to conversations, and triggering workflows when messages or meetings occur. Teams sits at the center of most Microsoft 365 organizations, making it a natural destination for alerts from tools like Greenhouse, Salesforce, or Jira. Choosing the right automation platform matters because Teams enforces layered API rate limits and is mid-way through a major webhook deprecation cycle that affects every tool differently.

What it costs to automate Microsoft Teams

Platform pricing at different volumes. Annual billing shown.

PlatformFree tier100 tasks/mo1K tasks/mo10K tasks/mo
Zapier100 tasks/moFree$69/mo$69+/mo
Power Automate750 runs/moFree$15/mo$15/mo
Make1,000 credits/moFreeFree$10.59/mo
Pipedream100 credits/moFree$29/mo$79/mo
n8nYes$20/mo$20/mo$50/mo

Microsoft Teams integrations

Each page compares all five platforms for that pair.

Microsoft Teams triggers & actions by platform

Which capabilities each platform supports for Microsoft Teams.

CapabilityPipedreamZapierPower AutomateMaken8n
Triggers
Candidate Hired
Candidate Stage Change
Candidate Stage Changed
HTTP Webhook (Greenhouse Harvest)
New Application (Greenhouse)
New Application Submitted
New Scheduled Interview
Schedule Trigger
Scheduled Harvest API Query
Scheduled Poll
Watch New Applications (Greenhouse)
When HTTP request received (custom Greenhouse)
Actions
Send Channel Message (Teams)
Send Chat Message (Teams)
Code Node
Create a chat
Create Channel
Create Channel (Teams)
HTTP Request
HTTP Request (Greenhouse)
Post Card (Teams)
Post message in a chat or channel
Send Channel Message

Things to know about automating Microsoft Teams

O365 Connector Deprecation Deadline

Office 365 Connectors (the classic incoming webhook method) are being fully retired on April 30, 2026. Migrating to the replacement workflow requires reformatting all message payloads as AdaptiveCard — MessageCard format is not supported in the new system, so this is a full rebuild, not a URL swap.

Graph API Rate Limits

The Microsoft Graph API enforces 4 requests per second per app on a given team, and just 1 request per second per app per tenant on a given channel or chat for POST message operations. As of September 30, 2025, the per-app/per-user throttle was halved, meaning high-volume automations that worked before may now regularly hit 429 errors.

DM and Chat Permission Constraints

Sending direct messages via the Graph API chat endpoint using application-only permissions returns a 'Requested API is not supported in application-only context' error. Any automation that sends DMs — on any platform — requires delegated (user) permissions, which complicates fully background, unattended workflows.

Authentication Token Lifecycle

Microsoft Entra ID (formerly Azure AD) access tokens expire after approximately 1 hour. On Zapier in particular, expired tokens surface as account disconnection errors requiring manual reconnection from the Connected Accounts page — a known pain point for long-running or infrequently triggered Zaps.

Free Account Incompatibility

Microsoft Teams Free accounts are not supported by Zapier's Teams integration, and attempts to connect one produce a 'DataPostError: Problem creating Connected Account Test' failure. Make, n8n, Power Automate, and Pipedream users authenticating via Microsoft Graph directly should verify their tenant type before building.

Unsupported Operations in Pre-Built Nodes

n8n's Teams node covers only a subset of Graph API operations; anything outside that set requires manually building requests via the HTTP Request node, including handling OAuth token flow yourself. Power Automate has the broadest native Teams action library, while Zapier, Make, and Pipedream vary in which specific endpoints they expose without custom HTTP calls.

What breaks at scale

Batch notifications to 1,000+ channel members or 20+ messages in quick succession

In practice, the first batch of around 20 messages may succeed before subsequent requests fail with 429 'API call quota exceeds' errors — even when your per-second rate appears within documented limits. Developers have found they need to wait approximately 8 seconds between batches to avoid throttling, and the Retry-After headers in 429 responses vary wildly from 20 seconds to several minutes, making retry logic unpredictable. Silent drops are also possible in very large channels where Teams deprioritizes bot events to preserve service stability.

High-frequency automations running continuously post-September 2025

The September 30, 2025 throttle reduction cut the per-app/per-user limit to half of the total per-tenant allowance, meaning any workflow that was operating near the old limit now regularly exceeds quota. Throttling behavior is also inconsistent across tenants — identical request patterns may succeed in one organization and immediately return 429s in another due to shared throttling buckets and regional load differences. Since quota increases are explicitly not available from Microsoft, the only options are reducing call frequency, batching requests, or rearchitecting the workflow.

Unattended background automations running longer than 1 hour (token expiry)

Azure AD access tokens expire after approximately 1 hour, and platforms handle refresh differently. On Zapier, an expired token surfaces as a hard disconnection error requiring manual intervention from the Connected Accounts page — any Zaps that fired during the gap will have failed silently unless error alerts are configured. For n8n and Pipedream workflows using custom Graph API credentials, failing to implement token refresh logic means long-running jobs will begin returning 401 errors mid-execution, potentially leaving partial data written to Teams channels with no automatic recovery.

Frequently asked questions

Which automation platform works best with Microsoft Teams?

Power Automate has the deepest native Teams integration since both are Microsoft products, including AdaptiveCard support and direct connector access without extra app registration in many tenant setups. Zapier and Make offer simpler no-code paths for common triggers like 'new channel message' or 'send message,' but hit walls faster with advanced operations. n8n and Pipedream give more control via direct Graph API calls but require you to manage Azure app registration and token handling yourself.

How do I automate Microsoft Teams messages with Zapier or Make?

Both Zapier and Make connect to Teams via OAuth through Microsoft Entra ID and support common actions like posting channel messages and creating meetings. Zapier requires a paid Microsoft 365 account (Teams Free is unsupported), and tokens expire roughly every hour, which can silently break Zaps. Make's Teams module covers similar operations and generally handles token refresh more transparently, but both tools are constrained by the same underlying Graph API rate limits of 1 request per second per channel for POST operations.

What are the Microsoft Teams API rate limits for automation?

The Graph API allows 4 requests per second per app per team, 1 request per second per app per tenant for posting to a specific channel or chat, and a global Bot Framework cap of 50 requests per second per app per tenant. Since September 30, 2025, per-app/per-user limits were cut in half, so any automation built against pre-2025 documented limits may now be over-quota. There is no way to request a quota increase — all platforms including Zapier, Make, n8n, Power Automate, and Pipedream operate under these same ceilings.

Will Office 365 Connector webhooks still work in 2025 and 2026?

Office 365 Connectors have an extended retirement deadline of April 30, 2026, giving teams more time to migrate but not indefinitely. The replacement approach requires Power Automate workflows and AdaptiveCard-formatted payloads, meaning any existing MessageCard-based webhook on any platform — Zapier, Make, n8n, Pipedream, or custom code — needs to be fully rebuilt. There is also an active known issue where updated webhook URLs display 'unknown user' on Teams cards, with no official fix released yet.

People who automate Microsoft Teams also connect