APIMaster.ai

Gemini Omni 1.2 Flash — Параметры и ограничения

Контракт APIMaster для gemini-omni-1.2-flash проверен 2026-11-07. Это API шлюза, а не нативный Google Interactions API. Правила Official/Ext модели 1.1 здесь не применяются.

Gemini Omni 1.2 Flash

Контракт APIMaster для gemini-omni-1.2-flash проверен 2026-11-07. Это API шлюза, а не нативный Google Interactions API. Правила Official/Ext модели 1.1 здесь не применяются.

OpenAPI 3.1 · Gemini Omni 1.2 Flash

Маршруты и авторизация

Текущий публичный маршрут — канал 335. Используйте Authorization: Bearer YOUR_API_KEY и Content-Type: application/json. Обычные ограничения ключа по модели, группе, балансу и доступности маршрута сохраняются; отдельного опубликованного списка допуска клиентов нет. Не добавляйте номер канала к ID модели. Отдельного маршрута Ext для 1.2 нет; наличие модели в списке не означает доступ ко всем возможностям Google.

  • POST https://apimaster.ai/v1/videos
  • POST https://apimaster.ai/v1/videos/generations
  • GET https://apimaster.ai/v1/videos/{task_id}
  • GET https://apimaster.ai/v1/videos/{task_id}/content
  • GET https://apimaster.ai/v1/video-submissions/by-key
  • GET https://apimaster.ai/api/log/token

Параметры и ограничения

Поле Тип Правило
model string Точный публичный ID модели.
prompt string Непустая инструкция обязательна во всех режимах, включая редактирование и продолжение.
duration integer По умолчанию 10; обычная генерация 3–15 целых секунд; интерполяция и новый сегмент продолжения 3–10. При редактировании игнорируется.
seconds integer / string Совместимый псевдоним duration; целое число или строка с целым числом. Если переданы оба поля, duration имеет приоритет.
resolution string 360p / 720p (по умолчанию) / 1080p / 4k, без учёта регистра; 2160p означает 4k. 1080p и 4k получаются повышением разрешения.
aspect_ratio string 16:9 по умолчанию или 9:16. Другие строки сейчас приводятся к 16:9; передавайте только поддерживаемые значения.
ratio string Устаревший псевдоним соотношения сторон, не разрешения; предпочтительно aspect_ratio.
size string Устаревший псевдоним соотношения сторон. Приоритет: aspect_ratio, ratio, size.
image_urls string[] Публичные HTTP(S) ссылки на изображения; одно изображение по умолчанию задаёт начальный кадр, несколько — референсы.
first_frame_image string Публичная ссылка на первый кадр.
last_frame_image string Требует first_frame_image; пропорции кадров должны соответствовать выходному видео.
image_with_roles object[] Альтернатива отдельным полям кадров. Элемент содержит url и непустой role; first_frame/last_frame обозначают кадры, остальные роли — референсы. Последний кадр требует первого.
video_urls string[] Не более одного публичного видео длительностью до 15 секунд. По умолчанию выполняется редактирование.
omni_reference_task_type string auto, edit, extend, reference, text_to_video, image_to_video, reference_to_video. Для продолжения явно задайте extend.
extend_from_task_id string Ваш успешно завершённый публичный task_... этой модели; несовместим с video_urls. Исходный канал и аккаунт поставщика должны оставаться доступными. Это не Google interaction ID.

Всего допускается не более 10 изображений, включая кадры. Используйте либо image_with_roles, либо отдельные поля кадров. Рекомендация поставщика для персонажей: до двух персонажей и трёх изображений каждого. Допустимы публичные прямые HTTP(S) ссылки; Base64, Data URL и multipart не поддерживаются. Проверялись PNG/JPEG и MP4. Анализ длительности совместим с MP4/MOV и читает не более 100 MiB; это предел чтения, а не гарантированный лимит загрузки поставщика. Полный список кодеков, лимит размера отдельного изображения и остальные ограничения размера не опубликованы.

Аудиореференсы, audio_urls, состояние Google interaction/conversation, metadata, generation_type, system_prompt, temperature, negative_prompt, seed, fps и n не поддерживаются. Описывайте отрицательные требования и желаемый звук в prompt. Допускается цепочка завершённых публичных задач, но каждая новая ссылка на видео ограничена 15 секундами; нативной многоходовой сессии Google нет. Неизвестные поля верхнего уровня отклоняются.

Примеры JSON без выполнения

