Model CenterGlobalAiOpc
minimax_voice_clone
Pricing
Sign in using the page header to view your account prices and available options.
Provide a reference audio URL and preview text to create a voice and its preview. This model requires preview text; see pricing below. Use the returned voice_id for speech synthesis.
Submit a request to receive 1 task ID(s), then query them to get your results.
Quick start
- Provide the reference audio URL, preview text and model parameters as specified by the required fields and defaults below, then submit with your API key.
- Save the task ID and query it every 3–5 seconds.
- When status is completed, save voice_id and the preview URL.
Endpoint
http
POST https://zcbservice.aizfw.cn/kyyReactApiServer/v2/model-center/tasks
Authentication
Get KeyAn API key is required. Use these headers when submitting a request, replacing
<API_KEY> with your key.http
Authorization: Bearer <API_KEY>
Content-Type: application/json
Prepare your media
Provide a directly downloadable public HTTP/HTTPS media URL; do not send file bytes. No domain registration is required. The file must meet the documented format and size limits. Save the submitted task ID and query its result. Operations with a preview return the preview URL and voice ID when complete.
Use your cloned voice
Save the returned
voice_id. To synthesize speech, put it in voice_setting.voice_id and provide the text to read in text. A preview URL is for listening, not a voice ID.List your voices:
GET /v2/model-center/tasks/resources?resource_type=voice&limit=24. Cloned voices can only be used by their owner.Character billing
Prices are quoted per 10,000 billable characters. Generation cost = billable characters ÷ 10,000 × unit price. Common Chinese characters count as 2; other UTF-16 code units count as 1. For example, “你好abc” counts as 7. Any first-use fee is charged separately from the character rate.
Request parameters
Send these parameters in the JSON request body. Always include required fields; provide the remaining fields for your chosen creation mode.
modelstringrequiredUse this model name.
Values and limits: minimax_voice_clone
textstringrequiredText to read in the preview.
Values and limits: At least 1 characters; Up to 1000 characters; Pattern: \S
file_urlstringrequiredReference audio URL for voice cloning. Provide a directly downloadable public URL. Supported formats: MP3。
Values and limits: Pattern: ^https?://
language_booststringReading language; auto detects it automatically.
Values and limits: Allowed values: "Chinese"; "Chinese,Yue"; "English"; "Arabic"; "Russian"; "Spanish"; "French"; "Portuguese"; "German"; "Turkish"; "Dutch"; "Ukrainian"; "Vietnamese"; "Indonesian"; "Japanese"; "Italian"; "Korean"; "Thai"; "Polish"; "Romanian"; "Greek"; "Czech"; "Finnish"; "Hindi"; "Bulgarian"; "Danish"; "Hebrew"; "Malay"; "Persian"; "Slovak"; "Swedish"; "Croatian"; "Filipino"; "Hungarian"; "Norwegian"; "Slovenian"; "Catalan"; "Nynorsk"; "Tamil"; "Afrikaans"; "auto"
upstream_modelstringrequiredSpeech model version. Use one of the allowed values below.
Values and limits: Allowed values: "speech-2.8-hd"; "speech-2.8-turbo"; "speech-2.6-hd"; "speech-2.6-turbo"; "speech-02-hd"; "speech-02-turbo"; "speech-01-hd"; "speech-01-turbo"
need_noise_reductionbooleanWhether to reduce noise in the reference audio.
need_volume_normalizationbooleanWhether to normalize reference audio volume.
Request examples
Choose a creation mode to view its request body. Full cURL, Python and JavaScript examples are available in the code panel. Install
requests for Python; JavaScript examples can run with Node.js 18+.JSON
{
"model": "minimax_voice_clone",
"text": "你好,这是我的声音试听。",
"file_url": "https://media.example.com/sample.mp3",
"language_boost": "Chinese",
"upstream_model": "speech-2.8-hd"
}
Submission response
HTTP 202 means your request is queued. Generation takes time; query the tasks to retrieve your results.
| Field | Description |
|---|---|
| task_ids | All task IDs for this request. Save and query each one to retrieve every result. |
| id | The first task ID. |
| status | queued means the task is waiting to start. |
| error | Error message, or null when no error occurred. |
Query results
http
GET https://zcbservice.aizfw.cn/kyyReactApiServer/v2/model-center/tasks/{task_id}
task_idstringrequiredReplace
{task_id} in the URL with one ID from the submission response task_ids, using the same API key. Query every task separately and retain all task IDs.Task status
| status | Meaning | What to do |
|---|---|---|
| queued | Queued | Query again in 3–5 seconds. |
| processing | Processing generation or file delivery | Query again in 3–5 seconds. |
| completed | Completed | Read the returned result fields and use the media URLs for playback or download. |
| failed | Generation failed | Read error for the cause and refund_status for refund progress. |
| delivery_exception | Generated, but the file is unavailable | Stop polling and contact support. Do not submit again. |
| manual_required | The task requires review | Stop polling, keep the task ID and contact support. Do not submit again. |
Completed response example
This example includes requested, delivered files. When the input condition listed below is not met, that file URL is omitted; successfully created resource IDs are still returned.
JSON
{
"id": "mcp_00000000000000000000000000000001",
"model": "minimax_voice_clone",
"object": "audio",
"created": 1792022400,
"status": "completed",
"amount": 0.25,
"billing_status": "deducted",
"refund_status": "none",
"voice_id": "mcr_0123456789abcdef0123456789abcdef",
"preview_url": "https://storage.example.com/preview.bin",
"error": null
}
Example URLs and credits are illustrative. Actual charges follow your account pricing and task record. Generated files are available when status is completed.
Response fields
| Field | Description |
|---|---|
| id | The task ID being queried. |
| model | The model used for generation. |
| object | Result type, such as audio or video. |
| created | Task creation time as a Unix timestamp in seconds. |
| status | Task status; completed means the result is ready. |
| amount / billing_status / refund_status | Credits consumed, charge status and refund status for this task. |
| error | Error message; null on success. |
| error_code | Platform error code, returned when an error occurs. |
| Media URL field | Description |
|---|---|
| preview_url | Audio playback or download URL; delivered when text is provided; completed requires successful storage |
Result fields
| Field | Type | Required | Description |
|---|---|---|---|
| voice_id | string | Yes | Voice ID. Save it for speech synthesis. |
Media URLs refer to platform-stored files and can be used for playback or download. Optional URLs are omitted when unavailable.
Billing and troubleshooting
Each task is charged separately. Check refund_status for refund progress after a failed generation.
- Submission timeout: check whether the original request succeeded before submitting again to avoid duplicate generation and charges. If you have a task ID, query that task.
- Temporary query error: retry the query with the same task ID; do not create a new generation.
- delivery_exception: the generation charge is retained. Contact support to restore file access.
