API documentation
Turn a brief or your own script into a finished short-form video, edit and regenerate parts of it, and fetch the MP4. Everything the product can do, agents can do.
https://app.makeaivideo.ai/api/v1 · v1.1 · 42 paths, 56 operations
Start here
Ways to connect
Three surfaces onto the same account, the same credits and the same scopes.
The response envelope
Every JSON response has the same three keys, so a client can unwrap any endpoint the same way.
{
"data": { ... },
"error": null,
"meta": { ... }
}On failure data is null and error carries a machine-readable code.
{
"data": null,
"error": {
"message": "Insufficient credits",
"code": "insufficient_credits",
"retryable": false
},
"meta": { ... }
}retryable is true only for 5xx and 429. Never retry a 4xx without changing the request. Two endpoints return files rather than JSON, including GET /videos/{id}/captions.
The core loop
Renders take minutes, so creating a video is asynchronous: you get a video_id immediately and collect the result later.
- 1
GET /toolsSee what we can make. - 2
POST /videos/estimateFree quote, before you spend credits. - 3
POST /videosCreate from a brief plus fields, or your own script. Returns 202. - 4
GET /videos/{id}Poll, respecting poll_after_seconds — or skip polling and subscribe to video.ready. - 5
GET /videos/{id}/downloadFetch the finished MP4.
Set idempotency_key on create so a retry never produces, and never charges for, a second video.
API reference
Generated from the OpenAPI document, so it matches what the API actually serves.
- Introspection3 operations.
- VideosCreate, inspect, edit, regenerate, export and download videos.
- ScriptsWrite or structure a script before rendering.
- Characters7 operations.
- Voices3 operations.
- Music2 operations.
- Uploads3 operations.
- Brand kit3 operations.
- Workspace2 operations.
- Ideas2 operations.
- Webhooks7 operations.
- AuthCLI device-code login (RFC 8628). Unauthenticated.