Skip to content
English

MiniMax Music 3 API

POST Base URL: https://api.hiapi.ai /v1/tasks

Image, video, and audio models are called through the Unified Async API POST /v1/tasks endpoint; only the input fields differ (see input parameters below).

Model summary

Model name minimax-music-3
Type Audio generation (text-to-music)
Endpoint POST /v1/tasks
Pricing See HiAPI Pricing

MiniMax Music 3: high-fidelity full songs from text and lyrics with natural vocals and rich instrumentation; 1-300s length control and seed reproducibility, lossless WAV output, billed per second of requested duration.

Production guidance

Production guidance
  • For production, pass callback.url at the top level of the request body so HiAPI can notify your service when the task reaches a terminal state.
  • GET /v1/tasks/:id is better for local debugging, low-volume jobs, or fallback reconciliation if a callback is missed.
  • Use callback.when=final. Both success and fail are terminal states, so your service should deduplicate by taskId.

Best suited for

Full song generation

A style prompt plus your own tagged lyrics produce a complete song with vocals and arrangement in one pass.

promptlyrics
Flexible length

Set duration anywhere from 1 to 300 seconds — short demos, BGM cues, or full singles.

duration
Reproducible results

Pin the seed to reproduce a generation exactly, then vary the prompt to compare takes.

seedprompt
High-fidelity audio

Lossless 44.1kHz stereo WAV output, ready for post-production pipelines.

Request parameters

model string required

Fixed value minimax-music-3.

example minimax-music-3
input object required

Business parameters. Put MiniMax Music 3-specific configuration here.

prompt string required

Describe the style, mood, vocals, instrumentation, and arrangement. For precise control, include genre, BPM, key, emotional progression, vocal details, and a section-by-section arrangement.

lyrics string required

Lyrics to sing, one line per lyric (separate lines with \n). Structure tags such as [intro], [verse], [pre-chorus], [chorus], [post-chorus], [bridge], [instrumental], [solo], and [outro] must each be on their own line — text on the same line as a tag is dropped. For an instrumental track, pass only the [instrumental] tag.

duration number optional

Upper bound on generated audio length in seconds, 1-300. The model may stop earlier; billing follows the requested duration.

default 60
seed integer optional

Random seed. Pass the same seed to reproduce a generation; omit it for a random result each run.

callback object optional

Optional callback configuration. When set, HiAPI notifies your service when the task reaches a terminal state.

url string required

Required when callback is set; HTTPS URL that receives terminal task notifications.

example https://your-domain.com/hiapi/callback
when enum optional

Callback trigger timing. Use final.

default final enum: final

Example requests

Neon Night Drive (Mandarin city-pop)

Verified in production: custom Chinese lyrics with structure tags, 30-second female-vocal city-pop.

Request body
{
  "model": "minimax-music-3",
  "input": {
    "prompt": "Mandarin city-pop with funky bass, bright brass stabs and shimmering synth pads; confident female lead vocal, polished retro-modern production, driving groove for a neon night drive",
    "lyrics": "[intro]\n[verse]\n霓虹在后视镜里流成河\n城市的心跳踩着油门\n[chorus]\n就让今晚的灯光都为我闪烁\n一路向前不回头\n[outro]",
    "duration": 30
  }
}
Epic Overture (instrumental)

Pass only the [instrumental] tag as lyrics for a vocal-free track, 90 seconds long.

Request body
{
  "model": "minimax-music-3",
  "input": {
    "prompt": "Epic cinematic orchestral theme with soaring strings, powerful brass, thunderous percussion and a heroic adventurous mood, film-score quality",
    "lyrics": "[instrumental]",
    "duration": 90
  }
}
Pinned-seed reproduction

Set seed to freeze the randomness — identical parameters reproduce the same result for tuning comparisons.

Request body
{
  "model": "minimax-music-3",
  "input": {
    "prompt": "Mandarin city-pop with funky bass, bright brass stabs and shimmering synth pads; confident female lead vocal, polished retro-modern production, driving groove for a neon night drive",
    "lyrics": "[intro]\n[verse]\n霓虹在后视镜里流成河\n城市的心跳踩着油门\n[chorus]\n就让今晚的灯光都为我闪烁\n一路向前不回头\n[outro]",
    "duration": 30,
    "seed": 42
  }
}

Getting the result

  1. The response returns a taskId immediately without waiting for generation to finish.
  2. In production, prefer waiting for callback.url to receive the terminal notification. For local debugging, poll GET /v1/tasks/:id.
  3. When status=success, download the generated audio from output[].url.
  4. When status=fail, fix the request based on the returned error instead of retrying the same invalid payload.

FAQ

How is it different from MiniMax Music 2.6?

Music 3 requires lyrics, adds duration control (1-300s cap) and seed-based reproducibility, outputs lossless WAV, and bills per second of requested duration. Music 2.6 can auto-write empty lyrics, has an is_instrumental switch, and bills per song.

How do I get an instrumental track?

Set lyrics to just the [instrumental] structure tag and describe the style and instrumentation in the prompt.

How is it billed?

Per second of the requested duration; the model may stop earlier, but billing follows the requested value. See the pricing page for the live rate.

What format is the output and how do I get it?

A 44.1kHz stereo WAV file. Once the task reaches status=success, download it from output[].url in the task detail.

Next steps