curl --request POST \
--url https://api.autoadify.com/v1/generations/video \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "<string>",
"model": "minimax-h3",
"aspectRatio": "9:16",
"durationSeconds": 5,
"imageMediaId": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: '<string>',
model: 'minimax-h3',
aspectRatio: '9:16',
durationSeconds: 5,
imageMediaId: '<string>'
})
};
fetch('https://api.autoadify.com/v1/generations/video', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.autoadify.com/v1/generations/video"
payload = {
"prompt": "<string>",
"model": "minimax-h3",
"aspectRatio": "9:16",
"durationSeconds": 5,
"imageMediaId": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"generation": "<unknown>"
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}Generate video
Starts a video and returns right away with status: pending; poll Get generation every 30–60 s (MiniMax H3 ~5–10 min, Runway ~2–4 min, HeyGen ~1–3 min). Billed per second of output. runway-gen-4.5 animates imageMediaId. Failed generations are refunded.
Requires the generate scope.
curl --request POST \
--url https://api.autoadify.com/v1/generations/video \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "<string>",
"model": "minimax-h3",
"aspectRatio": "9:16",
"durationSeconds": 5,
"imageMediaId": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: '<string>',
model: 'minimax-h3',
aspectRatio: '9:16',
durationSeconds: 5,
imageMediaId: '<string>'
})
};
fetch('https://api.autoadify.com/v1/generations/video', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.autoadify.com/v1/generations/video"
payload = {
"prompt": "<string>",
"model": "minimax-h3",
"aspectRatio": "9:16",
"durationSeconds": 5,
"imageMediaId": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"generation": "<unknown>"
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "unauthorized",
"message": "<string>",
"details": {}
}
}Authorizations
An API key from Autoadify → Settings → API & MCP, sent as Authorization: Bearer aak_live_….
Body
What to generate. Be specific about subject, style, setting and any text to render.
1 - 4000minimax-h3 (text to video, 2K), heygen-video-1 (text to video, 480p with sound, cheapest) or runway-gen-4.5 (animates imageMediaId).
minimax-h3, runway-gen-4.5, heygen-video-1 9:16 for Reels/TikTok/Shorts. runway-gen-4.5 has no 1:1.
16:9, 9:16, 1:1 Rounded down to the model's options (minimax-h3 and heygen-video-1: 5/10/15, runway-gen-4.5: 5/10). Cost is per second.
1 <= x <= 15Library image the clip starts from. Required for runway-gen-4.5.
Response
The generation, pending.

