Home/Transcription API/Microsoft Teams
// Microsoft Teams transcription

Microsoft Teams Transcription API for Meeting Text

A Microsoft Teams transcription API sends a bot into the call and returns a speaker-labelled transcript, live while people speak or after the call. From $0.45 per hour all-in.

*Get started in minutes*

Overview

What is a Microsoft Teams transcription API?

A Microsoft Teams transcription API turns a live Teams call into text your code can use. One request, and the transcript arrives at your webhook.

It does two jobs: capture the audio out of the meeting, then convert it to text. The meeting transcription API covers all three platforms.

What you get

What you get from every Microsoft Teams call

One request in. Speaker-labelled text out, live while the call runs or once it ends.

*Get started in minutes*

Speaker-labelled textWho spoke, and whenLive chunksWhile people are speakingA final transcriptBy webhook, after the callSix enginesOne request, your choiceStart and end timesOn every utteranceChat and participantsNext to the text
What comes back from one bot on Microsoft Teams.
Speaker labels

Where Teams speaker labels come from

Speaker identity comes from the audio channel, not from a model reading a mixed track.

*Get started in minutes*

Participant Atagged by speakerParticipant Btagged by speakerParticipant Ctagged by speakerYour transcriptspeaker labelled
Teams audio is tagged by speaker as it lands, and the timeline places every turn precisely.

Teams capture is tagged by speaker as people talk, on the same model as Google Meet, and falls back to the dominant speaker.

A speaker timeline maps byte offsets to participants. The speaker diarization entry sets out the other model.

Engines

Choose a transcription engine for Microsoft Teams

MeetStream ships its own engine and routes audio to a provider you choose. Each figure below is that provider's own published number.

EnginePublished language supportReal-timeBest for
MeetStream engineIn-house, auto language detectionNo, post-callOne vendor, one bill, no extra key
AssemblyAI99 languages on Universal-2YesBroadest published language list
Gemini97 languages on the Live APIYesTeams already building on Gemini
Deepgram10 languages in real-time multilingual modeYesLow-latency streaming workloads
Sarvam11 Indic languages plus EnglishNo, post-callIndian languages and accents
JigsawStackAuto-detect or 162 languagesNo, post-callBatch jobs on a Whisper stack

On Teams you can also choose the meeting captions engine, and the bot reads the captions Teams produces.

Platform rules

Which Teams rules affect transcription?

Five Teams rules decide what a transcription bot may do. Each one links to Microsoft's own documentation.

Teams ruleWhat it means for a bot
External bot accessExternalBotAccessMode defaults to RequireApprovalWhenDetected. External bots land in the lobby.
Bot detectionMicrosoft describes built-in detection mechanisms that spot external AI bots during the join.
Recording bannerIt cannot be removed. An admin can only change the consent text and the privacy link by an admin.
External participantsMicrosoft says external participants cannot record, unless you are a certified partner.
Native recordingsThey land in the organizer's OneDrive or SharePoint, with a default 120-day expiry.
Platform rules

How a Teams bot starts transcribing

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, so text follows within about a second. Participant events tell your app where the bot is.

Bot joins from the linkUnder the name you chooseIt waits in the lobbyThe tenant defaultAn organiser admits itRecording starts withinabout a secondAn event either wayYour app sees the branch
The lobby is the default on Teams, so build the admission moment into your product.
MEETSTREAM DASHBOARDThe MeetStream dashboard listing recording bots with platform, status and duration
Every recording bot with its platform, live status and duration.
How it works

From a Microsoft Teams link to your product

One request puts a bot in the call. Text streams while people speak, then a webhook says the final transcript is ready.

*Get started in minutes*

Microsoft Teams linkcreate_botone requestBot in the callrecords and streamsWebhookbot.doneYour appspeaker-labelled text
The same five steps every time. Only the last box is yours.
Quickstart

Transcribe a Microsoft Teams meeting with one request

Post the meeting link and name an engine. The bot joins, transcribes, and fires a webhook when the call ends.

Examplebash
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",
    "recording_config": { "transcript": { "provider": { "meetstream": {} } } },
    "callback_url": "https://your-app.example.com/meetstream"
  }'
ExampleWebhooks and events guide: request, response and options in the docs
Build vs buy

Can I get a Teams transcript without a bot?

Teams transcribes on its own terms, set by the tenant. A bot sits above them.

*Get started in minutes*

Teams native transcriptsTenant policy rules applyTenant policyLicensingAfter the callA transcription botOne request, live or finalJoin linkBot joinsText streams
Microsoft's own route asks for a tenant policy and a licence. A bot asks for a link.

Teams transcribes automatically when the tenant policy allows it, and Graph access follows tenant permissions and licensing.

A bot captures the audio directly and can stream text while the call runs. The Teams bot API page sets both routes side by side.

Delivery

Live transcripts and the final record

Both come off the same bot. The question is when you need the words.

Stream during the callChunks to your webhookRe-run the recordingA cleaner final passOne bot, two modesThe same request
One bot, two delivery modes.

The Teams integration page covers the speaker timeline and how to turn byte offsets into seconds.

Pricing

Microsoft Teams transcription API pricing

Capture costs $0.35 per bot-hour and transcription adds $0.10, so a transcribed meeting is $0.45 per hour all-in.

The rate falls toward $0.25 per bot-hour at volume, 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.

Limits

Microsoft Teams transcription limits and defaults

Four hoursPer session, five whenyou raise itOpen concurrencyRun as many bots asyour product needsISO 27001Certified. SOC 2 Type 2is under audit
The defaults every bot runs with, on all three platforms.

Transcripts are kept for thirty days by default, or written into your own S3 bucket from the first byte.

Integration

One integration for all three platforms

The same request, the same webhook, the same transcript. Only the link changes.

Teams transcripts from a join link, with no Azure setup.

One request captures the audio and returns the words, live or after the call.

*Get started in minutes*

Per-participant audio
Live transcripts
MP4 recordings
Participant events
Calendar sync
FAQ

Got a question? We got the answer.

Common questions about transcribing Microsoft Teams calls. Where labels come from, which engines run, and what it costs.

*Get started in minutes*

Can I transcribe a Teams meeting through an API?

Yes. One request puts a bot in the Teams call, captures the audio, and returns a speaker-labelled transcript to your webhook.

Does a Teams transcription bot need an Azure app registration?

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.

How are Teams speakers labelled?

Capture is tagged by speaker as people talk, on the same model as Google Meet, and a byte-accurate speaker timeline places every turn.

Can I use Teams native captions?

Yes. Choose the meeting captions engine and the bot reads the captions Teams produces, alongside the six transcription engines.

Can I get a live Teams transcript during the call?

Yes. Choose a streaming engine and text chunks arrive at your webhook while people are still speaking, ready for live coaching or an in-meeting assistant.

Which transcription engines work on Microsoft Teams?

The MeetStream engine plus AssemblyAI, Gemini, Deepgram, Sarvam and JigsawStack, or Teams' own captions. Pick one per request.

What does a Teams transcript contain?

A list of utterances, each tied to a named participant with start and end times, so a summary or a search index needs no extra speaker step.

How much does the Microsoft Teams transcription API cost?

Capture is $0.35 per bot-hour and transcription adds $0.10, so $0.45 per hour all-in, falling toward $0.25 at volume. Every account starts with $5 of credit.

Transcribe your next Teams call

$5 of free credit, self-serve API keys, and no sales call between you and your first transcript.