APIMODELSAPIMODELS
Документация API

apimodels.app

Gemini Omni 1.2 Flash video API

Google's Omni video model released on 5 November 2026: clips up to 15 seconds, closer adherence to reference images, clearer lip-synced speech. One model id with three input modes chosen by the fields you send — a prompt alone is text-to-video; images (up to 3) is reference-to-video; first_frame_url, optionally with last_frame_url, anchors the shot. Output is 720p or 1080p, 16:9 or 9:16, with synced audio. Billed per output second, 36–50% below Google's official rate.

Pricing (per output second)

Resolutionapimodels.appGoogle official8-second clip15-second clip
720p$0.045/s$0.07/s$0.36$0.675
1080p$0.052/s$0.104/s$0.416$0.78

You pay for the duration you request. 4K and 360p are not offered on this model here. Only delivered videos are charged; failures and safety rejections are not.

Create a task

POST /api/v1/video/generations — async: create, then poll the same endpoint (or pass callback_url), same flow as the rest of the video family.

# 1) Text-to-video — a prompt alone
curl -X POST https://api.apimodels.app/v1/video/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-omni-1.2-flash",
    "prompt": "a street food stall at night, steam rising, handheld camera pushing in, a vendor says: two more minutes!",
    "duration": 12,
    "resolution": "720p",
    "aspect_ratio": "16:9"
  }'

# 2) Reference images — up to 3 (a character, a product, a style)
curl -X POST https://api.apimodels.app/v1/video/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-omni-1.2-flash",
    "prompt": "the woman from the first image unboxes the sneaker from the second image in a sunny studio",
    "images": ["https://example.com/person.jpg", "https://example.com/sneaker.jpg"],
    "duration": 8,
    "resolution": "1080p",
    "aspect_ratio": "9:16"
  }'

# 3) First / last frame — anchor the opening (and optionally the closing) frame; 3-10 s with both
curl -X POST https://api.apimodels.app/v1/video/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-omni-1.2-flash",
    "prompt": "the product slowly rotates while the lighting shifts from cool to warm",
    "first_frame_url": "https://example.com/first.jpg",
    "last_frame_url": "https://example.com/last.jpg",
    "duration": 6
  }'

# Poll (shared with the rest of the video family)
curl "https://api.apimodels.app/v1/video/generations?task_id=TASK_ID" \
  -H "Authorization: Bearer YOUR_API_KEY"

Request parameters

FieldRequiredTypeDescription
modelYesstring"gemini-omni-1.2-flash"
promptYesstringScene, action, camera, style and audio direction (dialogue, music, ambience)
durationNonumberAny whole number of seconds from 3 to 15 (default 8); 3 to 10 when both first_frame_url and last_frame_url are set. "seconds" is accepted as an alias
resolutionNostring"720p" (default) or "1080p". 4K and 360p are not available on this model here
aspect_ratioNostring"16:9" (default) or "9:16"
imagesNoarrayReference images (URL or base64), up to 3 → reference-to-video. image_urls / reference_image_urls are accepted aliases. Cannot be combined with first_frame_url
first_frame_urlNostringFirst frame (URL or base64) → the clip opens on this image. Cannot be combined with reference images
last_frame_urlNostringLast frame; requires first_frame_url — the model moves from the first frame to this one. Limits duration to 10 seconds
callback_urlNostringWebhook URL called when the task completes

Limits and notes

  • Not supported on this model here, and rejected with a 400 at creation (not charged): video input (video_list / video_url), audio_ids, character_ids, seed, 4K, 360p, aspect ratios other than 16:9 / 9:16, more than 3 reference images, a last frame without a first frame, and a first frame together with reference images.
  • Need video editing, 4K, more than 3 reference images or saved voices and characters? Gemini Omni 1.1 Flash still offers those — same request shape, change the model string.
  • Success is not 100%. Upstream safety filters can reject a prompt or an image, and the model can be temporarily unavailable; failed requests are never charged. If the primary upstream channel is unavailable, the request switches automatically to a second channel at the same price.
  • Result files are auto-deleted after 30 days — download promptly. Generation takes roughly 1-3 minutes; poll every 10 seconds.

Related

FAQ

How much does the Gemini Omni 1.2 Flash API cost on apimodels.app?

gemini-omni-1.2-flash is billed per requested second: 720p $0.045/s and 1080p $0.052/s, against Google's official $0.07 and $0.104. An 8-second 720p clip is $0.36 and a 15-second 1080p clip is $0.78. Failed generations are not charged.

What durations, resolutions and inputs does gemini-omni-1.2-flash support?

duration is any whole number of seconds from 3 to 15 (3 to 10 when both first_frame_url and last_frame_url are set); resolution is 720p or 1080p; aspect_ratio is 16:9 or 9:16. Send a prompt alone for text-to-video, images (up to 3) for reference-to-video, or first_frame_url with an optional last_frame_url. Reference images cannot be combined with a first frame; video input, 4K and 360p are not available on this model here.