Skip to content

MiniMax Voice Cloning ​

Upload Clone Audio ​

Used to upload the original audio file for instant voice cloning.

http
POST /v1/files/upload

See File Management > Upload File, use voice_clone for purpose. Audio formats mp3/m4a/wav, duration 10 seconds to 5 minutes, ≤20 MB.

Upload Prompt Audio ​

Used to upload a prompt audio file to enhance the voice similarity and stability of speech synthesis.

http
POST /v1/files/upload

See File Management > Upload File, use prompt_audio for purpose. Audio formats mp3/m4a/wav, duration <8 seconds, ≤20 MB.

Instant Voice Cloning ​

Use this interface for instant voice cloning. If a cloned voice is not formally called within 7 days, the system will automatically delete it.

http
POST /v1/voice_clone

Request Headers ​

ParameterTypeRequiredDefaultDescription
Content-TypestringYesapplication/jsonData exchange format
AuthorizationstringYes-Authentication info, format is Bearer <API_KEY>

Request Body ​

ParameterTypeRequiredDescription
file_idint64YesThe source audio file ID, obtained via the file upload interface
voice_idstringYesCustom clone voice ID. Length [8, 256], must start with a letter, only letters/numbers/-/_ allowed, cannot end with - or _, and must not duplicate an existing ID
clone_promptobjectNoPrompt audio, used to improve similarity and stability
clone_prompt.prompt_audioint64NoThe file ID of the prompt audio
clone_prompt.prompt_textstringNoThe exact text of the prompt audio, which must fully match the audio content and end with punctuation
textstringNoPreview synthesis text, up to 1000 characters. When provided, a preview audio link is returned and billed at the T2A rate
modelstringNoPreview synthesis model, required when text is present. Options: speech-2.8-hd, speech-2.8-turbo
language_booststringNoEnhance recognition of a specific language/dialect, or auto for automatic detection. Supports 40+ languages including Chinese, English, Japanese, Korean, Cantonese, etc.
text_validationstringNoThe expected transcription text of the source audio, up to 200 characters. The request is rejected when ASR similarity falls below the accuracy threshold (error code 1043)
accuracydoubleNoASR similarity threshold, default 0.7, range [0, 1]. Used together with text_validation
need_noise_reductionbooleanNoWhether to apply noise reduction to the source audio, default false
need_volume_normalizationbooleanNoWhether to enable volume normalization, default false
aigc_watermarkbooleanNoWhether to append an AIGC watermark beat marker at the end of the preview audio, default false

Request Example ​

bash
curl --request POST \
  --url https://neolink.com/api/minimax/v1/voice_clone \
  --header 'Authorization: Bearer <API_KEY>' \
  --header 'Content-Type: application/json' \
  --data '{
    "file_id": 123456789,
    "voice_id": "my-custom-voice-001",
    "text": "你好,这是我的克隆音色试听。",
    "model": "speech-2.8-hd",
    "need_noise_reduction": true,
    "need_volume_normalization": true,
    "language_boost": "Chinese"
  }'

Successful Response (HTTP 200) ​

json
{
  "input_sensitive": {
    "type": 0
  },
  "demo_audio": "https://demo-audio.example.com/audio.wav",
  "extra_info": {
    "audio_length": 3500,
    "audio_sample_rate": 24000,
    "audio_size": 84000,
    "bitrate": 192000,
    "word_count": 14,
    "usage_characters": 14
  },
  "base_resp": {
    "status_code": 0,
    "status_msg": "success"
  }
}
FieldTypeDescription
input_sensitiveobjectInput content moderation result
input_sensitive.typeintModeration type: 0=normal, 1=serious violation, 2=pornographic, 3=advertisement, 4=prohibited, 5=abusive, 6=violent/terrorist, 7=other
demo_audiostringPreview audio link (only returned when text and model are provided in the request)
extra_infoobjectPreview audio metadata and billing info (only returned when text is provided in the request)
extra_info.audio_lengthint64Audio duration (milliseconds)
extra_info.audio_sample_rateint64Audio sample rate
extra_info.audio_sizeint64Audio size (bytes)
extra_info.bitrateint64Bitrate
extra_info.word_countint64Number of synthesized characters (excluding punctuation)
extra_info.usage_charactersint64Number of billable characters
base_resp.status_codeintStatus code; see the error codes for specific definitions
base_resp.status_msgstringStatus details