Creates a new asynchronous video generation job using an OpenAI-compatible request format.

post/v1/videos

Request

  • Base URL
    https://api.llmgateway.io
  • Auth
    HTTP bearer

Request body

modelstring

The video generation model to use. Supports current Veo and Sora video models, including provider-prefixed variants like openai/sora-2 or google-vertex/veo-3.1-generate-preview.

promptstring required

Text prompt describing the video to generate.

sizestring

Output resolution in OpenAI widthxheight format. Supported values depend on the selected model and provider mapping.

callback_urlstring uri

LLMGateway extension. When set, a signed webhook is delivered after the job reaches a terminal state.

callback_secretstring

LLMGateway extension. Shared secret used to sign webhook deliveries with HMAC-SHA256.

secondsinteger required

Output duration in seconds. Supported values depend on the selected model and provider mapping.

audioboolean

Whether the generated video should include audio. Support depends on the selected model and provider mapping.

reasoning_effort'low' | 'high'

FLUX 3 Max reasoning effort. Defaults to high.

ninteger
video_task'edit' | 'extend'

LLMGateway extension. What to do with video: edit (default) changes the source and keeps its length, ignoring seconds; extend appends a seconds-long continuation.

Example request

{
  "model": "veo-3.1-generate-preview",
  "prompt": "A cinematic drone shot flying through a neon-lit futuristic city at night",
  "size": "1280x720",
  "callback_url": "https://example.com/webhooks/video",
  "callback_secret": "whsec_test_secret",
  "seconds": 8,
  "audio": true,
  "reference_images": [
    {
      "image_url": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."
    }
  ],
  "reference_videos": [
    {
      "video_url": "https://example.com/reference-motion.mp4"
    }
  ],
  "video_task": "extend",
  "reference_audios": [
    {
      "audio_url": "https://example.com/reference-track.mp3"
    }
  ]
}

Response

Video job created.

idstring required
object'video' required
modelstring required
status'queued' | 'in_progress' | 'completed' | 'failed' | 'canceled' | 'expired' required
progressinteger nullable required
created_atnumber required
completed_atnumber nullable required
expires_atnumber nullable required

Changes