Açıklamalar İngilizce
My Fish Audio Voice Clones
The key owner's Fish Audio voice clones, newest first. Archived clones are left out
unless you pass status=archived.
A clone in ready carries a voice_id — put it into tts_settings.voice_id of a
Fish Audio template. While the clone is pending/cloning, voice_id is null.
The list does not check the subscription: an expired subscription never hides the clones already created.
Required key permission: voices.read.
Bu sayfada(3)
Parametreler
Giriş alanları doğrudan istek satırında yer alır: bir değer girin, hazır URL'yi alın. Aşağıda her parametrenin türü, zorunlu olup olmadığı ve izin verilen değerleri var.
- FishAudioVoiceCloneStatussorgudaisteğe bağlı
Only clones in this status. Without it — everything except
archived; archived clones show up only withstatus=archived.İzin verilen değerler - stringsorgudaisteğe bağlı≤ 255 karakter
Search by clone name (
display_name). - integersorgudaisteğe bağlı≥ 1
Page number, starting at
1. - integersorgudaisteğe bağlı1..100
How many records to return per page. Pagination metadata sits next to
items:current_page,last_page,per_page,total.
Olası yanıtlar
200Success. The payload is in data.
Success. The payload is in data.
{
"success": true,
"message": "Success",
"data": {
"items": [
{
"id": "01a10e08-2ee3-73c2-88b2-8df2bcef9d1e",
"provider": "fishaudio",
"display_name": "Narrator (my voice)",
"language": "ru",
"description": null,
"status": "ready",
"voice_id": "b3f1c9a07e5d4a2c8d6e1f0a9b7c5d34",
"attempts": 1,
"error": null,
"created_at": "2026-10-14T08:02:11+00:00",
"completed_at": "2026-10-14T08:03:40+00:00",
"failed_at": null,
"banned_at": null,
"ban_reason": null
},
{
"id": "01a10e08-2ee5-702c-b492-243c88fd9670",
"provider": "fishaudio",
"display_name": "Noisy sample",
"language": "ru",
"description": null,
"status": "failed",
"voice_id": null,
"attempts": 1,
"error": {
"reason": "processing_error",
"message": "The provider rejected the sample."
},
"created_at": "2026-10-14T07:40:02+00:00",
"completed_at": null,
"failed_at": "2026-10-14T07:41:15+00:00",
"banned_at": null,
"ban_reason": null
}
],
"current_page": 1,
"last_page": 1,
"per_page": 20,
"total": 2
}
}Success flag. Branch on the HTTP status code instead: any 2xx response carries true here, while an error comes back in a different shape that need not contain this field at all.
A human-readable note in the account language. Fine to show to a user; do not parse it — the wording changes without notice and is not an error code.
datazorunluThe response payload.
object
The response payload.
itemszorunluYour Fish Audio voice clones on this page, newest first.
array<FishAudioVoiceClone>FishAudioVoiceClone
Your Fish Audio voice clones on this page, newest first.
Clone UUID. Use it in /voices/fishaudio/clones/{voiceClone}/… paths; it does NOT go into a template — voice_id does.
Clone provider — always fishaudio.
Clone name given at creation.
Reference language label (ISO 639-1), or null if none was sent. It does not affect cloning.
Your description of the clone, or null.
Status: pending → cloning → ready or failed; archived — retired by the owner; banned — blocked by a moderator. Only ready can be used for narration.
The Fish Audio voice id (a 32-character hex string, not a UUID) — the value for tts_settings.voice_id of a template with service_key: fishaudio. Present only for ready, otherwise null.
Cloning attempt number: 1 on creation, +1 for every retry.
errorzorunluWhy the last attempt failed; null while there has been no failure.
null olabilirobject
Why the last attempt failed; null while there has been no failure.
Machine-readable failure code: processing_error, max_retries, network, timeout, dispatch_failed, unbanned (the clone was unbanned but had no voice). Retry with POST /voices/fishaudio/clones/{voiceClone}/retry; if processing_error keeps coming back, use a different sample.
Human-readable explanation of the failure, or null. Branch on reason, not on this text.
When the clone was created.
When the clone became ready; null until then.
When the last attempt failed; null if it has not.
When a moderator banned the clone (status = banned); null if it is not banned.
Reason for the ban given by the moderator, or null. A banned clone can be neither used nor archived.
Current page number, starting from one.
Number of the last page.
Page size the server applied.
Total number of records matching the filter.
401The key is missing, unknown, disabled or expired.
The key is missing, unknown, disabled or expired.
{
"success": false,
"message": "API key is missing. Provide it in the X-API-KEY header.",
"data": null
}Always false in error responses.
Error text in the key's language (set through the X-Locale header).
Always null when the request is rejected before processing.
403The key lacks the voices.read permission.
The key lacks the voices.read permission.
{
"success": false,
"message": "This API key does not have permission to perform this action."
}Always false in error responses.
Error text in the key's language (set through the X-Locale header).
422Validation error, for example an unknown status or per_page above 100. Offending fields are listed in errors.
Validation error, for example an unknown status or per_page above 100. Offending fields are listed in errors.
{
"message": "string",
"errors": {}
}Errors overview.
errorszorunluA detailed description of each field that failed validation.
object
A detailed description of each field that failed validation.
İlgili içerik
Nesneler
Daha fazla
Bu sayfayı yapay zekâya verin
spesifikasyon 0.0.1