AI Dubbing API

Translate and dub your videos with AI dubbing API. Automatically dub videos into 33+ languages with voice cloning
33+ Languages
Voice Cloning
REST API
AI Dubbing Voice Tracks
EN
PT
ES
33+ Languages
99.9%
Uptime
Trusted by over 500,000+ users

Powerful API features

Everything you need to integrate professional AI dubbing into your applications
Global reach

33+ languages

Support for the world's most popular languages including English, Portuguese, Spanish, French, German, Chinese, Japanese, and more.
Authentic voices

Voice cloning

Preserve original speaker voices with advanced AI voice cloning technology for authentic dubbing results.
Fast & Reliable

Fast processing

Complete your dubbing projects in minutes, not hours. Get results quickly with our optimized AI processing pipeline.
99.9%
Uptime
<300ms
Response time
24/7
Support

AI Dubbing API workflow

Integrate AI dubbing into your application with just a few API calls
01

Get upload URL & upload file

Get a presigned URL via API, then upload your video file using PUT request. Support for MP4, MOV, AVI, and more formats.
API Request
# 1. Get upload URL
curl -X GET "https://dubsmart.ai/api/v1/upload" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "region": "EU",
    "fileExtension": "mp4"
  }'

# 2. Upload file using returned URL
curl -X PUT "PRESIGNED_URL_FROM_STEP_1" \
  -H "Content-Type: video/mp4" \
  --data-binary @video.mp4
02

Create project

Create a dubbing project with target languages and voice settings. Support for multiple languages in one request.
API Request
curl -X POST "https://dubsmart.ai/api/v1/project" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": {"path": "uploaded_file_key"},
    "targetLanguages": ["es", "fr", "de"],
    "voice": "voiceCloning"
  }'
03

Edit project

Modify project settings, title, speakers, and background volume as needed.
API Request
curl --request PUT \
  --url https://dubsmart.ai/api/v1/project \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "title": "Updated Project Title",
  "speakers": [
    "Speaker 1",
    "Speaker 2"
  ],
  "backgroundVolume": 0.5,
  "id": "64f8a2b1c3d4e5f6a7b8c9d0"
}'
04

Download results

Download your dubbed video or audio files. Get individual segments or complete dubbed content.
API Request
curl -X GET "https://dubsmart.ai/api/v1/project/PROJECT_ID" \
  -H "Authorization: Bearer YOUR_API_KEY"

AI Dubbing API endpoints

Complete API reference with examples for all endpoints
GET
/upload

Get upload file URL

Get presigned URL for file upload and return file key
Request
JSON
{
  "region": "EU",
  "fileExtension": "mp4"
}
Response
JSON
{
  "url": "https://storage.dubsmart.ai/...",
  "key": "uploads/user_id/filename.mp4"
}

AI Dubbing API code examples

Ready-to-use code examples in multiple programming languages
JavaScript Example
// JavaScript/Node.js Example
const axios = require('axios');
const fs = require('fs');

const API_KEY = 'your_api_key_here';
const BASE_URL = 'https://dubsmart.ai/api/v1';

async function createDubbingProject() {
  try {
    // 1. Get upload URL
    const uploadResponse = await axios.get(`${BASE_URL}/upload`, {
      params: {
        region: 'EU',
        fileExtension: 'mp4'
      },
      headers: { 'Authorization': `Bearer ${API_KEY}` }
    });

    // 2. Upload file using presigned URL
    const fileBuffer = fs.readFileSync('video.mp4');
    await axios.put(uploadResponse.data.url, fileBuffer, {
      headers: {
        'Content-Type': 'video/mp4'
      }
    });

    // 3. Create dubbing project
    const projectResponse = await axios.post(`${BASE_URL}/project`, {
      input: {
        path: uploadResponse.data.key,
        type: 'LOCAL_FILE',
        voice: 'voiceCloning',
        textCheck: false
      },
      targetLanguages: ['es', 'fr', 'de'],
      title: 'My Multilingual Video'
    }, {
      headers: { 'Authorization': `Bearer ${API_KEY}` }
    });

    console.log('Project created:', projectResponse.data);
    return projectResponse.data;
  } catch (error) {
    console.error('Error:', error.response?.data || error.message);
  }
}

// Monitor project status
async function checkProjectStatus(projectId) {
  const response = await axios.get(`${BASE_URL}/project/${projectId}`, {
    headers: { 'Authorization': `Bearer ${API_KEY}` }
  });
  
  return response.data;
}

FAQ

What file formats does the API support?The API supports all major video formats including MP4, MOV, AVI, MKV, WebM, and more. For audio files, we support MP3, WAV, AAC, and other common formats. Maximum file size is 5GB.
How long does dubbing take?Processing time depends on video length, and file size. A 5-minute video typically takes 1 minute to process. Enterprise customers get priority processing with faster turnaround times.
What languages are supported?We support 33+ target languages including English, Portuguese, Spanish, French, German, Chinese, Japanese, Korean, Russian, Arabic, Hindi, and many more. We can also detect and process content from 99+ source languages.
How does voice cloning work?Our advanced AI analyzes the original speaker's voice characteristics including tone, pitch, accent, and speaking style. It then generates synthetic speech that maintains these unique qualities while speaking in the target language.
Can I edit the dubbed content?Yes! The API provides full editing capabilities. You can modify translated text, adjust timing, change voices, and regenerate specific segments.
Can I use the API for commercial projects?Yes! All plans allow commercial use. The API is designed for production environments and is used by major content creators, businesses, and media companies worldwide.