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

# Minimax H3 Image-to-Video 이미지-비디오

> - `image_start` 또는 `image_end` 중 하나 이상 필요; 첫 프레임만, 마지막 프레임만, 둘 다 지원
- 출력 길이 `5`–`15`초, 현재 `2k`만 지원
- 입력 이미지가 비율을 결정하며 `aspect_ratio`는 `adaptive`로 처리
- 작업 ID로 [상태 조회](/ko/api-manual/task-management/get-task-detail)
- 생성 URL은 24시간 동안 유효합니다



## OpenAPI

````yaml ko/api-manual/video-series/minimax/minimax-h3-image-to-video.json POST /v1/videos/generations
openapi: 3.1.0
info:
  title: Minimax H3 Image-to-Video API
  description: 첫 프레임, 마지막 프레임 또는 둘 다 지원하는 Minimax H3 Image-to-Video API
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.evolink.ai
    description: 프로덕션 환경
security:
  - bearerAuth: []
tags:
  - name: 비디오 생성
    description: AI 비디오 생성 관련 API
paths:
  /v1/videos/generations:
    post:
      tags:
        - 비디오 생성
      summary: Minimax H3 Image-to-Video 이미지-비디오
      description: |-
        - `image_start` 또는 `image_end` 중 하나 이상 필요; 첫 프레임만, 마지막 프레임만, 둘 다 지원
        - 출력 길이 `5`–`15`초, 현재 `2k`만 지원
        - 입력 이미지가 비율을 결정하며 `aspect_ratio`는 `adaptive`로 처리
        - 작업 ID로 [상태 조회](/ko/api-manual/task-management/get-task-detail)
        - 생성 URL은 24시간 동안 유효합니다
      operationId: createMinimaxH3ImageToVideo
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VideoGenerationRequest'
            examples:
              first_frame:
                summary: 첫 프레임만 사용
                value:
                  model: minimax-h3-image-to-video
                  prompt: >-
                    전경의 라멘 그릇에서 배경 인물로 초점을 천천히 옮긴다. 카메라가 부드럽게 전진하는 동안 그릇에서 더 많은
                    김이 자연스럽게 피어오르며 인물과 식당 환경의 일관성을 유지한다.
                  image_start: >-
                    https://cdn.hailuoai.com/prod/hailuo_demo/testsets/H3_AA_I2VA/gallery/sr_v17_variants_seed42_43_20260724/inputs/4a3a90bf9100_KDmcbkhzYo5sjjxr9FqcVmWVnzb.png
                  duration: 5
                  quality: 2k
              last_frame:
                summary: 마지막 프레임만 사용
                value:
                  model: minimax-h3-image-to-video
                  prompt: >-
                    식당 전경에서 시작해 인물들이 자연스럽게 대화하는 동안 카메라가 천천히 전진한다. 라멘의 김이 점차
                    선명해지고 제공된 종료 프레임의 구도와 자세에서 정확히 끝난다.
                  image_end: >-
                    https://cdn.hailuoai.com/prod/hailuo_demo/testsets/H3_AA_I2VA/gallery/sr_v17_variants_seed42_43_20260724/inputs/4a3a90bf9100_KDmcbkhzYo5sjjxr9FqcVmWVnzb.png
                  duration: 5
                  quality: 2k
              first_last_frame:
                summary: 첫 프레임과 마지막 프레임 사용
                value:
                  model: minimax-h3-image-to-video
                  prompt: >-
                    인물의 눈을 극단적으로 클로즈업한 장면에서 천천히 줌아웃하여 식당 전체를 드러낸다. 움직임을 자연스럽게
                    이어가며 종료 프레임의 구도로 정확히 전환한다.
                  image_start: >-
                    https://cdn.hailuoai.com/prod/hailuo_demo/testsets/H3_AA_I2VA/gallery/sr_v17_variants_seed42_43_20260724/inputs/4a3a90bf9100_KDmcbkhzYo5sjjxr9FqcVmWVnzb.png
                  image_end: >-
                    https://images.unsplash.com/photo-1515003197210-e0cd71810b5f?auto=format&fit=crop&w=1920&q=85
                  duration: 8
                  quality: 2k
      responses:
        '200':
          description: 비디오 생성 작업이 성공적으로 생성되었습니다
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VideoGenerationResponse'
        '400':
          description: 요청 파라미터 오류
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: invalid_request
                  message: Invalid request parameters
                  type: invalid_request_error
        '401':
          description: 미인증, Token이 유효하지 않거나 만료됨
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: 할당량 부족, 충전 필요
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: insufficient_quota
                  message: Insufficient quota. Please top up your account.
                  type: insufficient_quota
        '403':
          description: 접근 권한 없음
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: model_access_denied
                  message: >-
                    Token does not have access to model:
                    minimax-h3-image-to-video
                  type: invalid_request_error
        '429':
          description: 요청 빈도 초과
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: rate_limit_exceeded
                  message: Too many requests, please try again later
                  type: rate_limit_error
        '500':
          description: 서버 내부 오류
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: internal_error
                  message: Internal server error
                  type: api_error
