---
title: "Start speech-to-text on all room participants"
method: POST
path: "/rooms/{id}/stt"
tags: ["Rooms"]
---

# Start speech-to-text on all room participants

`POST /rooms/{id}/stt`

## Request body

- STTRequest
  - `language` string, required — Language code (e.g. "en", "es")
  - `partial` boolean, required — Emit partial (non-final) transcripts
  - `provider` 'elevenlabs' | 'deepgram' — STT provider: "elevenlabs" (default) or "deepgram"
  - `api_key` string — API key override (falls back to ELEVENLABS_API_KEY or DEEPGRAM_API_KEY env var depending on provider)

## Response `200`

STT started

- StatusResponse
  - `instance_id` string — Instance identifier
  - `status` string, required

## Other responses

- `404` — Room not found
- `409` — STT already running or room has no participants
- `503` — No ElevenLabs API key provided

## Changes

- **2026-04-13** `8fca8ce718d0` — 1 breaking
  - removed the enum value `azure` of the request property `provider`
- **2026-04-06** `3eeffdee9d4f` — 1 info
  - added the new `azure` enum value to the request property `provider`
- **2026-03-26** `7856459e2b72` — 3 breaking, 2 info
  - the request property `language` became required
  - removed the required property `leg_ids` from the response with the `200` status
  - removed the required property `room_id` from the response with the `200` status
  - added the new optional request property `provider`
  - …1 more
- **2026-03-26** `d09c97c6ca8c` — 4 info
  - the request property `language` became optional
  - the request property `partial` became optional
  - added the required property `leg_ids` to the response with the `200` status
  - added the required property `room_id` to the response with the `200` status
- **2026-03-26** `818619c99a1d` — 3 breaking, 1 info
  - the request property `language` became required
  - removed the required property `leg_ids` from the response with the `200` status
  - removed the required property `room_id` from the response with the `200` status
  - the request property `partial` with a default value became required

[Change history](https://skmtc.dev/voiceblender/apis/voiceblender-api/changes/rooms/:id/stt/post.md)

---

[API](https://skmtc.dev/voiceblender/apis/voiceblender-api.md) · [All operations](https://skmtc.dev/voiceblender/apis/voiceblender-api/llms.txt) · [OpenAPI document](https://skmtc.dev/voiceblender/apis/voiceblender-api/revisions/9b0a18aea1e2?raw)
