# MiniMax Voice Cloning - Core.Today AI API > Clone any voice from a 10-second to 5-minute audio sample. Returns a custom voice_id you can pass to MiniMax speech models, plus a preview clip synthesized with the cloned voice. - **Provider**: MiniMax - **Model ID**: minimax/voice-cloning - **Category**: Audio & TTS - **Credits**: 6980 per clone (one-time; returns a reusable voice_id) - **Speed**: Medium - **Quality**: High ## Features - Voice cloning from as little as 10 seconds of audio - Cloned voice_id works with MiniMax speech models - Preview audio clip included in the result - Optional noise reduction for noisy samples - Optional volume normalization ## Use Cases - Brand ambassador and narrator voice reuse - Consistent character voices for games and animation - Personalized voice assistants - Audiobook narration in a specific voice - Localized dubbing with a consistent voice identity ## API Endpoint Base URL: https://api.core.today/v1 Create Prediction: POST /predictions Get Status: GET /predictions/{job_id} ## Authentication Header: X-API-Key: YOUR_API_KEY ## Input Parameters ### Required - **voice_file**: string - Voice file to clone. MP3, M4A, or WAV, 10s-5min, under 20MB ### Optional - **model**: string (default: speech-02-turbo) - The text-to-speech model to train the cloned voice for Options: speech-2.6-turbo, speech-2.6-hd, speech-02-turbo, speech-02-hd - **accuracy**: number (default: 0.7) - Text validation accuracy threshold (0-1) - **need_noise_reduction**: boolean (default: false) - Enable noise reduction if the voice file has background noise - **need_volume_normalization**: boolean (default: false) - Enable volume normalization ## Examples ### Clone a Narrator Voice Clone a clean studio recording and get a reusable voice_id ```json { "model": "minimax/voice-cloning", "input": { "voice_file": "https://example.com/narrator-sample.wav", "model": "speech-02-turbo", "accuracy": 0.7, "need_noise_reduction": false, "need_volume_normalization": false } } ``` ## Response Format ```json { "job_id": "abc123", "status": "pending | processing | completed | failed", "result": "URL or data (when completed)" } ``` ## Usage Flow 1. POST /predictions with model and input -> receive job_id 2. GET /predictions/{job_id} -> poll until status is completed or failed 3. Result contains output URL(s) ## Tips - Use a clean 30s-1min sample with a single speaker for the best clone quality - Pass the returned voice_id as the voice_id parameter of MiniMax speech models - Enable need_noise_reduction only when the sample has audible background noise - Pick the model you will actually synthesize with — the clone is trained per model - You must have permission to clone the voice — do not clone voices without consent ## Documentation https://replicate.com/minimax/voice-cloning