Microsoft Teams Recording API to Record Teams Calls
A Microsoft Teams recording API puts a named bot in the call and returns an MP4, plus per-participant media and a speaker timeline. From $0.35 per bot-hour.
*Get started in minutes*
What is a Microsoft Teams recording API?
A Microsoft Teams recording API captures a live Teams call from your code. One request, and an MP4 arrives at a URL when the meeting ends.
A named bot joins from the join link and records what it receives. The meeting recording API covers all three platforms.
What you get from every Microsoft Teams recording
One request in. An MP4, a stream for every participant, and the events that say they are ready.
*Get started in minutes*
What a Teams recording contains
| Artefact | On Microsoft Teams |
|---|---|
| Per-participant audio | Partial isolation. Capture is tagged by speaker, on the same model as Google Meet, and falls back to the dominant speaker |
| Per-participant video | Webcam up to 854 by 480 at 800 kbps. Screen share up to 1280 by 720 at 2 Mbps, one at a time |
| Composed recording | Composed MP4 and a mixed WAV always produced |
| Real-time audio | 48 kHz PCM16 frames with the dominant speaker's name over your WebSocket |
| Participants and timeline | Join and leave events, data on each person, and a speaker timeline down to the byte |
Video per participant arrives as numbered segments. The per-participant audio entry explains how labels are attached.
Which Teams rules affect recording?
Five Teams rules decide what a recording bot may do. Each one links to Microsoft's own documentation.
| Teams rule | What it means for a bot |
|---|---|
| External bot access | ExternalBotAccessMode defaults to RequireApprovalWhenDetected. External bots land in the lobby. |
| Bot detection | Microsoft describes built-in detection mechanisms that spot external AI bots during the join. |
| Recording banner | It cannot be removed. An admin can only change the consent text and the privacy link by an admin. |
| External participants | Microsoft says external participants cannot record, unless you are a certified partner. |
| Native recordings | They land in the organizer's OneDrive or SharePoint, with a default 120-day expiry. |
How a bot is admitted to a Teams meeting
Most tenants hold external participants in the lobby, so an organiser admits the bot. Teams accepts a waiting window of up to 1800 seconds.
Teams admits and records in one step. Participant events tell your app the moment the bot is admitted.
| Timeout | Default | What it does |
|---|---|---|
| Waiting room | 600 s, up to 1800 on Teams | How long the bot waits to be admitted before it leaves |
| Nobody joined | 600 s | Leaves when it is the only one in the meeting |
| Everyone left | 300 s | Leaves after the last person leaves |
| Nobody speaking | 100 s | Leaves after this much silence, whoever is still in the room |
| Session length | 14400 s, or 4 h | Caps one recording session. Can be raised to 18000 |

From a Microsoft Teams link to your product
One request puts a bot in the call. It records while the meeting runs, then a webhook says the files are ready.
*Get started in minutes*
Record a Microsoft Teams meeting with one request
Post the meeting link. The bot joins, records, and fires a webhook when the call ends.
curl -X POST https://api.meetstream.ai/api/v1/bots/create_bot \
-H "Authorization: Token $MEETSTREAM_API_KEY" \
-d '{
"meeting_link": "https://teams.microsoft.com/l/meetup-join/19%3ameeting",
"bot_name": "Acme Notetaker",
"audio_separate_streams": true,
"video_separate_streams": true,
"callback_url": "https://your-app.example.com/meetstream"
}'Which Microsoft API records a Teams call?
Microsoft's own route to meeting media is an application-hosted media bot on Graph.
*Get started in minutes*
Microsoft states that a media bot is written in C# and deployed on Windows Server in Azure, at one or two media sessions per CPU core.
A participant bot joins from a link on any tenant. The Teams bot API page sets both routes side by side.
Where Teams recordings are stored
Recordings are kept for thirty days by default. Connect your own S3 bucket and every artefact lands in your account from the first byte.
Your lifecycle rules, object lock and retention schedule then govern the record. Bots run in the United States by default.
The Teams integration page covers the speaker timeline and how to turn byte offsets into seconds.
Microsoft Teams recording API pricing
A recording bot costs $0.35 per bot-hour. Transcription adds $0.10, and the rate falls toward $0.25 at volume.
Thirty days of storage is included, and every account starts with $5 of free credit. The pricing page has the full breakdown.
The comparison hub sets MeetStream beside the other meeting bot vendors, on their own published rates.
Teams recording limits and defaults
Participant events tell your app the moment the bot is admitted, so your user always sees the real status.
One integration for all three platforms
The same request, the same webhook, the same files. Only the link changes.
Teams recording from a join link, with no Azure setup.
One request replaces the C# media bot, the Windows Server and the Azure subscription.
*Get started in minutes*
Got a question? We got the answer.
Common questions about recording Microsoft Teams calls. What comes back, how the bot is admitted, and what it costs.
*Get started in minutes*
Can I record a Teams meeting without an Azure app registration?
Yes. A join link is all it takes. The bot enters as a participant, with nothing registered in Azure and no Graph permission of its own.
Why is my Teams bot waiting in the lobby?
Most tenants hold external participants in the lobby. An organiser admits the bot, and Teams accepts a waiting window of up to 1800 seconds.
Do Teams participants know a bot is recording?
Yes. The Teams recording banner stays on, and an admin can change only the consent text and the privacy link. The bot also carries the name you choose.
Can I get separate audio for each Teams participant?
Teams capture is tagged by speaker, on the same model as Google Meet, and falls back to the dominant speaker. Zoom is the platform with full isolation.
What format is a Teams recording returned in?
A composed MP4 of the meeting, a mixed WAV track, and per-participant video in numbered segments with webcam up to 854 by 480.
Why does Teams video arrive in segments?
A new segment starts when a webcam changes size or a screen share changes resolution. Each one is numbered in time order, so you can stitch them back together.
How long are Teams recordings stored?
Thirty days by default. Connect your own S3 bucket and every artefact lands in your account from the first byte, under your own retention policy.
How much does the Microsoft Teams recording API cost?
$0.35 per bot-hour, or $0.45 with transcription, falling toward $0.25 at volume. Thirty days of storage is included and every account starts with $5 of credit.
Record your next Teams call
$5 of free credit, self-serve API keys, and no sales call between you and your first recording.