Skip to main content
POST
/
voices
/
v1
/
voices:clone
Clone a voice
curl --request POST \
  --url https://api.inworld.ai/voices/v1/voices:clone \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "displayName": "my_voice_clone_demo",
  "langCode": "EN_US",
  "voiceSamples": [
    {
      "audioData": "<base64-audio-data>",
      "transcription": "Hello! This is a short voice sample for cloning."
    }
  ],
  "description": "Voice clone created from provided WAV sample.",
  "tags": [
    "demo",
    "clone"
  ],
  "audioProcessingConfig": {
    "removeBackgroundNoise": true
  }
}
'
{
  "audioSamplesValidated": [
    {
      "audioData": "<base64-wav-bytes>",
      "errors": [],
      "langCode": "EN_US",
      "transcription": "Hello! This is a short voice sample for cloning.",
      "warnings": []
    }
  ],
  "voice": {
    "voiceId": "your_workspace_id__my_voice_clone_demo_20260218_223134z",
    "langCode": "EN_US",
    "displayName": "my_voice_clone_demo",
    "description": "Voice clone created from provided WAV sample.",
    "tags": [
      "demo",
      "clone"
    ],
    "name": "workspaces/your_workspace_id/voices/my_voice_clone_demo_20260218_223134z",
    "source": "IVC"
  }
}
Short URL Path: /workspaces/{workspace} is no longer required in the path for simplicity and clarity. When omitted, the workspace is derived from your API key. The previous URL with the full path /voices/v1/workspaces/{workspace}/voices:clone would continue to be supported.

Authorizations

Authorization
string
header
required

Your API key. Read permissions are required for GET endpoints. Write permissions are required for POST, PATCH, and DELETE endpoints.

For Basic authentication, please populate Basic $INWORLD_API_KEY

Body

application/json

Request message for CloneVoice custom method.

displayName
string
required

The human-readable name shown anywhere the voice is listed or selected. Keep it short and distinctive so users can find it easily.

langCode
enum<string>
required
Available options:
EN_US,
ZH_CN,
KO_KR,
JA_JP,
RU_RU,
AUTO,
IT_IT,
ES_ES,
PT_BR,
DE_DE,
FR_FR,
AR_SA,
PL_PL,
NL_NL,
HI_IN,
HE_IL
voiceSamples
object[]
required

Voice samples used for cloning. For best results, provide clear audio and avoid speaking in multiple languages, whispering, or making non-verbal sounds like coughing. Instant voice cloning works best with a 10-15 sec audio clip; longer clips will be cutoff at 15sec, which can affect quality. See Voice Cloning Best Practices for guidance on how to generate a high-quality voice clone.

description
string

Longer blurb that explains the voice's tone, accent, use cases, or other relevant attributes. Helpful for search and selection.

tags
string[]

Flat list of labels used for filtering, grouping and discovery. Examples could include gender, age or use case.

audioProcessingConfig
object

Audio processing config for voice cloning.

Response

A successful response.

Response message for CloneVoice custom method.

voice
object

Voice resource representing a voice configuration.

Example:
{
"voiceId": "your_workspace_id__my_voice_clone_demo_20260218_223134z",
"langCode": "EN_US",
"displayName": "John",
"description": "Cloned voice for narrations.",
"tags": ["demo", "clone"],
"name": "workspaces/your_workspace_id/voices/my_voice_clone_demo_20260218_223134z",
"source": "IVC"
}
audioSamplesValidated
object[]

The list of validated samples.