Passer à la navigation

Clone Voice

Clone a custom voice from an audio or video sample and get back its id for use in POST /v2/tts and generation text inputs.

The exact sequence for a local file: (1) request a presigned URL via POST /v2/assets/upload, (2) PUT the file bytes to the returned uploadUrl, (3) clone from the returned url (or register it via POST /v2/assets and clone from the assetId). Samples must be hosted in sync. labs storage — external URLs are rejected with errorCode voice_sample_upload_required. Video sources have their audio track extracted automatically (first 2 minutes). Video sources staged for extraction are limited to 1 GiB (1,073,741,824 bytes); larger sources return 413 voice_sample_source_too_large. This endpoint allows 10 requests per hour per API key (or per signed-in user).

For best results use 30 seconds to 2 minutes of clear, single-speaker speech without background music or noise. Samples that are too short are rejected with errorCode voice_sample_too_short. Clone slots are limited per plan (403 voice_clone_limit_reached) and voice names must be unique within your organization (409 voice_name_conflict). Sample source problems return 422 (voice_sample_not_accessible, voice_sample_type_unsupported, voice_sample_upload_required, voice_sample_extraction_failed); invalid or too-short samples return 400 (voice_sample_invalid, voice_sample_too_short). A 429 may mean the request-rate limit was exceeded or shared provider capacity is busy (voice_clone_busy); follow the response retry guidance. Provider outages return 503 (elevenlabs_service_unavailable).

Authentification

x-api-keystring
Authentification par clé API via en-tête

Requête

This endpoint expects an object.
namestringRequis1-100 characters

A name for the cloned voice, 1–100 characters. Names starting with edit-dialogue- after trimming whitespace and ignoring case are reserved.

providerenumRequis

The provider to clone the voice with. Currently elevenlabs.

Valeurs autorisées:
urlstringOptionnel

A sync. labs-hosted url of the audio or video sample to clone from. Provide exactly one of url or assetId.

assetIdstringOptionnel

The id of a previously uploaded audio or video asset to clone from. Provide exactly one of url or assetId.

Réponse

Voice cloned successfully
idstring

Sync's UUID for the clone; use it to retrieve or delete the voice.

voiceIdstring
Provider voice id, also accepted in TTS and generation text inputs.
namestring
The name of the cloned voice.

Erreurs

400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
409
Conflict Error
413
Payload Too Large Error
422
Unprocessable Entity Error
429
Voice Clone Too Many Requests Error
500
Internal Server Error
503
Service Unavailable Error