Documentation

Full Dubbing API

Complete dubbing pipeline - transcribe, translate, voice-over, and merge.

Endpoint

POST /v1/dub

Authentication

API Key (Bearer token)

Request Body

ParameterTypeRequiredDescription
mediaUrlstringYesURL of the media file. Supports HTTP/HTTPS URLs (max 3500 MB) or URLs from the upload mechanism.
sourceLanguagestringYesSource language code. See Supported Languages for available options.
targetLanguagestringYesTarget language code. See Supported Languages for available options.

Response

json
{
  "jobId": "job_abc123",
  "status": "pending",
  "message": "Dubbing job started successfully"
}

Code Examples

cURL

bash
curl -X POST https://api.rednerapp.com/v1/dub \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "mediaUrl": "https://example.com/video.mp4",
    "sourceLanguage": "en-US",
    "targetLanguage": "es-ES"    
  }'

Python

python
import requests

url = "https://api.rednerapp.com/v1/dub"
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
}
payload = {
    "mediaUrl": "https://example.com/video.mp4",
    "sourceLanguage": "en-US",
    "targetLanguage": "es-ES"    
}

response = requests.post(url, json=payload, headers=headers)
print(response.json())

JavaScript

javascript
const response = await fetch('https://api.rednerapp.com/v1/dub', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    mediaUrl: 'https://example.com/video.mp4',
    sourceLanguage: 'en-US',
    targetLanguage: 'es-ES'    
  })
});

const data = await response.json();
console.log(data);

Java

java
HttpClient client = HttpClient.newHttpClient();

String json = "{\"mediaUrl\":\"https://example.com/video.mp4\"," +
              "\"sourceLanguage\":\"en\"," +
              "\"targetLanguage\":\"es\"}";

HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.rednerapp.com/v1/dub"))
    .header("Authorization", "Bearer YOUR_API_KEY")
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(json))
    .build();

HttpResponse<String> response = client.send(
    request,
    HttpResponse.BodyHandlers.ofString()
);

System.out.println(response.body());

Media URLs

The mediaUrl parameter accepts:

  • HTTP/HTTPS URLs: Direct links to media files (max 3500 MB)
  • URLs from the upload mechanism
  • Supported formats: mp4, mp3, wav, m4a, webm, ogg, flac, amr

See the Media URLs guide for detailed URL requirements.

Pricing

$0.05 per minute of video (bundled discount - save 20% vs individual APIs)