# MiniMax H3

MiniMax H3 (Hailuo 03) modes, input limits, defaults, prompt cap, credit pricing, and API examples.

## Overview

**Vendor:** MiniMax. `minimax-h3` (Hailuo 03) generates 4–15 second clips from text, an image, first and last frames, reference images, or a source video. It supports all five modes.

- Prompts are limited to **7000 characters** after trimming. The catalog lists this as `max_prompt_length`. Longer prompts return `400` with `minimax-h3 prompt must be 7000 characters or fewer, got <length>`.
- No audio toggle: `audio: true` is rejected.

## Modes and inputs

| Mode                 | `image_urls`            | `video_urls` | Aspect ratios                   | Defaults       |
| -------------------- | ----------------------- | ------------ | ------------------------------- | -------------- |
| `text-to-video`      | None                    | None         | 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | 4s, 768P, 16:9 |
| `image-to-video`     | Exactly 1 (first frame) | None         | Follows the image (omit)        | 4s, 768P       |
| `frames-to-video`    | Exactly 2 (first, last) | None         | Follows the images (omit)       | 4s, 768P       |
| `reference-to-video` | 1–4                     | 0–1          | 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | 4s, 768P, 16:9 |
| `video-to-video`     | 0–2 (references)        | Exactly 1    | 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | 4s, 768P, 16:9 |

Every mode accepts durations `4s`, `6s`, `8s`, `10s`, `12s`, `15s` and resolutions `768P`, `2K`.

- When you send `video_urls`, also send `options.source_video_duration_seconds` (the source clip's length in seconds). It is required but does not change the price.
- `video-to-video` generates a new clip guided by the source video. It is not a frame-accurate edit of the source.
- Reference audio is not accepted through the API.

## Credit pricing

Charge = rate × `duration`, in every mode. Video input does not change the rate.

| Resolution | Credits per second | 4s  | 6s  | 8s  | 10s | 12s | 15s |
| ---------- | ------------------ | --- | --- | --- | --- | --- | --- |
| 768P       | 3                  | 12  | 18  | 24  | 30  | 36  | 45  |
| 2K         | 4                  | 16  | 24  | 32  | 40  | 48  | 60  |

## Example

```bash
curl -X POST https://viewmax.studio/api/v1/videos \
  -H "Authorization: Bearer $VIEWMAX_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: h3-example-0001" \
  -d '{
    "model": "minimax-h3",
    "mode": "text-to-video",
    "prompt": "Slow aerial shot over terraced rice fields at sunrise, mist between the hills",
    "options": { "duration": "6s", "resolution": "2K", "aspect_ratio": "16:9" }
  }'
```

This request costs 24 credits.

With a source video:

```bash
curl -X POST https://viewmax.studio/api/v1/videos \
  -H "Authorization: Bearer $VIEWMAX_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: h3-example-0002" \
  -d '{
    "model": "minimax-h3",
    "mode": "video-to-video",
    "prompt": "Same camera move, but at night with neon signs",
    "video_urls": ["https://example.com/source.mp4"],
    "options": {
      "duration": "10s",
      "resolution": "768P",
      "source_video_duration_seconds": 8
    }
  }'
```

This request costs 30 credits. With MCP, call `generate_video` with `model: "minimax-h3"`.

## Notes

- Resolution values are case-insensitive; the catalog spells them `768P` and `2K`.
- Omitted options use the defaults above and are billed at those values.
