Skip to main content
Video jobs allow you to localize videos into other languages using AI. You can create a full dubbing job, generate translated and time-aligned subtitles, or produce a voice-over mixed over the original audio track. Provide the source video as a direct URL or YouTube link, or upload a file via the files endpoints and pass its S3 key. Each endpoint responds with a job object; use the translation jobs endpoints to track job status and retrieve results.

Create a video dub job

POST /v1/jobs/video/dub This endpoint allows you to create a full dubbing job, where the original voice is replaced via smart vocal removal. Provide the source video via either source_video_url or source_file.

Required attributes

source_lang
string
required
Source language code (e.g., “en”).
target_lang
string
required
Target language code with locale (e.g., “fr-FR”).

Optional attributes

source_video_url
string
Direct URL or YouTube link to the source video.
source_file
string
S3 key (without org prefix) of a video previously uploaded via /files/upload. Mutually exclusive with source_video_url.
project_name
string
Display name for the Dubformer project.
glossaries
array
List of glossary IDs to use for terminology.
video
object
Dubformer-specific TTS / dubbing tuning. Object with tts_volume — the loudness of the synthesized voice track (defaults to Dubformer’s “normal” when unset).
curl -X POST https://api.elanlanguages.ai/v1/jobs/video/dub \
  -H "Authorization: Bearer {token}" \
  -H "X-Org-Id: {orgId}" \
  -H "Content-Type: application/json" \
  -d '{
    "source_video_url": "https://www.youtube.com/watch?v=abc123xyz",
    "source_lang": "en",
    "target_lang": "fr-FR",
    "project_name": "Product launch video",
    "glossaries": [1]
  }'
Response
{
  "job_id": "job_dub_abc123def456",
  "status": "queued",
  "message": "Video dub job created successfully",
  "created_at": "2025-12-21T10:34:41.135Z"
}

Create a video subtitle job

POST /v1/jobs/video/subtitle This endpoint allows you to create a subtitling job that produces translated, time-aligned subtitles for a video. Provide the source video via either source_video_url or source_file.

Required attributes

source_lang
string
required
Source language code (e.g., “en”).
target_lang
string
required
Target language code with locale (e.g., “fr-FR”).

Optional attributes

source_video_url
string
Direct URL or YouTube link to the source video.
source_file
string
S3 key (without org prefix) of a video previously uploaded via /files/upload. Mutually exclusive with source_video_url.
project_name
string
Display name for the Dubformer project.
glossaries
array
List of glossary IDs to use for terminology.
video
object
Dubformer-specific TTS / dubbing tuning. Object with tts_volume — the loudness of the synthesized voice track (defaults to Dubformer’s “normal” when unset).
curl -X POST https://api.elanlanguages.ai/v1/jobs/video/subtitle \
  -H "Authorization: Bearer {token}" \
  -H "X-Org-Id: {orgId}" \
  -H "Content-Type: application/json" \
  -d '{
    "source_file": "videos/product-launch.mp4",
    "source_lang": "en",
    "target_lang": "de-DE",
    "project_name": "Product launch subtitles"
  }'
Response
{
  "job_id": "job_sub_abc123def456",
  "status": "queued",
  "message": "Video subtitle job created successfully",
  "created_at": "2025-12-21T10:34:41.135Z"
}

Create a video voiceover job

POST /v1/jobs/video/voiceover This endpoint allows you to create a voice-over job, where the translated voice is mixed over the original track. Provide the source video via either source_video_url or source_file.

Required attributes

source_lang
string
required
Source language code (e.g., “en”).
target_lang
string
required
Target language code with locale (e.g., “fr-FR”).

Optional attributes

source_video_url
string
Direct URL or YouTube link to the source video.
source_file
string
S3 key (without org prefix) of a video previously uploaded via /files/upload. Mutually exclusive with source_video_url.
project_name
string
Display name for the Dubformer project.
glossaries
array
List of glossary IDs to use for terminology.
video
object
Dubformer-specific TTS / dubbing tuning. Object with tts_volume — the loudness of the synthesized voice track (defaults to Dubformer’s “normal” when unset).
curl -X POST https://api.elanlanguages.ai/v1/jobs/video/voiceover \
  -H "Authorization: Bearer {token}" \
  -H "X-Org-Id: {orgId}" \
  -H "Content-Type: application/json" \
  -d '{
    "source_video_url": "https://www.youtube.com/watch?v=abc123xyz",
    "source_lang": "en",
    "target_lang": "fr-FR",
    "video": {
      "tts_volume": "normal"
    }
  }'
Response
{
  "job_id": "job_vo_abc123def456",
  "status": "queued",
  "message": "Video voiceover job created successfully",
  "created_at": "2025-12-21T10:34:41.135Z"
}