> ## Documentation Index
> Fetch the complete documentation index at: https://docs.linkmodel.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# gemini-omni-1.2-flash

> A video generation and editing model from Google, supporting clips up to 15 seconds with synchronized audio, multimodal references, conversational edits, and extension for product videos, ads, and social content.



## OpenAPI

````yaml /openapi/video/gemini-omni-1-2-flash.yaml post /videos/generations
openapi: 3.0.3
info:
  title: gemini-omni-1.2-flash
  version: 1.0.0
  description: >-
    A video generation and editing model from Google, supporting clips up to 15
    seconds with synchronized audio, multimodal references, conversational
    edits, and extension for product videos, ads, and social content.
  x-linkmodel-sort-weight: 99202611059
servers:
  - url: https://api.linkmodel.ai/v1
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Google
  - name: video
paths:
  /videos/generations:
    post:
      tags:
        - Google
        - video
      summary: gemini-omni-1.2-flash
      description: >
        A video generation and editing model from Google, supporting clips up to
        15 seconds with synchronized audio, multimodal references,
        conversational edits, and extension for product videos, ads, and social
        content.


        |   |   |

        | --- | --- |

        | **Provider** | Google |

        | **Tasks** | text-to-video · image-to-video |

        | **Starting from** | 1.5 USD / 1M tokens · <a
        href="https://linkmodel.ai/en/models/gemini-omni-1.2-flash"
        target="_blank" rel="noopener">Pricing details</a> |


        ## Task lifecycle


        This endpoint creates an asynchronous task. Poll `GET
        /videos/generations/{task_id}` with the returned `task_id` until the
        task reaches a terminal state.


        If the POST request times out or its result is uncertain, do not blindly
        retry it. The original request may already have created another task and
        billing order.


        Completed asset URLs are dynamically signed. Download or copy assets
        that must be retained instead of treating the URLs as permanent
        identifiers.
      operationId: gemini-omni-1-2-flash
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                model:
                  type: string
                  enum:
                    - gemini-omni-1.2-flash
                  description: 'Must be one of: gemini-omni-1.2-flash.'
                duration:
                  type: integer
                  default: 5
                  minimum: 3
                  maximum: 15
                  description: >-
                    3–10 seconds for interpolation and extend. Omit for edit,
                    upscale, or automatic mode with videos. Defaults to `5`.
                resolution:
                  type: string
                  enum:
                    - 1080P
                    - 360P
                    - 4K
                    - 720P
                  default: 720P
                  description: >-
                    Upscale requires an explicit 720P, 1080P or 4K target.
                    Defaults to `720P`.
                size:
                  type: string
                  enum:
                    - 16x9
                    - 9x16
                  default: 16x9
                  description: >-
                    Omit for edit, extend, upscale, or automatic mode with
                    videos. Defaults to `16x9`.
                extends.omni.task:
                  type: string
                  enum:
                    - edit
                    - extend
                    - image_to_video
                    - reference_to_video
                    - text_to_video
                    - upscale
                  description: Leave unset for automatic mode.
                first_frame_image:
                  type: string
                  description: First frame URL or Base64 data URI.
                last_frame_image:
                  type: string
                  description: 'This field''s allowed values depend on: first_frame_image.'
                image_list:
                  type: array
                  maxItems: 10
                  items:
                    type: string
                  description: >-
                    Edit and extend accept at most two references. Upscale
                    accepts none.
                video_list:
                  type: array
                  maxItems: 3
                  items:
                    type: string
                  description: Edit, extend, and upscale require one source video.
                seed:
                  type: integer
                prompt:
                  type: string
                  minLength: 1
                  description: Required except in upscale mode.
              required:
                - model
      responses:
        '200':
          description: >-
            Business response. `code=0` means the task was accepted; validation
            failures can return HTTP 200 with `code=400`.
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    required:
                      - code
                      - data
                      - msg
                    properties:
                      code:
                        type: integer
                        enum:
                          - 0
                        example: 0
                      data:
                        type: object
                        required:
                          - task_id
                        properties:
                          task_id:
                            type: string
                            description: Use this id to poll task status.
                            example: aurora_abc123
                          order_id:
                            type: string
                            description: Billing order id.
                            example: 019da9cf-d1db-78e1-ac23-526774d01193
                          status:
                            type: string
                            example: Processing
                          price:
                            type: number
                            description: Charged amount in the model's pricing currency.
                            example: 0.074
                      msg:
                        type: string
                        example: success
                      request_id:
                        type: string
                        format: uuid
                        example: 250b66dd-e1fb-4bb6-b5f6-c668efadc35d
                  - type: object
                    required:
                      - code
                      - msg
                    properties:
                      code:
                        type: integer
                        enum:
                          - 400
                        example: 400
                      data:
                        type: object
                        example: {}
                      msg:
                        type: string
                        example: model is required
                      request_id:
                        type: string
                        format: uuid
                        example: 96be7a7d-3e81-4916-a6b8-19b32773a693
        '400':
          description: >-
            Malformed HTTP request rejected by the Gateway. Model and parameter
            validation may instead use HTTP 200 with business `code=400`.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 400
                  msg:
                    type: string
                    example: task_id is required
                  request_id:
                    type: string
                    format: uuid
                    example: 96be7a7d-3e81-4916-a6b8-19b32773a693
        '401':
          description: Unauthorized — missing or invalid API key.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 401
                  data:
                    type: object
                    example: {}
                  msg:
                    type: string
                    example: invalid api key
                  request_id:
                    type: string
                    format: uuid
                    example: bff4c295-c7da-4507-9708-4627cb6373ba
        '500':
          description: Internal error — task creation failed (e.g. insufficient balance).
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 500
                  msg:
                    type: string
                    example: >-
                      create task failed: billing: code=100601: insufficient
                      balance
                  request_id:
                    type: string
                    format: uuid
                    example: 3409f6fb-fa9a-4534-b530-195b5f6f4e32
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.