Color theme
Log in Get 3 free videosTry free
REST API · v1

AI video generation API

Text-to-video and image-to-video with sound over plain HTTPS. Same price as the website: $1 per video, free signup videos count too. No subscription, no minimum volume. Every format from TikTok to Pinterest.

Your API keys

Sign up to create an API key — you get 3 free videos to test with.

Get an API key

Quick start

Authenticate with Authorization: Bearer gv_…. Create a video, then poll until status is done.

curl -X POST https://generatorvideo.ai/api/v1/videos \ -H "Authorization: Bearer $GV_KEY" -H "Content-Type: application/json" \ -d '{"prompt":"a golden retriever surfing a giant wave at sunset","format":"tiktok","duration":5,"model":"fast"}' # → 201 {"ok":true,"video":{"id":"aB3dE5fG7h","status":"queued","eta_seconds":30,...}} curl https://generatorvideo.ai/api/v1/videos/aB3dE5fG7h -H "Authorization: Bearer $GV_KEY" # → {"ok":true,"video":{"status":"done","video_url":"https://generatorvideo.ai/media/v/…/aB3dE5fG7h.mp4",...}}

Endpoints

MethodPathWhat it does
GET/api/v1/formatsFormats, models, styles, limits, price (no key needed)
GET/api/v1/meBalance, free videos, videos left
POST/api/v1/videosCreate a video (charges $1 or one free video)
GET/api/v1/videosList your videos (limit, cursor)
GET/api/v1/videos/{id}Status, URLs, queue position, ETA
POST/api/v1/videos/{id}Update: {"public": false}
POST/api/v1/videos/{id}/exportRe-render for another network: {"format":"youtube","mode":"fit|fill"}
DELETE/api/v1/videos/{id}Delete (queued videos are refunded)

Create parameters

FieldTypeNotes
promptstringRequired, 3–1500 chars. Any language.
formatstringtiktok, reels, shorts, youtube, x, square, portrait, pinterest, linkedin (default tiktok)
modelstringfast (Turbo) or quality (Pro)
durationint3–30 seconds (default 5). Free videos: 3, 5 or 8 s; longer clips are charged $1 from balance
audioboolGenerate synchronized sound (default true)
stylestringcinematic, photoreal, anime, 3d, clay, documentary, vhs, cyberpunk, watercolor, noir, drone, product
image_url / image_b64stringOptional first frame for image-to-video (JPG/PNG/WEBP ≤ 10 MB)
negative, seedstring, intOptional
publicboolShow in the public feed (default true)

Errors

401 invalid key · 402 insufficient_balance — top up · 422 validation or content policy · 429 rate limit (120 req/min). Failed renders are refunded automatically.

Python

import requests, time H = {"Authorization": "Bearer gv_..."} v = requests.post("https://generatorvideo.ai/api/v1/videos", headers=H, json={"prompt": "a cat dj in a neon club", "format": "reels"}).json()["video"] while v["status"] in ("queued", "running"): time.sleep(3) v = requests.get(f"https://generatorvideo.ai/api/v1/videos/{v['id']}", headers=H).json()["video"] print(v["video_url"])