Clone a Voice

cURL

curl --request POST \
  --url https://api.heygen.com/v3/voices/clone \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "audio": {
    "type": "<string>",
    "url": "<string>"
  },
  "voice_name": "<string>",
  "language": "<string>",
  "remove_background_noise": true
}
'

Responses

200

{
  "data": {
    "voice_clone_id": "<string>"
  }
}

400

401

403

429

Authorizations

x-api-key

  • Type: string
  • Location: header
  • Required: Yes

HeyGen API key. Obtain from your HeyGen dashboard.

Body

application/json

Request body for POST /v3/voices/clone.

  • audio: AssetUrl ยท object

    • required
      Asset input via publicly accessible HTTPS URL.
  • voice_name: string

    • required
      Display name for the cloned voice.
      Required string length: 1 - 100
  • language: string | null
    Language hint for the voice (e.g., 'en', 'es'). Auto-detected if omitted.

  • remove_background_noise: boolean

    • default: true
      Remove background noise from the audio before cloning.

Response

200

application/json

Successful response

{
  "data": {
    "voice_clone_id": "<string>"
  }
}