Skip to main content
Our Audio Transcription API accepts BCP47 language tags. This page lists every tag the API accepts today (89 locale codes, plus multi for multilingual transcription).

Languages

LanguageLanguage Tags
Arabicar, ar-AE, ar-SA, ar-QA, ar-KW, ar-SY, ar-LB, ar-PS, ar-JO, ar-EG, ar-SD, ar-TD, ar-MA, ar-DZ, ar-TN, ar-IQ, ar-IR
Belarusianbe
Bengalibn
Bosnianbs
Bulgarianbg
Catalanca
Chinese (Mandarin, Simplified)zh, zh-CN, zh-Hans
Chinese (Mandarin, Traditional)zh-TW, zh-Hant
Chinese (Cantonese, Traditional)zh-HK
Croatianhr
Czechcs
Danishda, da-DK
Dutchnl
Englishen, en-US, en-CA, en-IE, en-AU, en-GB, en-NZ, en-IN
Estonianet
Finnishfi
Flemishnl-BE
Frenchfr, fr-CA
Germande, de-CH
Greekel
Gujaratigu, gu-IN
Hebrewhe
Hindihi
Hungarianhu
Indonesianid
Italianit
Japaneseja
Kannadakn
Koreanko, ko-KR
Latvianlv
Lithuanianlt
Macedonianmk
Malayms
Marathimr
Norwegianno
Persianfa
Polishpl
Portuguesept, pt-BR, pt-PT
Romanianro
Russianru
Serbiansr
Slovaksk
Sloveniansl
Spanishes, es-419
Swedishsv, sv-SE
Tagalogtl
Tamilta
Telugute
Thaith, th-TH
Turkishtr
Ukrainianuk
Urduur
Vietnamesevi
Tags not listed here are rejected with a validation error on upload and streaming endpoints. Use exact casing (for example en-US, not en-us).

Multilingual Support

Multilingual transcription detects and transcribes multiple languages in the same audio. Use it when speakers switch languages during the encounter.

Automatic multilingual routing

If you pass any of the following base language tags, the API routes the request through multilingual code-switching (the same upstream behavior as language=multi):
LanguageLanguage Tags
Dutchnl
Frenchfr
Germande
Hindihi
Italianit
Japaneseja
Portuguesept
Russianru
Spanishes
For example, language=es and language=multi both use multilingual code-switching. To target a single Spanish locale without that routing, use a regional tag such as es-419.

Explicit multi tag

You may also pass multi directly:
wss://api.sully.ai/v1/audio/transcriptions/stream?language=multi&sample_rate=16000
multi is accepted on streaming endpoints. File upload accepts the locale codes in the table above; use multi on streaming when you want the same multilingual behavior without picking a base language first.