API reference
MakeAIVideo Characters API
7 operations · https://app.makeaivideo.ai/api/v1
When to use the Characters API
A character is a reusable presenter: a face and a voice you can put in video after video instead of getting a different stranger each render. This is what makes a series of videos look like they come from the same channel.
The creation flow is deliberately two-stage. POST /characters/variations generates portrait candidates and POST /characters/voice-previews auditions voices reading a sample line, so you choose from real options rather than describing what you want and hoping. Once you have a face and a voice you like, POST /characters saves the pairing to the workspace.
Generating portrait candidates spends credits, because it renders images. Listing, updating and deleting saved characters does not.
/charactersreadPreset and workspace characters
GET https://app.makeaivideo.ai/api/v1/characters
Responses
200Characters
/characterswriteSave a character from generated or uploaded assets
POST https://app.makeaivideo.ai/api/v1/characters
Responses
201Character
/characters/{id}readCharacter detail with signed asset URLs
GET https://app.makeaivideo.ai/api/v1/characters/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| idrequired | path | integer | Numeric character id |
Responses
200Character404Unknown characterErrorEnvelope
/characters/{id}writeUpdate name, description or voice
PATCH https://app.makeaivideo.ai/api/v1/characters/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| idrequired | path | integer | Numeric character id |
Responses
200Updated
/characters/{id}writeDelete a workspace character
DELETE https://app.makeaivideo.ai/api/v1/characters/{id}
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| idrequired | path | integer | Numeric character id |
Responses
200Deleted
/characters/variationsaiGenerate 1-4 portrait candidates (spends credits)
POST https://app.makeaivideo.ai/api/v1/characters/variations
Responses
200Portraits
/characters/voice-previewsaiCandidate voices reading a sample line
POST https://app.makeaivideo.ai/api/v1/characters/voice-previews
Responses
200Previews
Characters API questions
- How do I keep the same presenter across multiple videos?
- Save a character once with POST /characters, then reference it on each render. Characters persist in the workspace, so every video that uses one gets the same face and voice.
- Can I hear a voice before committing to it?
- Yes. POST /characters/voice-previews returns candidate voices reading a sample line, so you audition them against your own copy rather than picking from names.
- Does generating a character cost credits?
- Generating portrait candidates does, since it renders images. Saving, listing, updating and deleting characters does not.
- Can I use my own photo instead of a generated portrait?
- Yes. POST /characters accepts uploaded assets as well as generated ones, so a character can be built from an image you supply through the uploads endpoints.
MakeAIVideo API guides
- Quickstart — the create, poll and download loop end to end.
- Authentication — what the read, write, ai scope on this page mean.
- Agents — calling these endpoints from an autonomous agent.
Get an API key
The API and MCP server use the same credits and the same balance as the app, with no separate API plan. Create a key under Settings, Advanced, API keys.
7-day free trial with 350 credits, then plans from $9/mo. Cancel anytime before the trial ends.