Home / Developers / API reference
Meo Studio API reference
Every endpoint of the REST API at https://www.mymeo.app/v1. Send your key as Authorization: Bearer meo_live_…. Calls spend your plan's credits; failed work is refunded.
Endpoints
GET/v1/account
Plan and credits
Responses: 200 OK · 401 Error
GET/v1/models
List models
Parameterskind query | "video" | "image" |
Responses: 200 OK
GET/v1/models/{id}
Get a model
Parametersid path required | string |
Responses: 200 OK · 404 Error
POST/v1/estimate
Estimate credits
Body (JSON)model required | string |
params | object |
video_seconds | number |
Responses: 200 OK
GET/v1/templates
List templates
Parameterskind query | "motion" | "clip" |
search query | string |
Responses: 200 OK
GET/v1/generations
List generations
Parameterslimit query | integer |
starting_after query | string |
Responses: 200 OK
POST/v1/generations
Create a generation
ParametersIdempotency-Key header | string |
model | string |
prompt | string |
mode | "t2v" | "i2v" | "v2v" | "t2i" | "i2i" |
params | object |
image_url | string |
image_urls | string[] |
video_url | string |
video_seconds | number |
template_id | string |
webhook_url | string |
wait_seconds | integer |
Responses: 200 Finished (when wait_seconds was set) · 202 Accepted, still running · 400 Error · 402 Error · 429 Error
GET/v1/generations/{id}
Get a generation
Parametersid path required | string |
wait query | integer Long-poll up to this many seconds |
Responses: 200 OK · 404 Error
POST/v1/generations/{id}/cancel
Cancel and refund
Parametersid path required | string |
Responses: 200 OK · 409 Error
POST/v1/ads
Make an ad (a task: script and shot plan, then approval with an exact quote, then the finished ad)
Body (JSON)product required | string |
story required | string |
brand | string |
audience | string |
offer | string |
cta | string |
style | string |
ratio | "9:16" | "16:9" | "1:1" | "4:5" |
seconds | integer |
language | string |
quality | "draft" | "720p" | "1080p" |
voice | "auto" | "none" |
product_image_urls | string[] |
rights_confirmed | boolean |
max_credits | number |
webhook_url | string |
Responses: 202 Accepted · 400 Error · 402 Error · 403 Error
POST/v1/dubs
Dub a finished video into other languages (a task; Meo Enterprise; a person approves the voice)
Body (JSON)video_url | string |
from_task | string |
from_generation | string |
languages required | string[] |
title | string |
rights_confirmed required | boolean |
max_credits | number |
webhook_url | string |
Responses: 202 Accepted · 400 Error · 402 Error · 403 Error · 428 Error
POST/v1/faith-videos
Make a faith video for a church (a task; Faith Studio, faith-based only; waits for approval before the video is made)
Body (JSON)template required | string |
passage | string |
passage_text | string |
notes | string |
title | string |
style | string |
ratio | string |
seconds | number |
language | string |
max_credits | number |
webhook_url | string |
Responses: 202 Accepted · 400 Error · 402 Error · 403 Error
POST/v1/posters
Make a church poster in one or more sizes (a task; Faith Studio)
Body (JSON)purpose | string |
headline required | string |
text | string |
ref | string |
details | string[] |
sizes | string[] |
style | string |
notes | string |
max_credits | number |
webhook_url | string |
Responses: 202 Accepted · 400 Error · 402 Error · 403 Error
GET/v1/tasks
List tasks
Parameterslimit query | integer |
Responses: 200 OK
GET/v1/tasks/{id}
Get a task
Parametersid path required | string |
wait query | integer Wait up to this many seconds for the status to change |
Responses: 200 OK · 404 Error
POST/v1/tasks/{id}/approve
Approve an ad's quote and make it (keys allowed to approve)
Parametersid path required | string |
max_credits | number |
quality | "draft" | "720p" | "1080p" |
Responses: 200 OK · 402 Error · 403 Error · 409 Error
POST/v1/tasks/{id}/lines
Edit a dub's translated lines while it waits for approval
Parametersid path required | string |
language required | string |
lines required | object[] |
Responses: 200 OK · 409 Error
POST/v1/tasks/{id}/cancel
Stop a task
Parametersid path required | string |
Responses: 200 OK · 409 Error
GET/v1/tasks/{id}/subtitles/{lang}.srt
Subtitles (SRT) of a dubbed language
Parametersid path required | string |
lang path required | string |
Responses: 200 SRT file · 404 Error
GET/v1/prices
Credits per finished job
Responses: 200 OK
GET/v1/languages
Languages for dubbing and voiceovers
Responses: 200 OK
GET/v1/connection
This key's limits, spend this month and recent activity
Responses: 200 OK
POST/v1/uploads
Upload an image or video (raw body). Requires header X-Upload-Consent: yes, confirming you own the file or have every necessary right and consent, including from each person shown (see the Terms). Returns a URL to use as image_url / video_url. Uploads are screened for resemblance to well-known people; flagged uploads can't be used via the API.
Responses: 200 OK
Building with a tool that reads OpenAPI (ChatGPT actions, client generators)? Point it at https://www.mymeo.app/openapi.json.