API ReferenceVoice Management
Voice Cloning
Upload reference audio and create a custom voice.
Voice Cloning
POST /api/open/v1/voices
Authorization: Bearer FISHAUDIO_API_KEY
Content-Type: multipart/form-dataFull URL:
https://fishaudio.org/api/open/v1/voicesVoice creation uses reference audio and the FishAudio creation flow. The Open API route ignores provider overrides, so you do not need to send a provider field.
Request Fields
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Voice name |
audioFiles | file[] | Yes | One or more reference audio files |
description | string | No | Voice description |
referenceText | string | No | Transcript for the reference audio |
visibility | string | No | private or public. Default: private |
languages | string | No | JSON string array, such as '["zh","en"]' |
Supported file extensions: aac, flac, m4a, mp3, mp4, mpeg, oga, ogg, opus, wav, and webm. Each file can be up to 10MB.
Do not set the multipart boundary manually. When using curl -F, browser FormData, or an SDK, let the client generate Content-Type.
curl Example
curl -X POST "https://fishaudio.org/api/open/v1/voices" \
-H "Authorization: Bearer FISHAUDIO_API_KEY" \
-F "name=My cloned voice" \
-F "description=Chinese narration voice" \
-F "visibility=private" \
-F 'languages=["zh"]' \
-F "audioFiles=@/path/to/sample-1.mp3;type=audio/mpeg" \
-F "audioFiles=@/path/to/sample-2.wav;type=audio/wav"Response
{
"voiceId": "voice_abc123",
"title": "My cloned voice",
"description": "Chinese narration voice",
"createdAt": "2026-07-09T00:00:00.000Z"
}Store the returned voiceId, then pass it directly when generating speech.
Errors
| Status | Meaning |
|---|---|
400 | Missing fields, unsupported file type, or oversize file |
401 | API key is missing or invalid |
403 | Account cannot create voices |
429 | Voice creation requests are too frequent |
500 | Voice creation failed on the server |
Creating a voice records Open API usage and is subject to the current account's Open API quota and provider allocation.