# Supported languages

The real-time API accepts ISO-639-1 language codes (`en`, `es`, `zh`, …).
Regional tags are accepted (`en-US`, `pt-BR`) — only the primary subtag is used.

* * *

## Input (`sourceLanguage`)

Languages you can speak. Pass `auto` to let the ASR detect the spoken language; the detected code is returned on every transcript frame as `detected_language`.

| Code | Language |
| --- | --- |
| `auto` | Auto-detect |
| `zh` | Chinese (Mandarin) |
| `yue` | Cantonese |
| `en` | English |
| `fr` | French |
| `de` | German |
| `it` | Italian |
| `ja` | Japanese |
| `ko` | Korean |
| `pt` | Portuguese |
| `ru` | Russian |
| `es` | Spanish |

* * *

## Output — translated text (`targetLanguage` with `audioOutputEnabled=false`)

Languages you can receive as text transcripts.

| Code | Language |
| --- | --- |
| `ar` | Arabic |
| `zh` | Chinese |
| `cs` | Czech |
| `nl` | Dutch |
| `en` | English |
| `fr` | French |
| `de` | German |
| `hi` | Hindi |
| `id` | Indonesian |
| `it` | Italian |
| `ja` | Japanese |
| `ko` | Korean |
| `pl` | Polish |
| `pt` | Portuguese |
| `ru` | Russian |
| `es` | Spanish |
| `th` | Thai |
| `tr` | Turkish |
| `vi` | Vietnamese |

* * *

## Output — translated speech (`targetLanguage` with `audioOutputEnabled=true`)

Languages you can receive as translated audio.

| Code | Language | Voices |
| --- | --- | --- |
| `zh` | Chinese | male, female |
| `en` | English | male, female |
| `fr` | French | male, female |
| `de` | German | male, female |
| `it` | Italian | male, female |
| `ja` | Japanese | male, female |
| `ko` | Korean | male, female |
| `pt` | Portuguese | male, female |
| `ru` | Russian | male, female |
| `es` | Spanish | male, female |

Requesting an unsupported `targetLanguage` with `audioOutputEnabled=true` returns an `error` frame. Pass `audioOutputEnabled=false` to get transcripts in any of the text-output languages above.
