Skip to main content
POST
Clone Voice

Overview

Creates a Bland TTS voice clone from one or more audio samples. Sent as multipart/form-data. The new voice is private to your org and immediately usable with Speak. Two cloning engines are available, selectable per request:
  • BTTS V3 (default), single 10-second sample, 17+ languages, highest fidelity. Returned service: "BTTS_V3".
  • BTTS V2, exactly 1 WAV file, 17+ languages. Returned service: "BTTS_V2".

Headers

authorization
string
required
Your API key for authentication.

Form Fields

name
string
required
Display name for the voice clone. 1-30 characters. Must be unique in your library.
audio_samples
file[]
required
Audio file or files. Constraints depend on the engine flag (see below). WAV format recommended.
gender
string
male or female. Optional but recommended; helps the underlying model.
description
string
Free-text description. Surfaced as additional context to the model for tone and style.
isBTTS_V3
boolean
Use the V3 engine. Default if no engine flag is set. Pass "true" as a multipart string.
isBTTS_V2
boolean
Use the V2 engine instead of V3. Pass "true" as a multipart string.

Engine constraints

Each engine validates audio_samples differently. Mismatched files will return a Validation Error before the clone is created.
  • Exactly 1 audio file.
  • Roughly 10 seconds is ideal.
  • Max 10 MB.
  • 17+ languages supported.
  • Exactly 1 audio file.
  • Roughly 10 seconds is ideal.
  • Max 10 MB.
  • 17+ languages supported.

Response

Returns 200 OK with the new voice on success.
data.voice_id
string
UUID of the new voice clone. Use it as voice_id in Speak.
data.name
string
The display name you provided.
errors
null | array
null on success.

V2 and V3 voices are single-sample by design. Use List Voice Samples to inspect the source sample attached to a voice.
Docs for agents: llms.txt