Microsoft Teams Bots
Guest and signed-in meeting bots for Microsoft Teams
Microsoft Teams guest bots need no setup — pass a Teams meeting link to create_bot and the bot joins:
Teams behavior at a glance
Join as a signed-in Microsoft 365 user
Guest bots wait in the lobby and cannot join when the organizer disables anonymous access. For those meetings, configure a dedicated Microsoft 365 tenant and bot accounts, then create the bot with teams.login_required: true. The Microsoft account supplies the participant name and avatar, and each account can run one bot at a time.
See Microsoft Teams Signed-In Bots for tenant safety requirements, account registration, the complete create_bot payload, and troubleshooting.
Outlook Calendar auto-join
Teams meetings usually live on Outlook calendars, and MeetStream has a first-class Outlook integration: connect via POST /api/v1/calendar/create_outlook_calendar with an Azure app registration (Microsoft Graph permissions), and MeetStream syncs events, detects Teams links (meeting_platform: "Teams"), and schedules bots. Change notifications from Microsoft Graph are auto-renewed, and you can hold up to 200 calendar connections per user (Google + Outlook combined).
Full walkthrough: Outlook Calendar Setup. Scheduling patterns (recurring events, per-event config, rescheduling): Scheduling guide.
Capture everything Teams gives you
Everything in the core API works on Teams the same as elsewhere: mixed audio recording, per-participant streams, post-call and live transcription, real-time audio over WebSocket, participants, chats, and the speaker timeline.
Next steps
- Create your first bot
- Set up Microsoft Teams signed-in bots — join meetings that block anonymous guests
- Automatic leave configuration — tune the Teams-specific timeout defaults
- Webhooks and events
Microsoft Teams FAQ
Do I need an Azure app to send bots into Teams meetings?
No — a guest create_bot join with a Teams link needs zero setup. A signed-in Teams bot requires dedicated Microsoft 365 bot accounts, while Azure app registration is only needed for the Outlook Calendar integration (auto-join from calendars).
Why are the timeout defaults higher on Teams?
Teams lobbies and starts can run slower. The Create Bot defaults are waiting_room_timeout: 600, no_one_joined_timeout: 600, and everyone_left_timeout: 300; tune them in automatic leave when a meeting needs more time.
When does recording start on Teams?
On the first audio frame — typically within a second of bot.inmeeting. There’s no host-permission gate like Zoom’s.
Why did my participant's video split into multiple files?
On Teams, a webcam dimension change (and any screen-share resolution change) starts a new segment. Segments are chronologically ordered with segment_index — see per-participant video.
