Braiv Public API
Import a video once. Then add work to it — a French dub, a set of shorts, a title and thumbnail — and poll until it is ready.
Every long-running action returns a job. Poll GET /jobs/{jobId} or register a webhook. Job status is always one of queued, processing, ready, or failed.
Base URL
Section titled “Base URL”https://api.braiv.co/v1Authenticate with Authorization: Bearer or X-Api-Key. See Authentication.
What you can do
Section titled “What you can do”| You want to… | Start here |
|---|---|
| Import from YouTube and dub it | Import and dub |
| Upload a file from disk | Upload a file |
| Stage several products in one create | Import with a recipe |
| Use Braiv from Cursor, Claude, VS Code, or another agent | MCP |
| Check a job | Jobs and polling |
| Hold credits before you spend | Credits |
| Get notified when work finishes | Webhooks |
v1 covers ingest (YouTube, Dropbox, Google Drive, HTTPS, upload), transcripts and subtitles, caption translation, dubs (plus and premium), shorts, video thumbnails, packaging, professional hosting (Mux), downloads, scoped API keys, job webhooks, and listing Studio-saved characters and branding guidelines (Brand Voices).
How a video flows
Section titled “How a video flows”- Create a video (
POST /videos). You get animport_*job. - When import is
ready, the source transcript runs (transcript_*). - Attach products — dubs, shorts, packaging, or professional hosting — on the same video. Product jobs stay
queueduntil their prerequisites finish. - Download a language MP4 or other artifact as its own job when you need a file.
Machine contract
Section titled “Machine contract”Download the OpenAPI 3.1 spec if you generate a client. Liveness is unauthenticated GET /health.