# Veo3 Async Generation

## OpenAPI Specification

```yaml
openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /v1/videos:
    post:
      summary: Veo3 Async Generation
      deprecated: false
      description: >-
        ## Overview

        You can use the current API to perform video generation tasks with the
        self-developed asynchronous format of the Veo3 model. This API will
        return a `video_id`. After creating a video through this API, you can
        retrieve it using [Veo3
        Retrieve](https://apidoc.cometapi.com/veo/self-developed/retrive-video).


        ## ⚠️ Important Notes


        This API is implemented through our self-developed technology with the
        following limitations:


        - **Video duration is fixed at 8 seconds** and cannot be customized

        - Please contact technical support if you encounter any issues


        ---


        ## Supported Models


        | Model | Image Input | Description |

        |-------|-------------|-------------|

        | `veo3.1` | First + Last frame | Supports start/end frame control |

        | `veo3.1-pro` | First + Last frame | Supports start/end frame control |

        | `veo3` | First + Last frame | Supports start/end frame control |


        ---


        ## Image Upload Methods


        Images are passed via `form-data` format using the `input_reference`
        parameter:


        - **File Upload**: Upload the image file directly

        - **URL Reference**: Provide a publicly accessible image URL


        > **Note**: To specify first and last frames, simply upload
        `input_reference` twice in order (first frame first, last frame second).


        ### Example Request


        ```bash

        curl -X POST https://api.cometapi.com/v1/videos \
          -H "Authorization: Bearer $COMETAPI_KEY" \
          -F "model=veo3.1" \
          -F "prompt=A whimsical flying elephant soaring over a vibrant candy-colored cityscape" \
          -F "size=16x9" \
          -F "input_reference=@first_frame.png" \
          -F "input_reference=@last_frame.png"
        ```
      tags:
        - 📺 Video Models/veo3/self-developed
      parameters:
        - name: Authorization
          in: header
          description: ''
          required: false
          example: '{{api-key}}'
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                prompt:
                  description: >-
                    Text prompts for generating videos, describing direct
                    parameter passing for landscape and portrait orientation.
                  example: >-
                    A whimsical flying elephant soaring over a vibrant
                    candy-colored cityscape at sunset, with rainbow trails
                    behind its wings, playful monkeys riding on its back
                    throwing confetti, in a whimsical animated style like a
                    Pixar movie, camera panning smoothly from ground level to
                    aerial view,
                  type: string
                model:
                  type: string
                  enum:
                    - veo3.1
                    - veo3.1-pro
                    - veo3-pro
                    - veo3-fast
                    - veo3
                  x-apidog-enum:
                    - value: veo3.1
                      name: ''
                      description: ''
                    - value: veo3.1-pro
                      name: ''
                      description: ''
                    - value: veo3-pro
                      name: ''
                      description: ''
                    - value: veo3-fast
                      name: ''
                      description: ''
                    - value: veo3
                      name: ''
                      description: ''
                  description: The video generation model to be used defaults to veo3.1.
                  example: veo3.1
                size:
                  description: >-
                    Width x height, specific data will be ignored. If width >
                    height, it’s landscape; if width < height, it’s portrait.
                  example: 16x9
                  type: string
                input_reference:
                  format: binary
                  type: string
                  description: Reference image file
                  example: ''
              required:
                - prompt
            examples: {}
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
              example:
                created_at: 1764905797
                id: veo3.1:1764905797-816jUFZAkM
                model: veo3.1
                object: video
                progress: 0
                seconds: '4'
                size: 1280x720
                status: queued
          headers: {}
          x-apidog-name: Success
      security: []
      x-apidog-folder: 📺 Video Models/veo3/self-developed
      x-apidog-status: released
      x-run-in-apidog: https://app.apidog.com/web/project/810968/apis/api-25206937-run
components:
  schemas: {}
  securitySchemes: {}
servers:
  - url: https://api.cometapi.com
    description: Prod Env
security: []

```
