Skip to navigation

FAQ

Frequently asked questions about the MeetStream meeting bot API
View as Markdown

Platforms

Zoom, Google Meet, and Microsoft Teams, all through the same API. Google Meet and Teams need zero setup; Zoom needs a one-time Marketplace app setup.

No. One create_bot call with the meeting link is enough. MeetStream detects the platform from the URL. Platform differences that do exist (Zoom’s recording-permission gate, per-participant isolation levels, timeout defaults) are documented on the Zoom, Google Meet, and Teams pages.

Getting started

Every request sends Authorization: Token YOUR_API_KEY: literally the word Token, not Bearer. Keys come from the dashboard and are scoped per workspace. A missing or invalid key returns 403 Forbidden. See Authentication.

Two fields: meeting_link and bot_name. A successful create returns 201 with the bot_id you’ll use for everything else. See the quickstart.

Yes, two: the API Playground in the dashboard (a visual bot builder with live preview and generated code), and the CLI (npx @meetstream/cli).

Recording & data

GET /bots/{bot_id}/get_audio and /get_video return presigned URLs (links expire, so request a fresh one when you need it). Per-participant streams come from /get_audio_streams and /get_recording_streams.

Depends on the platform. Google Meet delivers one audio track per participant, so each file is that person’s audio. Zoom provides per-speaker audio from its Meeting SDK. Teams mixes audio on its servers, so MeetStream splits the mixed stream by active speaker; when two people talk at once, the overlap goes to one of them. All three support up to 16 speakers. Details: per-participant audio.

Configurable via recording_config.retention (default 30 days, included; longer retention is $0.05/GB per month). When retention expires or you call the delete endpoint, a data_deletion webhook fires and artifact endpoints return 404/410. You can also configure your own object storage in the dashboard. See usage & retention.

GET /bots/{id}/remove_bot makes the bot leave the meeting now; data is kept. DELETE /bots/{id}/delete permanently deletes audio, video, and transcripts.

Transcription

Post-call: meetstream (in-house), deepgram, assemblyai, sarvam, jigsawstack, and meeting_captions (native platform captions, Meet/Teams). Live streaming: deepgram_streaming and assemblyai_streaming. One provider per request. See post-call and live guides.

Yes. POST /bots/{bot_id}/transcribe re-runs transcription on the recorded audio with any provider config, without re-recording anything. List every run with GET /bots/{bot_id}/transcriptions.

Either post-call processing is still running (retry shortly), or you used a streaming-only provider: those deliver text to your live webhook during the meeting and never produce a post-call transcript. See debugging.

Scheduling & webhooks

Yes. Connect Google Calendar or Outlook, then schedule per event or enable auto-join (bots are dispatched about 2 minutes before start). Recurring meetings are booked one occurrence at a time. See the Scheduling guide.

Use a deduplication_key (same key + same meeting replays the existing bot) and the Idempotency-Key header for safe retries (replay returns 507 with the original bot). Neither charges twice. See Deduplication & Idempotency.

MeetStream sends each event one time. Respond with a 2xx quickly, then process the event. To deliver an event again, resend it from the Logs tab of the webhook endpoint in the dashboard. Test locally with meetstream listen plus a tunnel. See Webhooks and Events.

Building with AI

Yes. The MeetStream MCP server is an action server: it creates bots, pulls transcripts, and sends messages into live meetings. Add the hosted server at https://mcp.meetstream.ai/mcp and sign in with OAuth (or send your API key). There is nothing to install. There’s also a docs-search MCP at docs.meetstream.ai/_mcp/server.

Append .md to any docs URL for clean Markdown, and start from the index at docs.meetstream.ai/llms.txt. The OpenAPI spec is published at docs.meetstream.ai/openapi.json.

Yes: npx @meetstream/migrate (Node) and meetstream-migrate (PyPI) scan your code and map fields (meeting_url→meeting_link, transcription_options→recording_config.transcript, …). See the migration guide.

Security and compliance

MeetStream is ISO 27001 certified and GDPR compliant. MeetStream is HIPAA compliant and signs a BAA on request. SOC 2 Type 2 is under audit. Email support@meetstream.ai for documents.

Still stuck? Email support@meetstream.ai or check the Debugging guide.