Create a new video generation job from a text query.
POST /api/v1/generate
X-API-Key (string, required) — Your API keyquery (string, required) — Text query for video generation (5-5000 chars). Queries longer than 500 chars are automatically summarized.orientation (string, default: "landscape") — Video orientation: "landscape" (16:9) or "portrait" (9:16)language (string, default: "english") — Narration language: "english", "hindi", "en", or "hi"duration (integer, default: 2) — Video duration in minutes: 1, 2, or 3mode (string, default: "video") — "video" generates a video, "text" returns an instant text response onlychat_id (string, optional) — Associate this job with an existing chat session. If omitted, a new chat is created.images (string[], optional) — Base64-encoded images (data:image/png;base64,...). Max 5 images, 10MB each.200 OK{
"job_id": "abc123-def456-ghi789",
"chat_id": "chat_xyz789",
"status": "processing",
"message": "Video generation started",
"video_url": null,
"duration": null,
"cached": false,
"instant_response": null,
"images_metadata": null
}If the query matches a previously generated video, the response returns immediately with cached: true and a video_url.
job_id (string) — Unique job identifier. Use this to track progress.chat_id (string or null) — Chat session ID for follow-up messages.status (string) — Job status: "processing", "completed", "cached".message (string) — Human-readable status message.video_url (string or null) — Video URL (populated immediately if cached).duration (integer or null) — Video duration in seconds (if cached).cached (boolean) — true if the result was served from cache.instant_response (object or null) — Instant educational content (if available from cache).images_metadata (object or null) — Metadata about processed images.After receiving the job_id, track progress using either: