Skip to navigation

Create a room

View as Markdown

Create an empty room. The 201 response returns its room_id and immutable voice_activity_events setting. The room starts with no participants and no playback. Reuse an Idempotency-Key when safely retrying the same request.

Triggered webhooks: room.created (immediate)

See Room lifecycle, participant, and playback events for complete payload schemas and examples.

Authentication

AuthorizationBearer

Send Authorization: Bearer <app_uuid>:<api_key> using an active API key. See Authentication for details.

Headers

Idempotency-KeystringOptionalformat: "^[a-zA-Z0-9._-]*$"<=128 characters

Optional key for safely retrying mutating requests. An explicitly empty header is treated like omission and does not enable replay protection. See Idempotency for details.

Request

Room creation options. Omit voice_activity_events to keep participant voice-activity webhooks disabled.

voice_activity_eventsbooleanOptional

Opt in to room.participant.voice_activity_changed webhooks for this room. Omission is equivalent to false.

Response headers

traceparentstringOptionalformat: "^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$"=55 characters

Server-owned W3C Trace Context for correlating this response with support and observability data. It is present on successful and error responses. A valid incoming traceparent is linked to, but never becomes, the server-owned trace identifier.

Response

Room created
room_idstring
Room identifier.
voice_activity_eventsboolean
Whether participant voice activity webhooks are enabled for this room.

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
406
Not Acceptable Error
409
Conflict Error
413
Content Too Large Error
415
Unsupported Media Type Error
422
Unprocessable Entity Error
429
Too Many Requests Error
500
Internal Server Error
503
Service Unavailable Error