MiniMax Music 3 API
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
- 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
A style prompt plus your own tagged lyrics produce a complete song with vocals and arrangement in one pass.
promptlyricsSet duration anywhere from 1 to 300 seconds — short demos, BGM cues, or full singles.
durationPin the seed to reproduce a generation exactly, then vary the prompt to compare takes.
seedpromptLossless 44.1kHz stereo WAV output, ready for post-production pipelines.
Request parameters
model string required Fixed value 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.
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.
when enum optional Callback trigger timing. Use final.
Example requests
Verified in production: custom Chinese lyrics with structure tags, 30-second female-vocal city-pop.
{
"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
}
}Pass only the [instrumental] tag as lyrics for a vocal-free track, 90 seconds long.
{
"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
}
}Set seed to freeze the randomness — identical parameters reproduce the same result for tuning comparisons.
{
"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
- The response returns a taskId immediately without waiting for generation to finish.
- In production, prefer waiting for callback.url to receive the terminal notification. For local debugging, poll GET /v1/tasks/:id.
- When status=success, download the generated audio from output[].url.
- 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.