Skip to main content
POST
Create Voice Clone

Authorizations

Authorization
string
header
required

Your API key (ta_live_…) from Settings → API keys, sent as Authorization: Bearer <key>. Keep it on a server: it can message every customer you have. A key is full, build or read-only; a request its level does not allow is refused with 403.

Headers

Thinnest-Workspace
string

Developers only: the customer workspace this request acts in — its org_… id from POST /customers. Leave it out to act in your own workspace.

Example:

"org_3fKq9TzQ1mN8vB2xR7cLpA"

Body

multipart/form-data
sample
file
required

The recording: WAV, MP3, M4A or WebM audio, 5 to 30 seconds (15 is best), at most 10 MB.

name
string
required

A name for the voice, up to 40 characters.

Maximum string length: 40

true to promise: "This recording is of my own voice, or I hold the rights and permissions needed to clone the voice in it."

Available options:
true

true to promise: "I will not use it to impersonate anyone, or for anything illegal, harmful or misleading."

Available options:
true
description
string

A note about the voice, up to 200 characters.

Maximum string length: 200
tags
string

Comma-separated labels, e.g. warm, healthcare. Lower-cased, de-duplicated, eight at most.

language
string
default:en-IN

What the recording is in, as a language tag: hi, ta, bn, mr… for Indian languages, en-IN, en-US, en-GB, en-AU, en-NG, en-PH or en-SG for English, or another language the console's Voice Clone page offers. A language with no accent choice takes no region (ta, not ta-IN); en alone means en-IN. Refused when it is not one of them.

removeNoise
enum<string>
default:true

Clean background noise from the recording before cloning.

Available options:
true,
false

Response

The cloned voice. Put voiceId on an agent as voice.voice.

A voice your workspace cloned.

id
string
required

The clone's id.

Example:

"vc_c4a19e72-0b3d-4f58-a6e1-9d2c7b5f8a03"

voiceId
string
required

What an agent's voice.voice takes — the id List Voices shows it under.

name
string
required

Its name, up to 40 characters.

language
string
required

What it was recorded in, as a language tag: en-IN, hi, ta.

description
string | null
required

A note about it, up to 200 characters.

tags
string[]
required

Lower-case labels such as warm.

Maximum array length: 8
noiseRemoved
boolean
required

Whether background noise was cleaned from the recording before cloning.

previewUrl
string<uri> | null
required

A link to its preview that works for sixty seconds, or null.

usableOnAgents
boolean
required

Whether your plan may put a cloned voice on an agent.

What was agreed to when it was made, and when.

createdAt
string<date-time>
required

When the voice was made.