Overview
MiniMax Voice is an audio model for creating reusable custom voices. Usedesign to create a new voice from a text description, or use clone to create a reusable voice from one reference audio clip.
| Capability | Value |
|---|---|
| Model ID | minimax-voice |
| Modes | design, clone |
| Built-in voices | No |
| Custom voices | Yes |
| Voice ID source | Generated by the platform from voice_id_prefix |
| Design preview text length | 1-500 characters |
| Clone preview text length | 1-2000 characters when provided |
| Clone audio URLs | Exactly 1 URL |
Endpoint and authentication
Base URL:| Method | Endpoint | Purpose |
|---|---|---|
POST | /generateTask/minimax-voice | Submit a design or clone task |
GET | /statusTask/minimax-voice?taskId={taskId} | Poll task status and retrieve results |
Copy-paste async quickstart
This minimal request submits a clone task and returns ataskId.
taskId; you need it to poll for the final result.
Poll for result
resultJson after state becomes success:
Request body
Design
Clone
Parameters
Result delivery mode. Use
async for polling with statusTask, or callback for webhook delivery.Required when
request_type is callback. Must be a public HTTPS URL that can receive the final task payload. See Webhooks.MiniMax Voice input parameters.
Voice ID behavior
- The final
voice_idis generated automatically fromvoice_id_prefix. - A typical returned value looks like
warm001-a1b2c3. - Use the returned
voice_idin later MiniMax speech generation requests that support custom voices. - If you want to keep a newly created custom voice available for long-term reuse, use that
voice_idin a supported speech request after creation. - A newly created custom voice that is never used later may become unavailable after 7 days.
Validation and media rules
- Only the documented fields on this page are part of the public request contract.
- Do not send your own final
voice_idin the request; the platform generates it for you. - Clone requires exactly 1 reference audio URL.
- Reference audio URLs must be publicly reachable.
- Supported reference audio formats include
mp3,m4a, andwav. - Clear speech works best. Heavy background music, strong noise, long silence, or invalid audio content can cause the task to fail.
- The preview synthesis model for clone mode is platform-managed and is not user-selectable.
Response format
Submit task response
POST /generateTask/minimax-voice returns a task ID when the task is accepted:
API status code.
200 means the task was accepted.Human-readable status message.
Unique task identifier used with the status endpoint.
Status response fields
Unique task identifier.
Current task state:
processing, success, or failed.Reusable custom voice ID generated for this task.
Voice readiness state.
preparing means the custom voice is still being prepared; active means it was created successfully.JSON string containing preview audio result URLs. Present when preview audio is available.
Machine-readable failure code. Present when
state is failed.Human-readable failure message. Present when
state is failed.Task creation timestamp in Unix milliseconds.
Task completion timestamp in Unix milliseconds. Present after completion.
Processing duration in milliseconds. Present after successful completion.
Webhook callback mode
Use callback mode when your backend should receive the final result automatically instead of polling.Billing
MiniMax Voice is billed per request.| Workflow | APIXO price |
|---|---|
design | $0.50 / request |
clone | $0.50 / request |
Latency and polling
Voice creation usually takes longer than lightweight TTS requests because the custom voice must be prepared before it can be reused.| Workflow | Recommended first poll | Poll interval |
|---|---|---|
design | 10s after task creation | 5s-10s |
clone | 10s after task creation | 5s-10s |
Errors and troubleshooting
HTTP errors
| Code | Meaning | What to do |
|---|---|---|
400 | Invalid request body or parameter shape | Fix the request before retrying |
401 | Missing or invalid API key | Check the Authorization header |
402 | Insufficient balance or quota | Add balance or switch account/key |
403 | Key or route cannot access the model | Check permissions and route strategy |
429 | Rate limit or concurrency limit reached | Retry with exponential backoff |
500 | Server error | Retry with backoff |
502 | Provider-side error during voice creation | Retry with backoff |
504 | Voice creation timeout | Retry or use callback mode |
Common validation and failure cases
voice_id_prefixmust start with a letter, contain only letters or digits, and be at least 6 characters long.preview_textis required fordesign, and cannot be empty.audio_urlsmust contain exactly one non-empty URL forclone.need_noise_reductionandneed_volume_normalizationmust be boolean values when provided.accuracymust be between0and1.language_boostmust be one of the documented supported values.- Reference audio that is unreachable, empty, too noisy, or otherwise invalid can cause task failure.