MiniMax H3

Generate 4-15 second videos at native 2K with synchronized stereo audio using MiniMax H3 (Hailuo 03) through the VicSee API. Text, image, video, and audio references. Billed per second, 100-600 credits.

MiniMax H3 is also known as Hailuo 03. They are the same model — MiniMax H3 is the official name, Hailuo 03 is the name it ships under in the Hailuo app. It is the successor to Hailuo 2.3.

Pricing

Billed per second, not per tier. Multiply the rate by your output duration.

ResolutionRate
768P25 credits/second
2K40 credits/second
Duration768P2K
4s100160
5s125200
6s150240
7s175280
8s200320
9s225360
10s250400
11s275440
12s300480
13s325520
14s350560
15s375600

A video reference changes the total. When you send reference_video_urls, the same per-second rate is charged on input video seconds plus output seconds. A 10-second reference clip producing a 6-second 2K output bills (10 + 6) x 40 = 640 credits, not 240. Reference images and audio are free — only video length adds to the charge.

Endpoint

POST https://vicsee.com/api/v1/generate

Three model ids, one per mode:

Model IDMode
minimax-h3-text-to-videoText to Video
minimax-h3-image-to-videoImage to Video (first frame, last frame, or both)
minimax-h3-reference-to-videoReference to Video (image, video, audio)

Shared parameters

ParameterTypeNotes
promptstringRequired. Up to 7000 characters.
durationinteger4-15. Defaults to 15 for text-to-video and 6 for the other two modes.
resolutionstring768P or 2K. Defaults to 2K. There is no 480p, 1080p or 4K on this model.
aspect_ratiostring21:9, 16:9, 4:3, 1:1, 3:4, 9:16 — plus adaptive on reference-to-video. Not available on image-to-video (see below).

Audio is always generated natively in stereo. There is no audio parameter to enable or disable it.

Text to Video

curl -X POST https://vicsee.com/api/v1/generate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "minimax-h3-text-to-video",
    "input": {
      "prompt": "A cat walking slowly across a sunlit wooden floor, dust drifting in the light",
      "duration": 10,
      "resolution": "2K",
      "aspect_ratio": "16:9"
    }
  }'

Defaults to 21:9 if you omit aspect_ratio, and to 15 seconds if you omit duration.

Image to Video

Send 1 or 2 images in image_urls:

  • image_urls[0] — the first frame
  • image_urls[1] — the last frame (optional)

This mode has no aspect_ratio parameter. The output ratio follows the images you supply. Sending aspect_ratio has no effect.

curl -X POST https://vicsee.com/api/v1/generate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "minimax-h3-image-to-video",
    "input": {
      "prompt": "The doors open slowly and warm light spills across the plaza",
      "image_urls": [
        "https://example.com/first-frame.jpg",
        "https://example.com/last-frame.jpg"
      ],
      "duration": 8,
      "resolution": "2K"
    }
  }'

Input image requirements: JPG, JPEG, PNG, WEBP, HEIC or HEIF · max 30MB each · each side between 256px and 5760px · aspect ratio between 0.4 and 2.5 (width ÷ height).

Reference to Video

Combine references and refer to them in the prompt. At least one image or video reference is required — an audio reference on its own is rejected.

ParameterMaxNotes
reference_image_urls5Free. Same image requirements as above.
reference_video_urls3Max 15 seconds total across all clips. Adds to the credit charge.
reference_audio_urls3Free.
curl -X POST https://vicsee.com/api/v1/generate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "minimax-h3-reference-to-video",
    "input": {
      "prompt": "Reference the camera movement from the video, have the character sing, matching the vocals in the audio",
      "reference_image_urls": ["https://example.com/character.png"],
      "reference_video_urls": ["https://example.com/camera-move.mp4"],
      "reference_audio_urls": ["https://example.com/vocals.mp3"],
      "duration": 6,
      "resolution": "2K"
    }
  }'

Response

Generation is asynchronous. The call returns a task id immediately:

{
  "id": "task_abc123",
  "status": "pending"
}

Poll GET https://vicsee.com/api/v1/tasks/{id} until status is completed (the URL appears in result.url) or failed.

Choosing between models

If you needUse
Native 2K, best value per secondMiniMax H3
Longer than 15 secondsSeedance 2.5 (up to 30s)
Cheapest high-volume drafting at 480pSeedance 2 Mini
1080p or 4K outputSeedance 2.0