Add a session to the room

View as Markdown
**Rate limit: Per room** · **Burst:** 100 · **Refill:** 30 req/s Add a [room member](/api/room-members). This is the canonical join endpoint. Members join unmuted by default; pass `"muted": true` to join muted. The member is identified by its session UUID, the same identifier `GET /api/v1/rooms/{room_id}/members` returns. **Triggered webhooks:** `room.member.joined` (deferred, emitted when the underlying media operation completes) Returns 200 if the session is already in this room (idempotent). Returns 409 if the session is still mid-join in a different room.

Authentication

AuthorizationBearer
Application auth. Send `Authorization: Bearer <app_uuid>:<api_key>`. See [Authentication](https://voice-platform.docs.buildwithfern.com/api/authentication) for details.

Path parameters

room_idstringRequired

Room ID (format {prefix}-room-{uuid}). The UUID portion is lowercase hexadecimal — uppercase hex is rejected with 400.

Headers

Idempotency-KeystringOptionalformat: "^[a-zA-Z0-9._-]+$"<=128 characters
Optional client-generated key for a mutating endpoint. It identifies one method, route, query, content type, and exact raw body within the authenticated app. Reusing it for a different request returns 422. While its record exists, a retry replays the original accepted response when available. Keys are valid for 1 hour. Allowed characters: letters, digits, dot, hyphen, underscore; max 128 characters. See the Idempotency guide.

Request

This endpoint expects an object.
session_uuidstringRequired

Session UUID of the member to add — the identifier GET /api/v1/rooms/{room_id}/members returns.

mutedbooleanOptionalDefaults to false

If true, the member joins muted. Omitted or false joins the member unmuted (audible immediately).

Response

Session already joined to this room (idempotent)

room_idstring
statusenum

Errors

400
Bad Request Error
401
Unauthorized Error
404
Not Found 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