İçeriğe geç
Lumean API

Açıklamalar İngilizce

Bölümün arayüzü dilinize çevrildi, ancak işlem, şema ve hata açıklamaları yalnızca Rusça ve İngilizce mevcut — burada İngilizce sürüm gösteriliyor.
POST/voices/cartesia/clones/{voiceClone}/retry

Retry Cartesia Voice Clone

A new attempt for a clone in failed, with the same sample. The clone goes back to pending and takes a slot under the plan's cap again, so the checks are the same as on creation (404 service_not_found, 402 no_subscription, 422 voice_clone_quota_exceeded).

Only failed can be retried: a ready clone already has its voice and pending/cloning are still running — those get 409 voice_clone_not_retryable.

Required key permission: voices.write.

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.

POSThttps://api.lumean.app/api/public/voices/cartesia/clones//retry
  • stringyoldazorunlu

    Cartesia or Fish Audio voice clone UUID — 36 characters, not a number.

    Take it from the clone's id field: POST /voices/cartesia/clones (or /voices/fishaudio/clones) returns it on creation and the matching GET …/clones lists it. This is not the clone's voice_id (that one goes into a template). Someone else's clone returns 404 with reason: voice_clone_not_found.

    Değer doğrudan yukarıdaki istek satırına yerleşir.

Olası yanıtlar

200

Success. The payload is in data.

Gövde örneği
{
  "success": true,
  "message": "Success",
  "data": {
    "id": "01a10e08-2ee5-702c-b492-243c88fd966f",
    "provider": "cartesia",
    "display_name": "Noisy sample",
    "language": "ru",
    "description": null,
    "status": "pending",
    "voice_id": null,
    "attempts": 2,
    "error": null,
    "created_at": "2026-10-05T17:40:02+00:00",
    "completed_at": null,
    "failed_at": null,
    "banned_at": null,
    "ban_reason": null
  }
}
Yanıt alanları
successzorunlu

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.

boolean
messagezorunlu

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.

string
datazorunlu

The clone with a new attempt queued — back in pending.

CartesiaVoiceCloneCartesiaVoiceClone
idzorunlu

Clone UUID. Use it in /voices/cartesia/clones/{voiceClone}/… paths; it does NOT go into a template — voice_id does.

string
providerzorunlu

Clone provider — always cartesia.

Değerlercartesia
string
display_namezorunlu

Clone name given at creation.

string
languagezorunlu

Language of the sample (ISO 639-1), or null if none was sent.

string
descriptionzorunlu

Your description of the clone, or null.

string
statuszorunlu

Status: pending → cloning → ready or failed; archived — retired by the owner; banned — blocked by a moderator. Only ready can be used for narration.

string
voice_idzorunlu

The Cartesia voice id — the value for tts_settings.voice_id of a template with service_key: cartesia. Present only for ready, otherwise null.

string
attemptszorunlu

Cloning attempt number: 1 on creation, +1 for every retry.

integer
errorzorunlu

Why the last attempt failed; null while there has been no failure.

null olabilir
object
reasonzorunlu

Machine-readable failure code: processing_error, max_retries, network, timeout, dispatch_failed. Retry with POST /voices/cartesia/clones/{voiceClone}/retry; if processing_error keeps coming back, use a different sample.

string
messagezorunlu

Human-readable explanation of the failure, or null. Branch on reason, not on this text.

string
created_atzorunlu

When the clone was created.

string
completed_atzorunlu

When the clone became ready; null until then.

string
failed_atzorunlu

When the last attempt failed; null if it has not.

string
banned_atzorunlu

When a moderator banned the clone (status = banned); null if it is not banned.

string
ban_reasonzorunlu

Reason for the ban given by the moderator, or null. A banned clone can be neither used nor archived.

string
401

The key is missing, unknown, disabled or expired.

Bu yanıtı çözümle
Gövde örneği
{
  "success": false,
  "message": "API key is missing. Provide it in the X-API-KEY header.",
  "data": null
}
Yanıt alanları
successzorunlu

Always false in error responses.

boolean
messagezorunlu

Error text in the key's language (set through the X-Locale header).

string
datazorunlu

Always null when the request is rejected before processing.

null olabilir
null
402

No live subscription that includes Cartesia (reason: no_subscription). Returned only if the service is closed to paying from the balance.

Bu yanıtı çözümle
Gövde örneği
{
  "success": false,
  "message": "An active subscription is required.",
  "reason": "no_subscription",
  "error_code": "no_subscription"
}
Yanıt alanları
successzorunlu

