Skip to main content

Portal walkthrough

1

Choose a provider

Select Telnyx or Minimax using the provider toggle.
2

Describe the voice

Write a natural language description of the voice you want — gender, age, tone, pace, texture, personality.
3

Generate samples

Click Generate Samples to create three audio previews. Each reads a different script in your chosen language.
4

Preview and iterate

Listen to each sample. Click Regenerate All to try again, or refine your description.
5

Save as a voice clone

Click Save This Voice. Give it a name and gender tag — this creates a production-ready voice clone.

Using the API

1. Create a voice design

POST /v2/voice_designs

{
  "name": "Friendly Receptionist",
  "prompt": "Female, mid-thirties. Warm and full, slightly husky.",
  "text": "Hello, thank you for calling. How can I help you today?",
  "language": "en",
  "provider": "telnyx"
}
Set "provider": "minimax" to use the Minimax provider instead.

2. Listen to the generated sample

GET /v2/voice_designs/{id}/sample
Returns audio/wav.

3. Save as a usable voice clone

A voice design is a draft. To use it in production, save it as a clone:
POST /v2/voice_clones

{
  "name": "Friendly Receptionist",
  "voice_design_id": "DESIGN_ID",
  "version": 1,
  "language": "en",
  "gender": "female"
}

Full example

import telnyx

client = telnyx.Telnyx(api_key="YOUR_TELNYX_API_KEY")

# 1. Create a voice design
design = client.voice_designs.create(
    name="Friendly Receptionist",
    prompt="Female, mid-thirties. Warm and full, slightly husky.",
    text="Hello, thank you for calling. How can I help you today?",
    language="en",
    provider="telnyx",
)
design_id = design.data.id
print(f"Voice design created: {design_id}")

# 2. Download the generated audio sample
sample = client.voice_designs.download_sample(design_id)
with open("sample.wav", "wb") as f:
    f.write(sample.content)
print("Sample saved to sample.wav")

# 3. Save the design as a usable voice clone
clone = client.voice_clones.create(
    params={
        "voice_design_id": design_id,
        "name": "Friendly Receptionist",
        "language": "en",
        "gender": "female",
    }
)
print(f"Voice clone ready: {clone.data.id}")
# Use this clone ID in TTS, Call Control, or AI Assistants
Once saved, see Using Custom Voices for how to use it in AI Assistants, Call Control, and the TTS API.