Hailuo 2.3 API

minimax/hailuo-2.3
Hailuo 2.3 supports creating high-quality, dynamic content for creative and commercial applications, including advertising, storytelling, and digital art.
Output
$0.728 / 10 sec

How to use Hailuo 2.3 API

Install any OpenAI-compatible SDK, point it at api.aimlapi.com/v1, and set the model to minimax/hailuo-2.3.
import requests, time

headers = {"Authorization": "Bearer " + AIMLAPI_KEY}
job = requests.post(
    "https://api.aimlapi.com/v2/video/generations",
    headers=headers,
    json={
      "model": "minimax/hailuo-2.3",
      "prompt": "A serene timelapse of clouds over a mountain range"
    },
).json()
gid = job["id"]

while True:
    res = requests.get(f"https://api.aimlapi.com/v2/video/generations?generation_id={gid}", headers=headers).json()
    if res.get("status") in ("completed", "error"):
        break
    time.sleep(5)
print(res["video"]["url"])
const headers = {
  Authorization: `Bearer ${process.env.AIMLAPI_KEY}`,
  "Content-Type": "application/json",
};
const job = await (await fetch("https://api.aimlapi.com/v2/video/generations", {
  method: "POST",
  headers,
  body: JSON.stringify({
    "model": "minimax/hailuo-2.3",
    "prompt": "A serene timelapse of clouds over a mountain range"
  }),
})).json();

let res;
do {
  await new Promise((r) => setTimeout(r, 5000));
  res = await (await fetch(`https://api.aimlapi.com/v2/video/generations?generation_id=${job.id}`, { headers })).json();
} while (!["completed", "error"].includes(res.status));
console.log(res.video.url);
# submit the generation — the response contains the job "id"
curl -X POST https://api.aimlapi.com/v2/video/generations \
  -H "Authorization: Bearer $AIMLAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"minimax/hailuo-2.3","prompt":"A serene timelapse of clouds over a mountain range"}'

# then poll until status is "completed" — video.url holds the result
curl "https://api.aimlapi.com/v2/video/generations?generation_id={id}" -H "Authorization: Bearer $AIMLAPI_KEY"

OpenAI-compatible — swap the base URL and it works with your existing SDK.

Hailuo 2.3 API Pricing

TypePrice
Output
$0.728 / 10 sec

Hailuo 2.3 Benchmarks

BenchmarkScoreWhat it measuresSourceRetrieved
Image-to-Video Arena
1244 (Elo)
Human preference Elo from blind pairwise comparisons of videos animated from the same input image, measured independently by Artificial AnalysisSourceJuly 16, 2026
Text-to-Video Arena
1176 (Elo)
Human preference Elo from blind pairwise comparisons of generated videos, measured independently by Artificial AnalysisSourceJuly 16, 2026

Hailuo 2.3 vs other models

ModelInputOutputContextBest for
Hailuo 2.3
This page
$0.728 / 10 sec
Video generation
$0.26 / sec (variable)
Video generation
$0.13 / sec (variable)
Video generation
$1.95 / 1M tokens
$22.75 / 1M tokens
Video generation
$0.09243–$1.014 / sec (by resolution)
Cinematic video + native audio

Frequently asked questions

Hailuo 2.3 takes image, text as input and returns video.

Hailuo 2.3 is priced at $0.728 / 10 sec.

Hailuo 2.3 is billed per generation — a fixed charge per output rather than by prompt length.

Yes, Hailuo 2.3 accepts image input as well as a text prompt.

Hailuo 2.3 was built by MiniMax.

Send a request to v2/video/generations with minimax/hailuo-2.3 as the model id.

Yes. Hailuo 2.3 is served through AI/ML API, so the same key and endpoint format used for other models applies.

Start building with Hailuo 2.3

Get API Key
1000+ models, one API.