Play audio in room

View as Markdown
**Rate limit: Per room** · **Burst:** 8 · **Refill:** 3 req/s Play one or more finite WAV or MP3 files in order with `type: files`, or join a hosted HTTP/HTTPS AAC source at its current live position with `type: stream`. Live streams do not support seek or loop. The platform validates and prepares every source before admission. If it cannot prepare a source, the request returns a synchronous HTTP error and emits no playback webhook. If room playback is already active, the request returns `409`. A `202` response confirms admission. After admission, the platform emits `room.playback.ended` when playback finishes naturally or is stopped through the API. It emits `room.playback.failed` if playback fails or times out. See [Room lifecycle, member, and playback events](/api/rooms#lifecycle-member-and-playback-events) for complete payload schemas and examples.

Authentication

AuthorizationBearer
Application auth. Send `Authorization: Bearer <app_uuid>:<api_key>` using any active key in the app's collection. See [Authentication](https://voice-platform.docs.buildwithfern.com/api/authentication) for details.

Path parameters

room_idstringRequired

Case-sensitive room identifier.

Headers

Idempotency-KeystringOptionalformat: "^[a-zA-Z0-9._-]+$"<=128 characters
Optional key for safely retrying mutating requests. See [Idempotency](https://voice-platform.docs.buildwithfern.com/idempotency) for details.
Operation-IdstringOptionalformat: "uuid"

optional client-supplied lowercase RFC-4122 v4 UUID returned as operation_uuid; platform generates one when omitted; correlation metadata distinct from Idempotency-Key.

Request

This endpoint expects an object.
objectRequired
OR
objectRequired

Response

Room playback command accepted for asynchronous execution
operation_uuidstringformat: "uuid"
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
502
Bad Gateway Error
503
Service Unavailable Error