curl -X GET https://app.dubformer.ai/api/v1/projects/{project_id} \
-H "Authorization: Bearer YOUR_API_KEY"
import requests
url = 'https://app.dubformer.ai/api/v1/projects/{project_id}'
headers = {
'Authorization': 'Bearer YOUR_API_KEY',
}
response = requests.get(url, headers=headers)
print(response.json())
const url = 'https://app.dubformer.ai/api/v1/projects/{project_id}';
const headers = {
'Authorization': 'Bearer YOUR_API_KEY',
};
fetch(url, {
method: 'GET',
headers,
})
.then(response => response.json())
.then(data => console.log(data));
{
"name": "My Project",
"source_lang": "en",
"target_lang": "fr-FR",
"mixing_mode": "voiceover_with_original_track",
"cost_minutes": 10,
"created_date": "2024-06-01T12:00:00Z",
"status": "ready",
"completion_date": "2024-06-02T12:00:00Z",
"output_video_url": "https://example.com/output_video.mp4",
"output_tts_audio_url": "https://example.com/output_tts_audio.wav",
"output_source_script": [
{
"start_ms": 100,
"end_ms": 1544,
"text": "Hello world!",
"speaker_id": 1
}
],
"output_target_script": [
{
"start_ms": 100,
"end_ms": 1544,
"text": "Bonjour le monde!",
"speaker_id": 1
}
],
"output_target_speakers": [
{
"speaker_id": 1,
"voice_key": "voice:Rachel",
"style": "feminine"
}
]
}
Projects
Get Project
Retrieve details of a specific project
GET
/
api
/
v1
/
projects
/
{project_id}
curl -X GET https://app.dubformer.ai/api/v1/projects/{project_id} \
-H "Authorization: Bearer YOUR_API_KEY"
import requests
url = 'https://app.dubformer.ai/api/v1/projects/{project_id}'
headers = {
'Authorization': 'Bearer YOUR_API_KEY',
}
response = requests.get(url, headers=headers)
print(response.json())
const url = 'https://app.dubformer.ai/api/v1/projects/{project_id}';
const headers = {
'Authorization': 'Bearer YOUR_API_KEY',
};
fetch(url, {
method: 'GET',
headers,
})
.then(response => response.json())
.then(data => console.log(data));
{
"name": "My Project",
"source_lang": "en",
"target_lang": "fr-FR",
"mixing_mode": "voiceover_with_original_track",
"cost_minutes": 10,
"created_date": "2024-06-01T12:00:00Z",
"status": "ready",
"completion_date": "2024-06-02T12:00:00Z",
"output_video_url": "https://example.com/output_video.mp4",
"output_tts_audio_url": "https://example.com/output_tts_audio.wav",
"output_source_script": [
{
"start_ms": 100,
"end_ms": 1544,
"text": "Hello world!",
"speaker_id": 1
}
],
"output_target_script": [
{
"start_ms": 100,
"end_ms": 1544,
"text": "Bonjour le monde!",
"speaker_id": 1
}
],
"output_target_speakers": [
{
"speaker_id": 1,
"voice_key": "voice:Rachel",
"style": "feminine"
}
]
}
curl -X GET https://app.dubformer.ai/api/v1/projects/{project_id} \
-H "Authorization: Bearer YOUR_API_KEY"
import requests
url = 'https://app.dubformer.ai/api/v1/projects/{project_id}'
headers = {
'Authorization': 'Bearer YOUR_API_KEY',
}
response = requests.get(url, headers=headers)
print(response.json())
const url = 'https://app.dubformer.ai/api/v1/projects/{project_id}';
const headers = {
'Authorization': 'Bearer YOUR_API_KEY',
};
fetch(url, {
method: 'GET',
headers,
})
.then(response => response.json())
.then(data => console.log(data));
Path Parameters
string
required
The unique identifier of the project to retrieve.
Response
The response format varies depending on the project status.Common Fields
string
Name of the project.
string
Source language of the video.
string
Target language for dubbing.
string
Audio mixing mode used for the project.
number
Number of minutes charged for this project.
string
ISO timestamp when the project was created.
string
Current status:
in_progress, ready, or error.Ready Project Fields
string
ISO timestamp when processing completed.
string
Download URL for the dubbed video file.
string
Download URL for the dubbed audio track.
array
array
Array of target language script segments with timing information.
Uses the same structure as
output_source_script.array
In Progress Project Fields
string
ISO timestamp of estimated completion time.
Error Project Fields
string
Description of the error that occurred during processing.
{
"name": "My Project",
"source_lang": "en",
"target_lang": "fr-FR",
"mixing_mode": "voiceover_with_original_track",
"cost_minutes": 10,
"created_date": "2024-06-01T12:00:00Z",
"status": "ready",
"completion_date": "2024-06-02T12:00:00Z",
"output_video_url": "https://example.com/output_video.mp4",
"output_tts_audio_url": "https://example.com/output_tts_audio.wav",
"output_source_script": [
{
"start_ms": 100,
"end_ms": 1544,
"text": "Hello world!",
"speaker_id": 1
}
],
"output_target_script": [
{
"start_ms": 100,
"end_ms": 1544,
"text": "Bonjour le monde!",
"speaker_id": 1
}
],
"output_target_speakers": [
{
"speaker_id": 1,
"voice_key": "voice:Rachel",
"style": "feminine"
}
]
}
{
"name": "My Project",
"source_lang": "en",
"target_lang": "fr-FR",
"mixing_mode": "voiceover_with_original_track",
"cost_minutes": 10,
"created_date": "2024-06-01T12:00:00Z",
"status": "in_progress",
"estimated_completion_date": "2024-06-05T12:00:00Z"
}
{
"name": "My Project",
"source_lang": "en",
"target_lang": "fr-FR",
"mixing_mode": "voiceover_with_original_track",
"cost_minutes": 10,
"created_date": "2024-06-01T12:00:00Z",
"status": "error",
"error_message": "An error occurred during processing."
}