---
title: "Create a voice clone from a voice design"
method: POST
path: "/voice_clones"
tags: ["Voice Clones"]
---

# Create a voice clone from a voice design

`POST /voice_clones`

Creates a new voice clone by capturing the voice identity of an existing voice design. The clone can then be used for text-to-speech synthesis.

## Request body

- union — Request body for creating a voice clone from an existing voice design.
  - TelnyxDesignClone — Create a voice clone from a voice design using the Telnyx provider.
    - `name` string, required — Name for the voice clone.
    - `voice_design_id` string, uuid, required — UUID of the source voice design to clone.
    - `language` string, required — ISO 639-1 language code for the clone. Supports the combined Telnyx language set.
    - `gender` 'male' | 'female' | 'neutral', required — Gender of the voice clone.
    - `provider` 'telnyx' | 'minimax' — Voice synthesis provider. Defaults to `telnyx`.
  - MinimaxDesignClone — Create a voice clone from a voice design using the Minimax provider.
    - `name` string, required — Name for the voice clone.
    - `voice_design_id` string, uuid, required — UUID of the source voice design to clone.
    - `language` string, required — ISO 639-1 language code for the clone. Supports the Minimax language set.
    - `gender` 'male' | 'female' | 'neutral', required — Gender of the voice clone.
    - `provider` 'telnyx' | 'minimax', required — Voice synthesis provider. Must be `minimax`.

## Response `201`

Voice clone created successfully.

- VoiceCloneResponse — Response envelope for a single voice clone.
  - `data` VoiceCloneData — A voice clone object.
    - `record_type` 'voice_clone' — Identifies the resource type.
    - `id` string, uuid — Unique identifier for the voice clone.
    - `source_voice_design_id` string, uuid, nullable — UUID of the source voice design. `null` for upload-based clones.
    - `source_voice_design_version` integer, nullable — Version of the source voice design used. `null` for upload-based clones.
    - `name` string — Name of the voice clone.
    - `language` string, nullable — ISO 639-1 language code of the voice clone.
    - `gender` 'male' | 'female' | 'neutral' | 'null', nullable — Gender of the voice clone.
    - `label` string, nullable — Voice style description. If not explicitly set on upload, falls back to the source design's prompt text.
    - `created_at` string, date-time — Timestamp when the voice clone was created.
    - `updated_at` string, date-time — Timestamp when the voice clone was last updated.
    - `provider` 'telnyx' | 'minimax' — Voice synthesis provider used for this clone.
    - `provider_supported_models` string[] — List of TTS model identifiers supported by this clone's provider.
    - `provider_voice_id` string, nullable — Provider-specific voice identifier used for TTS synthesis. May differ from the clone UUID depending on the provider and model.
    - `model_id` 'Qwen3TTS' | 'Ultra' | 'speech-2.8-turbo' — TTS model identifier for the voice clone.
    - `status` 'active' | 'pending' | 'failed' | 'expired' — Clone status. pending for Ultra clones while on-prem import is in progress, active once ready, failed if verification timed out, expired if not kept alive.

## Other responses

- `401` — Unauthorized — missing or invalid bearer token.
- `404` — Voice design not found.
- `422` — Unprocessable entity — validation error in the request body.
- `502` — Bad gateway — upstream voice cloning service is unavailable.

---

[API](https://skmtc.net/team-telnyx/apis/telnyx-api.md) · [All operations](https://skmtc.net/team-telnyx/apis/telnyx-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/team-telnyx/telnyx-api/versions/e32d46c5945b/schema)
