Zur Navigation springen

WebSocket

The Realtime Translation WebSocket API streams translation audio continuously to a target language given source audio. Currently for enterprise workspaces only.

Handshake

WSS
/v1/translation/realtime

Header

xi-api-keystringOptional

Abfrageparameter

authorizationstringOptional
Your authorization bearer token.
target_languagestringErforderlich

Target language as an ISO 639 code (e.g. de, es, fr, zh).

source_languagestringOptional

Source language as an ISO 639 code. When omitted the server auto-detects the spoken language.

voice_idstringErforderlich
Voice ID used for the translated speech output.
input_formatanyOptional
Audio encoding format for realtime translation input.
output_formatanyOptional
Audio encoding format for realtime translation output.
tts_model_idenumOptionalStandardwert ist eleven_v4_turbo
TTS model used to synthesize the translated speech.
Erlaubte Werte:
apply_text_normalizationenumOptionalStandardwert ist off

This parameter controls text normalization with three modes: ‘auto’, ‘on’, and ‘off’. When set to ‘auto’, the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With ‘on’, text normalization will always be applied, while with ‘off’, it will be skipped.

Erlaubte Werte:
eagernessenumOptionalStandardwert ist medium
How eagerly translation starts while the speaker is still talking. 'high' starts translating soonest for the lowest latency. 'low' waits for more of the sentence, giving higher quality translations with more delay.
Erlaubte Werte:
client_session_idstringOptional

Optional client-defined session identifier for tracking purposes.

enable_zrmbooleanOptionalStandardwert ist false

When enable_zrm is set to true, zero retention mode will be used for the request. Sensitive content (transcripts, translations, and TTS text) is not written to application logs or session history. Zero retention mode may only be used by enterprise customers.

Senden

inputAudioChunkobjectErforderlich
Send a chunk of audio for translation.
OR
endOfStreamobjectErforderlich
Signal that the audio stream has ended.

Empfangen

sessionStartedobjectErforderlich
Sent by the server when the session is initialized.
OR
statusobjectErforderlich
Session lifecycle update indicating the session has started or stopped.
OR
partialTranscriptobjectErforderlich
Interim transcription of the source audio.
OR
finalTranscriptobjectErforderlich
Final transcription of a segment of source audio.
OR
translationobjectErforderlich
Translated text in the target language.
OR
audioobjectErforderlich

Base64-encoded audio of the translated speech.

OR
errorobjectErforderlich
Error encountered during translation.
OR
Translate Auth ErrorobjectErforderlich
Authentication failed for the session.
OR
Translate Rate Limited ErrorobjectErforderlich
The request rate limit was reached.
OR
Translate Queue Overflow ErrorobjectErforderlich
Audio was sent too frequently and the session was terminated.
OR
Translate Input ErrorobjectErforderlich

An input message could not be handled; check the message format.

OR
Translate Transcriber ErrorobjectErforderlich
The transcriber failed to process the audio.
OR
Translate Translation ErrorobjectErforderlich

Translation failed for a segment; the session continues.

OR
Translate Audio Output ErrorobjectErforderlich

Audio output for a segment failed or was dropped; the session continues.

OR
Translate Quota Exceeded ErrorobjectErforderlich

The workspace is out of credits; the session is closed.

OR
Translate Payment Issue ErrorobjectErforderlich

The workspace has a payment issue or is suspended; the session is closed.

OR
Translate Unaccepted Terms ErrorobjectErforderlich

The workspace has not accepted terms required for this feature; the session is closed.