Meeting Caption Transcription
Get transcripts based on meeting platforms' native captions.
Recall offers transcripts generated by native meeting captions for no additional charge. This transcription method may be particularly attractive for those looking for an economical solution for generating transcripts.
Pros:
- No additional charge
- Perfectly diarized: since the transcript is directly based on the underlying separated audio streams, you get perfect diarization out-of-the-box.
Cons:
- No per-word timestamps
- Can be lower quality depending on the meeting platform
- Language cannot be auto-detected
Platform Support
Platform | Supported? |
---|---|
Zoom* | ✅ |
Google Meet | ✅ |
Microsoft Teams* | ✅ |
Cisco Webex | ❌ |
Slack Huddles | ❌ |
*Native Bots and Personal MS Teams not supported
Quickstart: Create a bot with meeting caption transcription
1. Start a meeting
Start instant meeting and copy the URL.
2. Configure and create the bot
Call Create Bot while providing the recording_config.transcript.provider
with ameeting_captions
object:
curl --request POST \
--url https://us-east-1.recall.ai/api/v1/bot/ \
--header "Authorization: $RECALLAI_API_KEY" \
--header "accept: application/json" \
--header "content-type: application/json" \
--data '
{
"meeting_url": "https://meet.google.com/sft-iwmv-eur",
"recording_config": {
"transcript": {
"provider": {
"meeting_captions": {}
}
}
}
}
'
3. Speak for a bit
After the bot joins the call, talk for a bit with your mic unmuted.
4. Fetch the transcript
Call the Retrieve Bot endpoint using the ID of the bot:
curl --request GET \
--url https://us-east-1.recall.ai/api/v1/bot/2e8ec5a4-a608-4ea0-b9d0-2a12aec3f0f0/ \
--header "Authorization: $RECALLAI_API_KEY" \
--header "accept: application/json"
In the response's recordings
, the bot's recording will have a transcript object in its media_shortcuts.transcript
:
{
"id": "2e8ec5a4-a608-4ea0-b9d0-2a12aec3f0f0",
"recordings": [
{
"id": "c9d15f08-83a4-4d83-ad1b-3e311bb0f253",
"media_shortcuts": {
"transcript": {
"id": "b2c3c59f-45a4-43a8-9b0f-1bb79ba33580",
"data": {
"download_url": "https://us-east-1.recall.ai/api/v1/download/transcript?token=..."
},
"provider": {
"meeting_captions": {}
}
},
...
}
}
],
...
}
Simply perform a GET request using the data.download_url
to get the full transcript, which is in the following form:
[
{
"participant": { "id": 100, "name": "Darth Vader" },
"words": [
{
"text": "No, I am your father.",
"start_timestamp": { "relative": 9.730066299438477 },
"end_timestamp": { "relative": 12.751030921936035 }
}
]
},
{
"participant": { "id": 200, "name": "Luke Skywalker" },
"words": [
{
"text": "No, that's not true.",
"start_timestamp": { "relative": 13.263169288635254 },
"end_timestamp": { "relative": 16.988412857055664 }
}
]
},
{
"participant": { "id": 200, "name": "Luke Skywalkeri" },
"words": [
{
"text": "That's impossible!",
"start_timestamp": { "relative": 20.384620666503906 },
"end_timestamp": { "relative": 22.707609176635742 }
}
]
}
]
And that's it! You just created your first transcript using meeting captions 🎉
Take it a step further: Webhooks
Since meeting captions are a method of Real-Time Transcription, you can also receive webhooks as the meeting transcript is generated.
Troubleshooting
Zoom
Meeting captions are disabled in-meeting
If a bot didn't generate a when using meeting caption transcription, it's likely that the host had meeting captions disabled.
To allow participants to use meeting captions, meeting captions must be enabled. This setting persists across all Zoom meetings once it's set.
To enable meeting captions, navigate to Host Caption Control Settings while in a Zoom meeting.

Then, enable the setting called Allow Closed Captioning for this meeting

Meeting captions are disabled globally
If the user doesn't see an option to enable meeting captions in their Zoom client, they likely have the setting turned off globally.
To resolve this, simply go to Zoom settings and flip the toggle for Automated captions
Microsoft Teams
If a meeting-caption-based transcript isn't being generated for Microsoft Teams, it's likely that the end user has closed captions disabled for their meetings.
This may also be set at the organization level, so if their setting is reflected appropriately they should check with their admin.

Enabling Microsoft Teams Closed Captions
This ensures Microsoft Teams bots can generate transcripts when using meeting_captions
as the transcription provider.
Language support
Meeting platforms' meeting captions currently don't support automatic language detection, and the language typically must be specified by either the host (Zoom/Microsoft Teams), or the end participant themselves (Google Meet).
Zoom
Zoom meeting captions are generated according to the language specified by the host.

Zoom: Configuring meeting caption language
Show Captions > Captions > Caption Language
Microsoft Teams
Microsoft Teams supports various languages for meeting captions by configuring these at the meeting-level by the host.
Caption settings > Language

Microsoft Teams: Configuring captions language
Caption settings > Language
Example

Teams Example:
Meeting captions language updated to Japanese
Google Meet
Google Meet captions are generated according to the language specified by each individual user. By default, bots default to English.
You can leverage languages other than English for meeting captions in Google Meet by:
- Setting up Signed-In Google Meet Bots
- Signing into the account you just set up
- Joining a google meet meeting while signed into that account, and setting the language to your desired language
This will persist for any of the bots meetings using this Google login.
Updated 8 days ago