Integrate the dubbing API in an afternoon
This overview covers the core concepts and endpoints you need to automate dubbing from your own pipeline. Reach out if you need a walkthrough with your engineering team.
Quickstart
- 1
Create an API key
Generate a key from the FaceMagic studio dashboard under Settings → API Keys.
- 2
Upload a video
POST your source file and target language to /v1/dub.
- 3
Poll or listen for completion
Check status via GET, or subscribe to the render-complete webhook.
- 4
Download your render
The response includes a signed URL for the dubbed video, plus captions.
Authentication
Every request is authenticated with a bearer token in the Authorization header.
Authorization: Bearer sk_live_your_keyCore concepts
Project
One source video and its full set of target-language renders.
Render
A single language output within a project, with its own status and files.
Voice
A cloned or library voice reusable across projects.
API endpoints
| Method | Path | Description |
|---|---|---|
| POST | /v1/dub | Submit a video for translation, voice cloning, and lip-sync. |
| GET | /v1/dub/{project_id} | Check render status and retrieve output files. |
| GET | /v1/languages | List all supported target languages and voices. |
| POST | /v1/voices/clone | Register a new cloned voice for reuse across projects. |
| DELETE | /v1/dub/{project_id} | Cancel a queued or in-progress render. |
Webhooks
Subscribe to render.completed and render.failed from the studio dashboard to get notified the moment a language render finishes, instead of polling.
Rate limits
API keys are limited to 60 requests per minute by default. High-volume accounts can request custom limits matched to their rendering needs — talk to your sales contact.