Production API gateway for generative media

Cheap Video API for generative media.

Cheap Video API gives developers one standalone entry point for video, image, avatar, face, voice, upload, polling, and result delivery workflows through the same origin.

30+
Generation, editing, avatar, face, voice, and utility APIs.
6
Product categories for scanning capabilities quickly.
1
Same-origin gateway for browser and server clients.
0
GPU setup steps before your first generation request.

Model APIs ready for product teams.

Use these endpoints as building blocks for consumer apps, internal creative tools, automated content pipelines, and custom media workflows.

text-to-video

Video generation

Create cinematic video with Seedance, Veo, Kling, Grok, Wan, HappyHorse, Hailuo, and image-to-video workflows.

T2VI2VR2V
image-to-video

Image generation and edit

Generate, edit, and upscale images with Nano Banana, GPT Image, Flux, Wan image models, and utility upload APIs.

imageeditupscale
text-to-image

Avatar, face, and voice

Build avatar video, face swap, head swap, talking photo, talking video, dubbing, TTS, and voice clone products.

avatarfacevoice

Use the API from any client.

Send requests to this Worker origin. The gateway forwards /api/* to the configured API origin while preserving auth headers and request bodies.

POST/api/v1/seedance2Video/start

Submit text-to-video or image-to-video generation jobs.

GET/api/v1/seedance2Video/allRecords

List recent video jobs for the authenticated account.

POST/api/v1/userNanoBanana/start

Submit Nano Banana image generation or edit jobs.

POST/api/v1/veoVideo/start

Submit Veo video generation jobs.

POST/api/v1/headSwap/start

Create head swap jobs for images and videos.

POST/api/v1/r2/upload-presigned-url

Create presigned upload URLs for reference images and first frames.

curl -X POST "https://cheapvideoapi.com/api/v1/userNanoBanana/start" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Product concept",
    "prompt": "studio photo of a translucent orange running shoe",
    "model": "nano-banana-pro",
    "image_size": "2K",
    "aspect_ratio": "1:1"
  }'
const response = await fetch("/api/v1/seedance2Video/start", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    name: "Launch clip",
    prompt: "macro shot of a product reveal with clean motion",
    model_version: "standard",
    duration: 5,
    resolution: "720p",
    aspect_ratio: "16:9",
    generate_audio: true
  })
});

const result = await response.json();
const detail = await fetch("/api/v1/seedance2Video/batchDetail", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({ ids: ["JOB_ID"] })
});

const jobs = await detail.json();
const mediaUrl = jobs.data?.[0]?.url_show;

All API families in one catalog.

Use the start endpoint for generation, then list, detail, batch detail, or delete endpoints for lifecycle management where available.

Image & video generation

Image to VideoText to ImageNano BananaGPT ImageFlux 2Wan ImageWan Image to VideoHappyHorseSeedanceVeoGrokKlingKling OmniHailuo

Face & body

Face SwapHead SwapActor SwapTalking PhotoTalking VideoVirtual Try-OnMotion TransferProduct AvatarPhotobook

Avatar & video tools

Avatar VideoCustom AvatarsVideo TwinBackground MattingCaption RemovalUpscaleImage Edit

Voice, audio, and utilities

TTSVoice CloneAI DubbingThinkSoundUploadCreditsGoogle Login

A simple production workflow.

The gateway is designed around the common lifecycle for media generation: prepare assets, submit jobs, then poll until result URLs are ready.

1

Authenticate

Attach your API token in the Authorization header for generation, upload, list, detail, and delete requests.

2

Submit

Post a JSON payload to the video or image start endpoint. Upload reference assets first when a URL is required.

3

Poll results

Use batch detail endpoints to refresh job status and read final media URLs when jobs complete.