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

# MiniMax H3 Max Image to Video

> Animate a starting frame with an optional ending frame.

<Tip>
  1. Submit the request with `VIDGO_API_KEY`. A `task_id` is returned. Keep it until the task reaches `finished` or `failed`.
  2. Use [Query Task Status](/api-manual/task-management/status) to retrieve the result. If you provide a `callback_url`, Vidgo sends the result to your webhook when the task finishes or fails.
</Tip>

## Usage Guide

Use `minimax/h3-max/image-to-video`. Provide `image_urls` in order: the starting frame first, then an optional ending frame. The output follows the starting image; omit `aspect_ratio`.

Set `model` and optional `callback_url` at the request root. Place generation parameters inside `input`.

## Parameter Details

* `prompt`: required non-empty string, up to 50,000 characters.
* `duration`: integer from 5 through 15 seconds; defaults to 5. Fractional durations are rejected.
* `resolution`: `480p`, `768p` or `1080p`; defaults to `768p`.
* `image_urls`: required array of 1-2 images, in starting-frame and ending-frame order. Use public HTTP(S) download URLs. Base64 is not supported.

## Optional parameters

* `enable_safety_checker`: boolean, defaults to `true`. Set `false` to disable it.
* `callback_url`: optional webhook URL at the request root. Query task status if you do not use a callback.


## OpenAPI

````yaml api-manual/video-series/minimax-h3-max-image-to-video.json POST /api/generate/submit
openapi: 3.0.0
info:
  title: Vidgo API - MiniMax H3 Max Image to Video
  description: Animate a starting frame with an optional ending frame.
  version: 1.0.0
servers:
  - url: https://api.vidgo.ai
    description: Production server
security:
  - BearerAuth: []
paths:
  /api/generate/submit:
    post:
      tags:
        - MiniMax H3 Max Image to Video
      summary: Submit MiniMax H3 Max Image to Video Task
      operationId: submitMinimaxH3MaxImageToVideoTask
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitRequest'
            examples:
              firstFrame:
                summary: Single starting frame
                value:
                  model: minimax/h3-max/image-to-video
                  input:
                    prompt: The camera glides forward
                    image_urls:
                      - https://example.com/start.jpg
              firstLastFrames:
                summary: Starting and ending frames
                value:
                  model: minimax/h3-max/image-to-video
                  callback_url: https://your-domain.com/callback
                  input:
                    prompt: Daylight turns into sunset
                    image_urls:
                      - https://example.com/start.jpg
                      - https://example.com/end.jpg
                    duration: 8
                    resolution: 1080p
                    enable_safety_checker: false
      responses:
        '200':
          description: Task submitted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitResponse'
              example:
                code: 200
                data:
                  task_id: task-unified-1787970600-abcd1234
                  status: not_started
                  created_time: '2026-08-29T10:30:00Z'
        '400':
          description: Invalid request parameters
        '401':
          description: Unauthorized
components:
  schemas:
    SubmitRequest:
      type: object
      required:
        - model
        - input
      additionalProperties: false
      properties:
        model:
          type: string
          example: minimax/h3-max/image-to-video
        callback_url:
          type: string
          format: uri
          description: Optional webhook callback URL.
        input:
          type: object
          required:
            - prompt
            - image_urls
          additionalProperties: false
          properties:
            prompt:
              type: string
              minLength: 1
              maxLength: 50000
              pattern: \S
              description: Non-empty prompt describing the target video.
            duration:
              type: integer
              minimum: 5
              maximum: 15
              default: 5
              description: Requested output duration in seconds.
            resolution:
              type: string
              enum:
                - 480p
                - 768p
                - 1080p
              default: 768p
              description: Output resolution.
            enable_safety_checker:
              type: boolean
              default: true
              description: Set false to disable the safety checker.
            image_urls:
              type: array
              minItems: 1
              maxItems: 2
              items:
                type: string
                format: uri
                pattern: ^https?://
                description: Publicly accessible HTTP(S) download URL.
              description: >-
                Starting frame followed by an optional ending frame. Public
                HTTP(S) URLs only.
    SubmitResponse:
      type: object
      required:
        - code
        - data
      properties:
        code:
          type: integer
          example: 200
        data:
          type: object
          required:
            - task_id
            - status
            - created_time
          properties:
            task_id:
              type: string
            status:
              type: string
              enum:
                - not_started
                - running
                - failed
            created_time:
              type: string
              format: date-time
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: 'Use `Authorization: Bearer VIDGO_API_KEY`.'

````

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