> ## Documentation Index
> Fetch the complete documentation index at: https://platform.minimax.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Voice Design

> Use this API to design custom voices by inputting text.



## OpenAPI

````yaml /api-reference/speech/voice-design/api/openapi.json POST /v1/voice_design
openapi: 3.1.0
info:
  title: MiniMax Voice Design API
  description: MiniMax Voice Design API with support for voice generation from text prompts
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.minimax.io
security:
  - bearerAuth: []
paths:
  /v1/voice_design:
    post:
      tags:
        - Voice
      summary: Voice Design
      operationId: voiceDesign
      parameters:
        - name: Content-Type
          in: header
          required: true
          description: >-
            The media type of the request body. Must be set to
            `application/json` to ensure the data is sent in JSON format.
          schema:
            type: string
            enum:
              - application/json
            default: application/json
      requestBody:
        description: Voice design request parameters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/T2VReq'
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/T2VResp'
components:
  schemas:
    T2VReq:
      type: object
      required:
        - prompt
        - preview_text
      properties:
        prompt:
          type: string
          description: Voice description.
        preview_text:
          type: string
          description: >-
            The text used for generating a preview audio sample.


            Note: Generating preview audio incurs a fee of $30 per 1M
            characters.
          maxLength: 500
        voice_id:
          type: string
          description: >-
            Custom voice ID for the generated voice. If not provided, a unique
            voice_id will be automatically created and returned.
      example:
        prompt: >-
          Excited and enthusiastic male product reviewer (e.g., tech vlogger),
          fast-paced, high energy, and persuasive.
        preview_text: >-
          What is UP, everyone! Today we're unboxing the brand new Gadget X-Pro,
          and let me tell you, this thing is absolutely insane! The features are
          next level, you guys are gonna love this!
    T2VResp:
      type: object
      properties:
        voice_id:
          type: string
          description: The generated voice ID, which can be used for speech synthesis.
        trial_audio:
          type: string
          description: The generated preview audio in hex-encoded format.
        base_resp:
          type: object
          description: Status code and details.
          properties:
            status_code:
              type: integer
              format: int64
              description: >-
                Status code.


                - `0`: Request successful

                - `1000`: Unknown error

                - `1001`: Timeout

                - `1002`: RPM rate limit triggered

                - `1004`: Authentication failed

                - `1008`: Insufficient balance

                - `1013`: Internal service error

                - `1027`: Output content error

                - `1039`: TPM rate limit triggered

                - `2013`: Invalid input format


                For more information, please refer to the [Error Code
                Reference](/api-reference/errorcode).
            status_msg:
              type: string
              description: Status details.
      example:
        trial_audio: hex-encoded audio
        voice_id: ttv-voice-2025060717322425-xxxxxxxx
        base_resp:
          status_code: 0
          status_msg: success
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        `HTTP: Bearer Auth`

        - Security Scheme Type: http

        - HTTP Authorization Scheme: `Bearer API_key`, can be found in [Account
        Management>API
        Keys](https://platform.minimax.io/user-center/basic-information/interface-key).

````