OpenAI Format

MiniMax Video Generation

Use `POST /v1/videos` to call MiniMax-H3 and submit asynchronous video tasks.

POSThttps://zx1.deepwl.net/v1/videos
Request
curl --location --request POST 'https://zx1.deepwl.net/v1/videos' \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "model": "MiniMax-H3",
    "prompt": "A boy playing basketball by the sea",
    "duration": 5,
    "size": "2K",
    "metadata": {
        "ratio": "16:9"
    }
}'
Response
{
  "id": "task_a1b2c3d4e5f6",
  "task_id": "task_a1b2c3d4e5f6",
  "object": "video",
  "model": "MiniMax-H3",
  "status": "queued",
  "progress": 0,
  "created_at": 1785125529
}

OpenAI-format entry point, with JSON submission as the primary method. If you need to use the unified video POST /v1/video/create, please see Create Video.

  • Currently only supports the MiniMax-H3 model.
  • Asynchronous interface that returns a task ID; poll the result via MiniMax Task Query.
  • Total request body size must not exceed 64 MB. For large files, use a public URL instead of Base64.

Three generation scenarios, determined automatically from the request parameters

ScenarioParametersAspect Ratio
Text-to-videoprompt onlyDefault 16:9, cannot be adaptive
Image-to-videoimage or imagesForced adaptive
Multi-modal reference videometadata.reference_video / reference_audioDefault adaptive

Image-to-video and multi-modal reference video are mutually exclusive and cannot be mixed.

Request Headers

Authorizationstring必填

Authentication header. Uses a Bearer token, e.g. Bearer YOUR_API_KEY.

Content-Typestring必填

Request content type, must be application/json.

Request Body

modelstring必填

Model name. Currently only supports MiniMax-H3.

promptstring必填

Prompt. All generation scenarios require a non-empty prompt, up to 7000 characters per request.

durationinteger

Video duration in seconds. Range 4–15, default 5; out-of-range values are automatically clamped by the gateway to the boundary without an error.

sizestring

Video resolution. Options: 768P, 2K, default 2K; case-insensitive, unrecognized values fall back to 2K.

imagestring

A single input image used as the first frame. Mutually exclusive with images; when both are passed, image takes precedence.

  • Supports public URLs, mm_file://{file_id}, and data:image/<format>;base64,<Base64>.
  • Formats JPG/JPEG/PNG/WEBP/HEIC/HEIF, single file up to 30 MB, width/height [256, 5760] px, aspect ratio [0.4, 2.5].
imagesarray

Multiple input images; roles are assigned automatically by count.

  • 1 image: first frame.
  • 2 images: first frame + last frame.
  • 3 or more: all used as reference images (multi-modal reference scenario, up to 9 reference images).
metadataobject

Extended configuration.

ratiostring

Aspect ratio. Options: adaptive, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16.

  • Text-to-video: default 16:9, cannot be adaptive.
  • Image-to-video (including first/last frame): forced adaptive, other values are ignored.
  • Multi-modal reference video: default adaptive.
reference_videostring

Reference video URL (multi-modal reference scenario). Formats MP4/MOV, codecs H.264/H.265, single file up to 50 MB, duration 2–15 seconds.

reference_videosarray

Multiple reference video URLs, up to 3, total duration up to 15 seconds. Mutually exclusive with reference_video; when both are passed, this field takes precedence.

reference_audiostring

Reference audio URL (multi-modal reference scenario). Formats WAV/MP3, single file up to 15 MB, duration 2–15 seconds; audio input is free.

reference_audiosarray

Multiple reference audio URLs, up to 3, total duration up to 15 seconds. Mutually exclusive with reference_audio; when both are passed, this field takes precedence.

aigc_watermarkboolean

Whether to add an AIGC watermark to the generated video, default false.

Request Examples

Response Example

Response Fields

idstring

Task ID for subsequent queries. Gateway public ID, does not expose the upstream identifier.

task_idstring

Task ID (legacy compatibility field, to be deprecated; same value as id). Use id for new integrations.

objectstring

Always video.

modelstring

The model used by the task.

statusstring

Task status: queued / in_progress / completed / failed.

progressinteger

Task progress percentage, 0–100.

created_atinteger

Task creation time (Unix timestamp, seconds).

Error Codes

Status CodeDescription
400Invalid parameters, e.g. missing prompt
401Authentication failed: missing, invalid, or expired token
402Insufficient quota
422Input contains sensitive content
429Rate limited, please retry later
500Internal server error