MakeAIVideo

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.

Success
{
  "data": { ... },
  "error": null,
  "meta": { ... }
}

On failure data is null and error carries a machine-readable code.

Failure
{
  "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. 1GET /toolsSee what we can make.
  2. 2POST /videos/estimateFree quote, before you spend credits.
  3. 3POST /videosCreate from a brief plus fields, or your own script. Returns 202.
  4. 4GET /videos/{id}Poll, respecting poll_after_seconds — or skip polling and subscribe to video.ready.
  5. 5GET /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.