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

# Create Gemini Omni Video

> 创建 Gemini Omni 视频生成任务。任务创建后，请使用通用视频任务查询接口获取生成状态和结果。

<Note>
  After creation, the response returns a `task_id`. Use the [Query Video Task](/en/api-reference/common/query) endpoint to poll task status and read the final video URL from `result.video_url`.
</Note>

## Supported models

| model          | Notes                                                           |
| -------------- | --------------------------------------------------------------- |
| `Gemini-Omini` | Standard Gemini Omni — 4/6/8/10s with 720p/1080p/4k             |
| `omni-10s`     | Fixed 10s, 720p, up to 7 reference images (image or video URLs) |

Aliases such as `Omni-Flash-Ext` and `gemini-omni` normalize to `Gemini-Omini`.

## Reference Video & Generation Modes

The standard version of `Gemini-Omini` supports the following advanced parameters to enable video reference and custom modes:

* `generation_type` (string): Generation mode, supporting `frame` (first-frame mode, where `image_urls` can only take 1 image as the first frame of the video) or `reference` (reference mode, where `image_urls` can accept 1 or 3 reference images). Defaults to `reference`.
* `video_urls` (array): A list of reference video URLs (currently supports up to 1 video). **Note: `duration` is not required when uploading a reference video, and `duration` and `video_urls` cannot be passed at the same time.**

## omni-10s example

```bash theme={null}
curl -X POST 'https://www.jimmyai.cn/api/open-api/v1/gemini/omni/videos' \
  -H 'Authorization: Bearer sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "omni-10s",
    "prompt": "Character from the reference runs through a cyberpunk street, cinematic tracking shot",
    "aspect_ratio": "16:9",
    "image_urls": ["https://example.com/ref1.jpg"]
  }'
```

For `omni-10s`, `duration` and `resolution` in the request are ignored; billing uses the `omni-10s` model config (10s, 720p).


## OpenAPI

````yaml POST /api/open-api/v1/gemini/omni/videos
openapi: 3.1.0
info:
  title: Jimmy AI OpenAPI
  description: API for Jimmy AI video generation services
  version: 1.0.0
servers:
  - url: https://www.jimmyai.cn
    description: Production server
security:
  - bearerAuth: []
paths:
  /api/open-api/v1/gemini/omni/videos:
    post:
      summary: Create Gemini Omni Video Task
      description: >-
        Create a Gemini Omni video generation task. After the task is created,
        use the common video task query endpoint to retrieve status and results.
      operationId: createGeminiOmniVideo
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GeminiOmniGenerationRequest'
      responses:
        '200':
          description: Task created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VideoGenerationResponse'
components:
  schemas:
    GeminiOmniGenerationRequest:
      type: object
      required:
        - model
        - prompt
      properties:
        model:
          type: string
          enum:
            - Gemini-Omini
            - Omni-Flash-Ext
            - gemini-omni
            - omni-10s
          description: >-
            Model name. Gemini-Omini, Omni-Flash-Ext, and gemini-omni normalize
            to Gemini-Omini; omni-10s is a fixed 10s model (720p, up to 7
            reference images).
        prompt:
          type: string
          description: Text prompt for video generation
        duration:
          type: integer
          default: 6
          description: >-
            Video duration in seconds. Default: 6. Only supports: 4, 6, 8, 10.
            Note: duration is not required when uploading a reference video, and
            duration and video_urls cannot be passed at the same time.
        resolution:
          type: string
          default: 720p
          enum:
            - 720p
            - 1080p
            - 4k
          description: Video resolution. Defaults to 720p.
        aspect_ratio:
          type: string
          description: >-
            Video aspect ratio, for example 16:9 or 9:16. Takes precedence over
            orientation.
        orientation:
          type: string
          enum:
            - landscape
            - portrait
          description: >-
            Video orientation. Used only when aspect_ratio is empty: landscape
            maps to 16:9, portrait maps to 9:16.
        image_urls:
          type: array
          items:
            type: string
          description: Reference image URL list. omni-10s supports up to 7 images.
        images:
          type: array
          items:
            type: string
          description: >-
            Compatibility field for common OpenAPI image inputs; used when
            image_urls is empty. omni-10s supports up to 7 images.
        generation_type:
          type: string
          default: reference
          enum:
            - frame
            - reference
          description: >-
            Generation type. frame: first frame mode (image_urls can only accept
            1 image as the first frame of the video); reference: reference mode
            (image_urls can accept 1 or 3 images as style/subject reference).
            Defaults to reference.
        video_urls:
          type: array
          items:
            type: string
          description: >-
            Reference video URL list (currently supports up to 1 video). Note:
            duration is not required when uploading a reference video, and
            duration and video_urls cannot be passed at the same time.
      example:
        model: Gemini-Omini
        prompt: >-
          A cat running through a neon rainy street, cinematic low-angle
          tracking shot
        duration: 6
        resolution: 720p
        aspect_ratio: '16:9'
        generation_type: reference
        image_urls: []
        video_urls: []
    VideoGenerationResponse:
      type: object
      properties:
        code:
          type: string
          example: '20000'
        msg:
          type: string
          example: ok
        data:
          type: object
          properties:
            task_id:
              type: string
            status:
              type: string
            model:
              type: string
            created_at:
              type: integer
              format: int64
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````