Это только тела запросов: они ничего не выполняют. Замените example.com и фиктивные ID своими данными. Каждый новый запрос получает новый ключ; при повторе той же операции сохраняйте ключ и тело. Для следующего хода используйте публичный ID завершённой дочерней задачи. Аудиовход не поддерживается, поэтому корректного аудиопримера нет.

1. text_to_video

{"model":"gemini-omni-1.2-flash","prompt":"A blue glass sphere rolls slowly across a plain gray table.","duration":3,"resolution":"360p","aspect_ratio":"16:9"}

2. reference_to_video

{"model":"gemini-omni-1.2-flash","prompt":"Animate these geometric references while preserving their shapes and colors.","image_urls":["https://example.com/reference-a.png","https://example.com/reference-b.png"],"omni_reference_task_type":"reference","duration":6,"resolution":"720p","aspect_ratio":"16:9"}

3. first_frame_image / last_frame_image

{"model":"gemini-omni-1.2-flash","prompt":"Make a smooth transition from the first view to the last view.","first_frame_image":"https://example.com/first.png","last_frame_image":"https://example.com/last.png","duration":6,"resolution":"720p","aspect_ratio":"16:9"}

4. image_with_roles

{"model":"gemini-omni-1.2-flash","prompt":"Make a smooth transition between these views.","image_with_roles":[{"url":"https://example.com/first.png","role":"first_frame"},{"url":"https://example.com/last.png","role":"last_frame"}],"duration":6,"resolution":"720p"}

5. edit / video_urls

{"model":"gemini-omni-1.2-flash","prompt":"Change the lighting to sunset while preserving the scene.","video_urls":["https://example.com/input.mp4"],"omni_reference_task_type":"edit","resolution":"720p"}

6. extend / video_urls

{"model":"gemini-omni-1.2-flash","prompt":"Continue the camera movement for three more seconds.","video_urls":["https://example.com/input.mp4"],"omni_reference_task_type":"extend","duration":3,"resolution":"720p"}

7. extend / extend_from_task_id

{"model":"gemini-omni-1.2-flash","prompt":"Continue the previous scene with a gentle camera pan.","extend_from_task_id":"task_YOUR_COMPLETED_TASK","omni_reference_task_type":"extend","duration":3,"resolution":"720p"}

8. edit / extend_from_task_id

{"model":"gemini-omni-1.2-flash","prompt":"Keep the scene but turn the blue sphere yellow.","extend_from_task_id":"task_YOUR_COMPLETED_TASK","omni_reference_task_type":"edit","resolution":"720p"}

Задача, опрос и загрузка

Первый принятый POST возвращает HTTP 200 и queued. Опрос каждые 5–10 секунд: queued → in_progress → completed/failed; также обрабатывайте переходное unknown. URL результата и metadata.url — защищённые прокси платформы: загружайте с Bearer-ключом. Ошибка генерации обычно возвращается при опросе с HTTP 200 и error.code=generation_failed; сообщение очищено от секретных данных. Ошибки отправки используют HTTP 4xx/5xx. Тайм-аут или 5xx не доказывают, что запрос не принят. Ниже приведена структура ответа с заменёнными ID и временем.

{"id":"task_REDACTED_EXAMPLE","task_id":"task_REDACTED_EXAMPLE","object":"video","model":"gemini-omni-1.2-flash","status":"queued"}
{"id":"task_REDACTED_COMPLETED_EXAMPLE","task_id":"task_REDACTED_COMPLETED_EXAMPLE","object":"video","model":"gemini-omni-1.2-flash","status":"completed","progress":100,"created_at":1793966808,"url":"https://apimaster.ai/v1/videos/task_REDACTED_COMPLETED_EXAMPLE/content","metadata":{"url":"https://apimaster.ai/v1/videos/task_REDACTED_COMPLETED_EXAMPLE/content"}}
{"id":"task_REDACTED_FAILED_EXAMPLE","task_id":"task_REDACTED_FAILED_EXAMPLE","object":"video","model":"gemini-omni-1.2-flash","status":"failed","progress":100,"created_at":1793966808,"error":{"code":"generation_failed","message":"The generation request failed."}}

Использование, окончательная стоимость и возвраты

