curl --request POST \
--url https://api.poyo.ai/api/generate/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "omni-flash",
"callback_url": "https://your-domain.com/callback",
"input": {
"prompt": "A cinematic macro shot of a glass marble rolling across a wet reflective table, realistic physics, slow camera push-in",
"resolution": "720p",
"duration": 6,
"aspect_ratio": "16:9"
}
}
'{
"code": 200,
"data": {
"task_id": "task-unified-1757165031-uyujaw3d",
"status": "not_started",
"created_time": "2026-06-03T10:30:00"
},
"message": "success"
}Google
Omni Flash
Text, image, and video input generation with Omni Flash
POST
/
api
/
generate
/
submit
curl --request POST \
--url https://api.poyo.ai/api/generate/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "omni-flash",
"callback_url": "https://your-domain.com/callback",
"input": {
"prompt": "A cinematic macro shot of a glass marble rolling across a wet reflective table, realistic physics, slow camera push-in",
"resolution": "720p",
"duration": 6,
"aspect_ratio": "16:9"
}
}
'{
"code": 200,
"data": {
"task_id": "task-unified-1757165031-uyujaw3d",
"status": "not_started",
"created_time": "2026-06-03T10:30:00"
},
"message": "success"
}- After submission, a
task_idwill be returned. If you provided acallback_url, PoYo sends a POST request when the task reachesfinishedorfailed. - You can always retrieve the latest result through the unified Query Task Status endpoint.
Omni Flash
omni-flash creates short videos from text prompts, optional image references, or an optional video reference.
Available Model
- omni-flash - Text-to-video, image-to-video, reference image fusion, and video-input generation
Required Parameters
- prompt: Text prompt describing the scene, motion, style, camera behavior, and other generation instructions
Optional Parameters
- image_urls: Image URL array. Allowed counts are
0,1, or3 - video_urls: Video URL array. At most
1video is allowed - resolution:
720p,1080p, or4k. Default is720p - duration:
4,6,8, or10seconds. Default is6. Do not provide this field whenvideo_urlsis provided - aspect_ratio:
16:9or9:16.16:9is landscape, and9:16is portrait. Default is16:9 - callback_url: Optional webhook URL for completion notifications
Input Modes
- Text to video: Send
promptonly, plus optionalresolution,duration, andaspect_ratio - Image to video: Send
promptand exactly one image inimage_urls - Reference image fusion: Send
promptand exactly three images inimage_urls - Video input: Send
promptand one video invideo_urls; omitduration
Billing
Requests without video input are billed by selected resolution and duration. Requests with video input are billed per generation by selected resolution.Notes
- Use public HTTPS image and video URLs, or upload files through the playground before submitting
image_urlswith two images is not supportedvideo_urlssupports at most one video- When
video_urlsis provided,durationmust be omitted - The response returns a
task_id; query task status to retrieve generated video files
Submit Examples
Text to Video
{
"model": "omni-flash",
"callback_url": "https://your-domain.com/callback",
"input": {
"prompt": "A cinematic macro shot of a glass marble rolling across a wet reflective table, realistic physics, slow camera push-in",
"resolution": "720p",
"duration": 6,
"aspect_ratio": "16:9"
}
}
Image to Video
{
"model": "omni-flash",
"input": {
"prompt": "Animate this product photo with a slow turntable motion, soft studio highlights, and subtle background parallax",
"image_urls": ["https://example.com/source-image.webp"],
"resolution": "720p",
"duration": 6,
"aspect_ratio": "16:9"
}
}
Three-Image Reference Fusion
{
"model": "omni-flash",
"input": {
"prompt": "Combine the character, outfit, and set references into a single fashion campaign clip with gentle camera drift",
"image_urls": [
"https://example.com/character.webp",
"https://example.com/outfit.webp",
"https://example.com/set.webp"
],
"resolution": "720p",
"duration": 8,
"aspect_ratio": "9:16"
}
}
Video Input
{
"model": "omni-flash",
"input": {
"prompt": "Use the reference motion as the timing guide and transform the final look into a clean cinematic product reveal",
"video_urls": ["https://example.com/reference-video.mp4"],
"resolution": "720p",
"aspect_ratio": "16:9"
}
}
Authorizations
All API endpoints require Bearer Token authentication
Get your API Key:
Visit the API Key Management Page to get your API Key
Add it to the request header:
Authorization: Bearer YOUR_API_KEY
Body
application/json
