Skip to main content
Create a meeting session by pointing the bot at a meeting URL. The bot joins as a visible participant and starts capturing audio. You can join now, schedule the join for a future time, or use calendar auto-join to have the bot join your meetings automatically.

Create a Meeting Session

Returns 201 Created:
If you send the same idempotency_key again, the request is replayed and you get 200 OK with the original session instead of a duplicate. The full request schema — every field, constraint, and default — lives on Create a meeting session in the API Reference.

Platform Detection

The platform is detected automatically from the meeting URL:
During the beta, creating a session with a teams.microsoft.com URL can fail with a gateway 502 while Teams support rolls out; teams.live.com URLs, Google Meet, Zoom, and Webex URLs create sessions normally.

Session Statuses

A session moves from joining to waiting_for_admission when the bot reaches the lobby, and to active once it enters the room — active, and a non-null joined_at, are the positive evidence that the bot got in. It finishes as ended, failed, or admission_denied. admission_denied is reserved for an explicit denial by the host; a session that was cancelled or timed out without being admitted ends as ended with joined_at: null, so ending alone does not prove attendance. Scheduled sessions wait in scheduled until join_at. Every status and its meaning is documented on Retrieve a meeting session.

Schedule a Join

Set join_at to a future timestamp. The bot joins when the meeting starts:
While a session is scheduled, update it with PATCH:
Only join_at and bot_name can be updated, and only while the session is scheduled.

Leave or Cancel a Session

DELETE ends the bot’s participation. It does not delete the session history, transcript, or artifacts:

Errors

Failures return a non-2xx status with an error envelope: