## Creative Agents - Dubbing
Create a dubbing job that translates a source video or audio file into one or more Indian languages, with optional voice cloning, watermark control, and translation-style (register) control.
**Base URL:** `https://api.sarvam.ai/dubbing`.
**Auth:** send your key in the `api-subscription-key` header, not `Authorization: Bearer`.
This call only creates the job. It does not accept the media file. The response returns `data.job_id` and a short-lived signed `data.upload_url`. After that:
1. `PUT` the raw media bytes to `upload_url` with headers `Content-Type: <mime>` (e.g. `video/mp4`) and `x-ms-blob-type: BlockBlob`.
2. `POST /jobs/{job_id}/start` to begin the pipeline.
A single job dubs into every language in `target_langs`, so you don't need a separate job per language.
Request
This endpoint expects an object.
src_langenumRequired
Source language of the input media (BCP-47).
target_langslist of enumsRequired
One or more target languages to dub into. A single job dubs into all of them.
export_optionslist of enumsOptionalDefaults to ["video"]
Which formats to auto-produce per target language.
voice_cloningbooleanOptionalDefaults to true
Clone the original speaker’s voice. Set false to use a preset voice_id instead.
voice_idstring or nullOptional
Preset (prebuilt) voice to use when voice_cloning is false. Single speaker only.
pace_presetenum or nullOptional
Speech pace preset, used when voice_cloning is false.
num_speakersinteger or nullOptionalDefaults to 1
Number of speakers in the source audio.
disable_watermarkbooleanOptionalDefaults to false
Set true for a watermark-free export.
registerenum or nullOptional
Translation-style / tone register.
editor_flowbooleanOptionalDefaults to false
Keep false for API integrations so exports fire automatically once TTS finishes. When true, auto-export is suppressed: the pipeline completes but export-status stays empty.
job_namestring or nullOptional
Human-readable label to identify the job later. Recommended (e.g. the source file’s name).