components:
  schemas:
    VideoGenerationRequest:
      type: object
      required:
        - model
        - prompt
      properties:
        model:
          type: string
          description: 비디오 생성 모델 이름
          enum:
            - minimax-h3-image-to-video
          default: minimax-h3-image-to-video
          example: minimax-h3-image-to-video
        prompt:
          type: string
          minLength: 1
          description: >-
            입력 이미지의 움직임, 카메라 변화, 생성하려는 동영상의 내용을 설명합니다.


            **프롬프트 요구 사항:**

            - 필수이며 비워 둘 수 없습니다

            - 중국어와 영어를 지원합니다

            - 중국어는 `500`자, 영어는 `1000`단어 이하를 권장합니다. 프롬프트가 너무 길면 일부 세부 사항이 무시될 수
            있습니다


            **입력 제한:**

            - 키프레임은 `image_start` 및/또는 `image_end`로 전달합니다

            - `image_urls`, `video_urls`, `audio_urls`는 지원하지 않으며 전달하면 매개변수 오류가
            반환됩니다
          example: >-
            전경의 라멘 그릇에서 배경 인물로 초점을 천천히 옮긴다. 카메라가 부드럽게 전진하는 동안 그릇에서 더 많은 김이 자연스럽게
            피어오르며 인물과 식당 환경의 일관성을 유지한다.
        image_start:
          type: string
          format: uri
          description: >-
            시작 프레임 이미지의 HTTP(S) URL입니다.


            **조합 규칙:**

            - `image_start`와 `image_end` 중 하나 이상을 제공해야 합니다

            - `image_start`만 제공: 시작 프레임 이미지로 동영상 생성

            - 둘 다 제공: 시작 및 종료 프레임 사이의 동영상 생성

            - 시작 프레임은 최대 `1`개이며 이 필드는 URL 하나를 받습니다


            **이미지 요구 사항:**

            - 형식: JPG, JPEG, PNG, WEBP, HEIC, HEIF

            - 파일 크기: `30MB` 이하

            - 너비와 높이: 각각 `256`~`5760` px

            - 화면 비율(너비/높이): `0.4`~`2.5`

            - URL은 HTTP(S)를 사용하고 서비스에서 직접 접근할 수 있어야 합니다

            - 전체 JSON 요청 본문은 `64MB`를 초과할 수 없으며 Base64 및 `mm_file://` 입력은 허용하지
            않습니다
          example: >-
            https://cdn.hailuoai.com/prod/hailuo_demo/testsets/H3_AA_I2VA/gallery/sr_v17_variants_seed42_43_20260724/inputs/4a3a90bf9100_KDmcbkhzYo5sjjxr9FqcVmWVnzb.png
        image_end:
          type: string
          format: uri
          description: >-
            종료 프레임 이미지의 HTTP(S) URL입니다.


            **조합 규칙:**

            - `image_end`와 `image_start` 중 하나 이상을 제공해야 합니다

            - `image_end`만 제공: 이 프레임으로 끝나는 자연스러운 움직임 생성

            - 둘 다 제공: 시작 및 종료 프레임 사이의 동영상 생성

            - 종료 프레임은 최대 `1`개이며 이 필드는 URL 하나를 받습니다


            **이미지 요구 사항:**

            - 형식: JPG, JPEG, PNG, WEBP, HEIC, HEIF

            - 파일 크기: `30MB` 이하

            - 너비와 높이: 각각 `256`~`5760` px

            - 화면 비율(너비/높이): `0.4`~`2.5`

            - URL은 HTTP(S)를 사용하고 서비스에서 직접 접근할 수 있어야 합니다

            - 전체 JSON 요청 본문은 `64MB`를 초과할 수 없으며 Base64 및 `mm_file://` 입력은 허용하지
            않습니다
          example: >-
            https://images.unsplash.com/photo-1515003197210-e0cd71810b5f?auto=format&fit=crop&w=1920&q=85
        duration:
          type: integer
          description: |-
            출력 동영상 길이(초)입니다. 기본값은 `5`초입니다.

            **값 제한:**
            - `5`부터 `15`까지의 정수만 지원하며 양쪽 경곗값을 포함합니다
            - 소수, 숫자 문자열, `auto`, `-1`은 지원하지 않습니다
            - 출력 길이는 요금에 직접 영향을 줍니다
          default: 5
          minimum: 5
          maximum: 15
          example: 5
        quality:
          type: string
          description: |-
            출력 동영상 해상도입니다. 기본값은 `2k`입니다.

            **사용 가능한 값:**
            - `2k`: 현재 지원하는 유일한 해상도

            **참고:**
            - `768p`는 아직 제공되지 않으며 전달하면 매개변수 오류가 반환됩니다
            - 출력 비트레이트, 프레임률, 동영상 코덱, 오디오 코덱은 플랫폼에서 결정하며 요청으로 설정할 수 없습니다
          enum:
            - 2k
          default: 2k
          example: 2k
        callback_url:
          type: string
          description: >-
            작업 완료 후 HTTPS 콜백 주소


            **콜백 시점:**

            - 작업 완료(completed) 또는 실패(failed) 시 트리거

            - 과금 확인 완료 후 전송


            **보안 제한:**

            - HTTPS 프로토콜만 지원

            - 내부 네트워크 IP 주소로의 콜백 금지(127.0.0.1, 10.x.x.x, 172.16-31.x.x,
            192.168.x.x 등)

            - URL 길이는 `2048`자를 초과할 수 없습니다


            **콜백 메커니즘:**

            - 타임아웃: `10`초

            - 실패 시 최대 `3`회 재시도(실패 후 각각 `1`/`2`/`4`초 후 재시도)

            - 콜백 응답 본문 형식은 작업 조회 API 반환 형식과 동일

            - 2xx 상태 코드를 성공으로 간주하며, 다른 상태 코드는 재시도를 트리거합니다
          format: uri
          example: https://your-domain.com/webhooks/video-task-completed
          pattern: ^https://
      additionalProperties: false
    VideoGenerationResponse:
      type: object
      properties:
        created:
          type: integer
          description: 작업 생성 타임스탬프
          example: 1761313744
        id:
          type: string
          description: 작업 ID
          example: task-unified-1774857405-abc123
        model:
          type: string
          description: 실제 사용된 모델 이름
          example: minimax-h3-image-to-video
        object:
          type: string
          enum:
            - video.generation.task
          description: 작업의 구체적 유형
        progress:
          type: integer
          description: 작업 진행률 (0-100)
          minimum: 0
          maximum: 100
          example: 0
        status:
          type: string
          description: 작업 상태
          enum:
            - pending
            - processing
            - completed
            - failed
          example: pending
        task_info:
          $ref: '#/components/schemas/VideoTaskInfo'
          description: 비디오 작업 상세 정보
        type:
          type: string
          enum:
            - text
            - image
            - audio
            - video
          description: 작업의 출력 유형
          example: video
        usage:
          $ref: '#/components/schemas/VideoUsage'
          description: 사용량 및 과금 정보
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: 오류 코드 식별자
            message:
              type: string
              description: 오류 설명 정보
            type:
              type: string
              description: 오류 유형
    VideoTaskInfo:
      type: object
      properties:
        can_cancel:
          type: boolean
          description: 작업 취소 가능 여부입니다. Minimax H3 작업은 취소할 수 없으며 항상 `false`입니다.
          example: false
          enum:
            - false
          default: false
        estimated_time:
          type: integer
          description: 예상 완료 시간(초)
          minimum: 0
          example: 165
        video_duration:
          type: integer
          description: 비디오 길이(초)
          example: 8
    VideoUsage:
      type: object
      description: 사용량 및 과금 정보
      properties:
        billing_rule:
          type: string
          description: 과금 규칙
          enum:
            - per_call
            - per_token
            - per_second
          example: per_second
        credits_reserved:
          type: number
          description: 예상 소비 크레딧 수
          minimum: 0
          example: 50
        user_group:
          type: string
          description: 사용자 그룹 카테고리
          example: default
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: |-
        ##모든 API는 Bearer Token 인증이 필요합니다##

        **API Key 얻기:**

        [API Key 관리 페이지](https://evolink.ai/dashboard/keys)에서 API Key를 받으세요

        **요청 헤더에 다음을 추가하세요:**
        ```
        Authorization: Bearer YOUR_API_KEY
        ```

````