> ## Documentation Index
> Fetch the complete documentation index at: https://blackbox.dasha.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Clone voice from audio

> Creates a custom cloned voice from audio samples. The system analyzes the audio
characteristics and generates a synthetic voice that mimics the original speaker.
The cloned voice becomes available in your organization's voice library for use in agents.

## Audio Requirements

* **Format**: WAV, MP3, or FLAC
* **Quality**: Minimum 16kHz sample rate (44.1kHz recommended)
* **Duration**: 30 seconds to 10 minutes of clear speech
* **Content**: Clean speech without background noise or music
* **Speaker**: Single speaker with consistent tone
* **Total size**: Maximum 15MB combined

## Voice Cloning Process

1. **Audio analysis**: Extracts vocal characteristics and speech patterns
2. **Model training**: Creates custom voice model
3. **Quality validation**: Ensures voice meets quality standards
4. **Library storage**: Voice added to organization's library

## Use Cases

* Branded voices for customer service
* Personalized voice assistants
* Multilingual deployment with consistent identity
* Executive voice replication for announcements


## OpenAPI

````yaml https://blackbox.dasha.ai/swagger/v1/swagger.json post /api/v1/voice/clone
openapi: 3.0.4
info:
  title: Dasha BlackBox Agent API
  description: API for managing AI agents and calls
  contact:
    name: DashaAI Team
    email: support@dasha.ai
  version: v1
servers:
  - url: https://blackbox.dasha.ai
    description: Dasha BlackBox Agent API
security:
  - ApiKey: []
  - OAuth: []
tags:
  - name: ActivityLogs
  - name: Agents
  - name: CallResults
  - name: Calls
  - name: Chats
  - name: Copilot
  - name: CustomerData
  - name: Mcp
  - name: Media
  - name: Misc
  - name: PronunciationDictionaries
  - name: Providers
  - name: SipAliases
  - name: SipCredentials
  - name: SipPhoneNumbers
  - name: TextChat
  - name: TwilioProvider
  - name: Voice
  - name: WebhookTest
  - name: WebIntegrations
  - name: WebSocket
    description: WebSocket endpoints for real-time communication
paths:
  /api/v1/voice/clone:
    post:
      tags:
        - Voice
      summary: Clone voice from audio
      description: >-
        Creates a custom cloned voice from audio samples. The system analyzes
        the audio

        characteristics and generates a synthetic voice that mimics the original
        speaker.

        The cloned voice becomes available in your organization's voice library
        for use in agents.
      requestBody:
        content:
          multipart/form-data:
            schema:
              required:
                - Description
                - Language
                - Name
                - Provider
              type: object
              properties:
                Name:
                  maxLength: 100
                  minLength: 1
                  type: string
                  description: Display name for the cloned voice
                Description:
                  maxLength: 1000
                  minLength: 1
                  type: string
                  description: Description of voice characteristics and intended use
                Language:
                  type: string
                  description: >-
                    Primary language for the voice model. The cloned voice will
                    be optimized for this language.
                Provider:
                  type: string
                  description: >-
                    Voice cloning provider to use for creating the voice model.
                    Supported providers: ElevenLabs, Cartesia, Lmnt.
                ProviderSpecific.ElevenLabs.RemoveBackgroundNoise:
                  type: boolean
                  description: >-
                    Whether to remove background noise from the audio sample
                    during cloning for cleaner voice reproduction
                ProviderSpecific.Cartesia.Mode:
                  type: string
                  description: >-
                    Cloning mode controlling the balance between voice stability
                    and similarity. Supported values: "Stability", "Similarity".
                ProviderSpecific.Cartesia.Enhance:
                  type: boolean
                  description: >-
                    Whether to apply audio enhancement during cloning for
                    improved quality
                ProviderSpecific.Cartesia.Transcript:
                  type: string
                  description: >-
                    Text transcript of the audio sample being cloned. Helps
                    improve cloning accuracy.
                Labels:
                  type: object
                  additionalProperties:
                    type: string
                  description: >-
                    Custom metadata labels for categorizing and organizing
                    voices. Useful for filtering and searching cloned voices.
                audioFiles:
                  type: array
                  items:
                    type: string
                    format: binary
                  description: Audio files for cloning
            encoding:
              Name:
                style: form
              Description:
                style: form
              Language:
                style: form
              Provider:
                style: form
              ProviderSpecific.ElevenLabs.RemoveBackgroundNoise:
                style: form
              ProviderSpecific.Cartesia.Mode:
                style: form
              ProviderSpecific.Cartesia.Enhance:
                style: form
              ProviderSpecific.Cartesia.Transcript:
                style: form
              Labels:
                style: form
              audioFiles:
                style: form
      responses:
        '201':
          description: Cloned voice created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TtsCloneResponseDto'
        '400':
          description: Invalid configuration or validation errors
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '401':
          description: Authentication failed or API key is missing
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Access denied or quota exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '413':
          description: Audio files exceed size limit
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '422':
          description: Audio quality insufficient or processing failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Server error occurred during voice cloning
components:
  schemas:
    TtsCloneResponseDto:
      required:
        - category
        - id
        - provider
      type: object
      properties:
        id:
          minLength: 1
          type: string
          description: Unique identifier for the voice
        name:
          type: string
          description: Display name of the voice
          nullable: true
        voiceId:
          type: string
          description: Voice ID used for synthesis
          nullable: true
        provider:
          minLength: 1
          type: string
          description: >-
            TTS provider used for this voice. Supported providers: ElevenLabs,
            Cartesia, Lmnt.
        description:
          type: string
          description: Description of voice characteristics
          nullable: true
        language:
          type: string
          description: Primary language for the voice
          nullable: true
        labels:
          type: object
          additionalProperties:
            type: string
          description: Custom metadata labels
          nullable: true
        previewUrl:
          type: string
          description: URL for voice preview audio
          nullable: true
        category:
          allOf:
            - $ref: '#/components/schemas/TtsVoiceCategory'
          description: >-
            Voice category. Public voices are provided by the TTS provider,
            Cloned voices are custom voices created through voice cloning.
        createdTime:
          type: string
          description: Timestamp when voice was created
          format: date-time
          nullable: true
        lastUpdatedTime:
          type: string
          description: Timestamp when voice was last updated
          format: date-time
          nullable: true
      additionalProperties: false
      description: Response DTO for TTS voice cloning operations
    ProblemDetails:
      type: object
      properties:
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
      additionalProperties: {}
    TtsVoiceCategory:
      enum:
        - Public
        - Cloned
      type: string
      description: Voice category classification
  securitySchemes:
    ApiKey:
      type: http
      description: API Key Authentication (Bearer {key})
      scheme: Bearer
    OAuth:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: https://auth.dasha.ai/connect/authorize
          scopes:
            platform_api: Platform API

````