v1

latestOpenAPI 3.1.02026-07-2665164286.3 KB
Video Translate

Create Video Translation

Translates a video into one or more target languages with voice cloning and lip-sync. Returns one video_translation_id per language. Use mode: 'speed' (default) for fast turnaround or 'precision' for higher lip-sync quality.

post/v3/video-translations

Headers

Idempotency-Keystring

Optional client-supplied key for safely retrying mutations. Subsequent calls within 24 hours that share this key replay the original response — even if the request body differs slightly (a warning is logged). A retry that arrives while the original is still in flight gets a 409 request_in_progress. Keys must be 1–255 characters from [A-Za-z0-9_:.-]; a UUID is a safe default. Scope is per-endpoint and per-resource: the same key on a different route or path parameter is independent.

Request body

titlestring nullable

Title for the translation job

output_languagesstring[] required

Target language names (e.g. 'Chinese (Cantonese, Traditional)', 'Spanish (Spain)', 'English'). Use GET /v3/video-translations/languages for valid values. Use one for single translation, multiple for batch.

input_languagestring nullable

Source language code (auto-detected if omitted)

translate_audio_onlyboolean

Only translate audio, keep original video

speaker_numinteger nullable

Number of speakers (improves speaker separation)

mode'speed' | 'precision'
callback_urlstring nullable

Webhook URL for completion notifications

callback_idstring nullable

ID included in webhook payload

enable_captionboolean

Generate captions for translated video

keep_the_same_formatboolean nullable

Preserve the source video's encoding specs (resolution, bitrate).

enable_dynamic_durationboolean

Allow dynamic duration adjustment

disable_music_trackboolean

Remove background music

enable_speech_enhancementboolean

Enhance speech quality

enable_watermarkboolean

Add watermark to output

start_timenumber nullable

Start time in seconds for partial translation

end_timenumber nullable

End time in seconds for partial translation

brand_voice_idstring nullable

Brand glossary ID for custom term translations. Legacy field name for brand_glossary_id — both are accepted and resolve to the same workspace record. Discover IDs via GET /v3/brand-glossaries.

brand_glossary_idstring nullable

Brand glossary ID for custom term translations (e.g. translate 'Reformer' as the Pilates equipment, not 'political activist'). Alias for the legacy brand_voice_id field. Discover IDs via GET /v3/brand-glossaries.

srt_role'input' | 'output' nullable

Which video the subtitle applies to: 'input' (source) or 'output' (translated).

fps_mode'vfr' | 'cfr' | 'passthrough' nullable

Frame rate mode for the output video. 'vfr' = variable frame rate, 'cfr' = constant frame rate, 'passthrough' = match the source. Only takes effect when a custom 'audio' track is provided.

folder_idstring nullable

Project/folder ID to organize translation into

Response

Successful response