Опрос задачи не гарантирует usage, разбивку модальностей или USD. Итоговый клиентский расход после сверки — other.final_amount_usd в журнале потребления. GET /api/log/token с тем же ключом возвращает ограниченный список последних записей этого ключа, не архив счетов. Для истории всего аккаунта нужен вход в аккаунт и GET /api/log/self; ключ генерации не заменяет такую авторизацию. Разберите строку other как JSON и сопоставьте other.task_id. При наличии фактических данных доступны prompt_tokens, completion_tokens и other.input_tokens, text_output_tokens, video_output_tokens, token_usage_source, retail_token_prices, group_ratio. Входные токены агрегированы, отдельная разбивка текста/изображений/видео не гарантируется.

На 2026-11-07 базовые клиентские ставки канала 335: $1.32 за вход, $7.92 за текстовый выход, $10.56 за видеовыход на миллион токенов, до индивидуальных коэффициентов. Текущие ставки проверяйте в карточке. При отправке резервируется оценка; затем фактические данные и зафиксированные ставки определяют доплату или возврат. Подтверждённая неудачная генерация возвращает резерв; неизвестное принятие не означает немедленный возврат. 500,000 quota = USD 1. Не считайте начальный резерв итогом и не суммируйте окончательную сумму повторно с корректирующими записями. Исторический пример: вход 39, текстовый выход 0, видеовыход 5793, итог $0.064286 — не обещание цены нового запроса.

USD = (input_tokens × input_rate
     + text_output_tokens × text_output_rate
     + video_output_tokens × video_output_rate) / 1,000,000

Продолжение оплачивает видеовыход нового сегмента плюс входное исходное видео; возвращаемый MP4 содержит обе части. Проверялось продолжение 3-секундного ролика ещё на 3 секунды: файл около 6 секунд, выходные токены соответствуют новым 3 секундам. Звук сгенерированного видео входит в видеовыход. При отсутствии текстовой детализации текущий парсер считает сообщённый выход видеовыходом. При отсутствии корректной статистики токенов возможен расчёт по достоверной квитанции поставщика: token_usage_source=provider_cost_receipt, без вымышленных счётчиков. Если нет ни статистики, ни стоимости, сверка продолжается. Полные счётчики и фиксированный срок окончательного расчёта не гарантируются.

Идемпотентность шлюза и восстановление

Idempotency-Key содержит 8–128 видимых ASCII-символов без пробелов; поля в теле нет. Ключ изолирован аккаунтом. Один и тот же запрос с тем же ключом получает HTTP 202 и Idempotency-Replayed:true без второй генерации или списания; изменение тела, группы либо явного маршрута даёт 409 idempotency_conflict. Порядок ключей JSON не важен; порядок массивов, изменённые значения и пропущенные/явные значения по умолчанию важны. При обрыве соединения шлюз по возможности завершает уже начатую ограниченную попытку и сохранение результата.

{"code":200,"data":{"submission_id":"REDACTED_SUBMISSION_ID","task_id":"task_REDACTED_EXAMPLE","model":"gemini-omni-1.2-flash","status":"accepted","task_ready":true,"same_key_replay_safe":true,"new_submission_safe":false,"next_action":"query_task"}}

GET /v1/video-submissions/by-key с исходным заголовком и Bearer-ключом только читает квитанцию: не вызывает генератор, не ищет задачу у поставщика и не перемещает деньги. pending/submitting: продолжайте читать; accepted с task_ready=true: опрашивайте task_id; accepted без готовой задачи: ожидайте сверки или обращайтесь в поддержку; acceptance_unknown: не отправляйте заново, сохраните ключ и ссылку поддержки; not_accepted: исправляйте подтверждённую ошибку и используйте новый ключ только когда это допускает состояние квитанции и средств. Старый ключ всегда воспроизводит прежний результат. 404 с retry_safe=false не доказывает непринятие. Записи хранятся минимум 30 дней без автоматического повторного использования ключей. Без клиентского ключа повторный POST — новая операция. Это идемпотентность шлюза, не нативная идемпотентность Google/APIMart. Неопределённые отправки автоматически не повторяются; подтверждённые и финансово зафиксированные записи можно восстановить без новой генерации и списания.

Ограничения возможностей и оценка стоимости

POST /v1/videos/quote НЕ поддерживает эту модель: текущая проверка рассчитана на Seedance. Для Omni нет поддерживаемой бесплатной оценки без создания задачи/вызова генератора и нет отдельного контракта invoice или /v1/videos/{task_id}/billing. Ограничения поставщика по модерации и регионам сохраняются; для EEA, Швейцарии и Великобритании документированы ограничения редактирования/продолжения загруженных видео. Полная схема шлюза связана ниже; примеры нативного поставщика не заменяют публичные ID, ответы и журналы APIMaster.

APIMart · Gemini Omni 1.2 Flash