Always false in error responses.

boolean
messagezorunlu

The reason for the rejection in words, in the account language. Meant for display; do not branch on it, the wording changes.

string
reasonzorunlu

Machine-readable reason of a business refusal (for example, input_expired, insufficient_balance). Branch on it, not on the message text.

string
error_codezorunlu

The same machine-readable code as in reason — a second name for the field. The values always match.

string
403

The key lacks the voices.write permission.

Bu yanıtı çözümle
Gövde örneği
{
  "success": false,
  "message": "This API key does not have permission to perform this action."
}
Yanıt alanları
successzorunlu

Always false in error responses.

boolean
messagezorunlu

Error text in the key's language (set through the X-Locale header).

string
404

The clone does not exist or belongs to someone else (reason: voice_clone_not_found). A voiceClone that is not a UUID does not match the route: reason: endpoint_not_found (a hint with the docs address, llm.md §6.1). Also reason: service_not_found — the service is closed to the key owner.

Bu yanıtı çözümle
Gövde örneği
{
  "success": false,
  "message": "Voice clone not found.",
  "reason": "voice_clone_not_found",
  "error_code": "voice_clone_not_found"
}
Yanıt alanları
successzorunlu

Always false in error responses.

boolean
messagezorunlu

The reason for the rejection in words, in the account language. Meant for display; do not branch on it, the wording changes.

string
reasonzorunlu

Machine-readable reason of a business refusal (for example, input_expired, insufficient_balance). Branch on it, not on the message text.

string
error_codezorunlu

The same machine-readable code as in reason — a second name for the field. The values always match.

string
409

The clone is not in failed (it is already ready, still pending/cloning, or archived), or its sample has already been deleted (reason: voice_clone_not_retryable). Create a new clone instead.

Bu yanıtı çözümle
Gövde örneği
{
  "success": false,
  "message": "Only a clone that ended with an error can be retried.",
  "reason": "voice_clone_not_retryable",
  "error_code": "voice_clone_not_retryable"
}
Yanıt alanları
successzorunlu

Always false in error responses.

boolean
messagezorunlu

The reason for the rejection in words, in the account language. Meant for display; do not branch on it, the wording changes.

string
reasonzorunlu

Machine-readable reason of a business refusal (for example, input_expired, insufficient_balance). Branch on it, not on the message text.

string
error_codezorunlu

The same machine-readable code as in reason — a second name for the field. The values always match.

string
422

The clone cap of the plan is reached (reason: voice_clone_quota_exceeded, the cap is in max).

Bu yanıtı çözümle
Gövde örneği
{
  "success": false,
  "message": "Voice clone limit reached: no more than 3. Delete a clone you no longer need or wait for the current one to fail.",
  "reason": "voice_clone_quota_exceeded",
  "error_code": "voice_clone_quota_exceeded",
  "max": 3
}
Yanıt alanları
successzorunlu

Always false in error responses.

boolean
messagezorunlu

The reason for the rejection in words, in the account language. Meant for display; do not branch on it, the wording changes.

string
reasonzorunlu

Machine-readable reason of a business refusal (for example, input_expired, insufficient_balance). Branch on it, not on the message text.

string
error_codezorunlu

The same machine-readable code as in reason — a second name for the field. The values always match.

string
maxzorunlu

The clone cap of your plan: how many clones in pending, cloning and ready you may hold at once. Archive a clone you no longer need to free a slot.

integer
429

The clone rate limit is exceeded (reason: rate_limit_exceeded): by default 6 attempts per minute and 60 per day per user, shared with the web cabinet and LumVoice cloning. Every attempt counts, including one rejected by validation. Wait retry_after seconds (the Retry-After header).

Bu yanıtı çözümle
Gövde örneği
{
  "success": false,
  "message": "Too many attempts. Please wait a moment and try again.",
  "reason": "rate_limit_exceeded",
  "error_code": "rate_limit_exceeded",
  "retry_after": 30
}
Yanıt alanları
successzorunlu

Always false in error responses.

boolean
messagezorunlu

Error text in the key's language (set through the X-Locale header).

string
reasonzorunlu

Machine-readable failure reason — branch on this, not on the message text.

string
error_codezorunlu

The same machine-readable code as in reason — a second name for the field. The values always match; branch on either.

string
retry_afteristeğe bağlı

How many seconds to wait before retrying (the same value is in the Retry-After header).

null olabilir
integer

Bu sayfayı yapay zekâya verin

.md sürümünü açllm.md

spesifikasyon 0.0.1