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

# Qwen3 TTS VD

> - Convierte texto en audio de voz; **debe utilizarse el timbre personalizado creado con [Qwen Voice Design](/es/api-manual/audio-series/qwen-tts/qwen-voice-design)**; no se admiten timbres del sistema
- Flujo de uso: llamar a `qwen-voice-design` para crear el timbre → obtener el nombre del `voice` → pasarlo al parámetro `voice` de esta interfaz
- Modo de procesamiento asíncrono, use el ID de tarea devuelto para [consultar](/es/api-manual/task-management/get-task-detail)
- Los enlaces de audio generados son válidos por 24 horas, guárdelos cuanto antes



## OpenAPI

````yaml es/api-manual/audio-series/qwen-tts/qwen3-tts-vd.json POST /v1/audios/generations
openapi: 3.1.0
info:
  title: Interfaz de síntesis de voz Qwen3 TTS VD
  description: >-
    Convierte texto en audio de voz. Debe utilizarse el timbre personalizado
    creado con qwen-voice-design; no se admiten timbres del sistema.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.evolink.ai
    description: Entorno de producción
security:
  - bearerAuth: []
tags:
  - name: Síntesis de voz
    description: Interfaces relacionadas con la síntesis de voz Qwen3 TTS VD
paths:
  /v1/audios/generations:
    post:
      tags:
        - Síntesis de voz
      summary: Síntesis de voz Qwen3 TTS VD
      description: >-
        - Convierte texto en audio de voz; **debe utilizarse el timbre
        personalizado creado con [Qwen Voice
        Design](/es/api-manual/audio-series/qwen-tts/qwen-voice-design)**; no se
        admiten timbres del sistema

        - Flujo de uso: llamar a `qwen-voice-design` para crear el timbre →
        obtener el nombre del `voice` → pasarlo al parámetro `voice` de esta
        interfaz

        - Modo de procesamiento asíncrono, use el ID de tarea devuelto para
        [consultar](/es/api-manual/task-management/get-task-detail)

        - Los enlaces de audio generados son válidos por 24 horas, guárdelos
        cuanto antes
      operationId: createQwen3TtsVd
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Qwen3TtsVdRequest'
            examples:
              basic:
                summary: Llamada básica
                value:
                  model: qwen3-tts-vd
                  prompt: >-
                    Estimados oyentes, buenas noches y bienvenidos al noticiero
                    nocturno.
                  voice: qwen-tts-vd-announcer-voice-20260402-a1b2
              with_language:
                summary: Especificar idioma
                value:
                  model: qwen3-tts-vd
                  prompt: >-
                    Estimados oyentes, buenas noches y bienvenidos al noticiero
                    nocturno.
                  voice: qwen-tts-vd-announcer-voice-20260402-a1b2
                  language_type: Spanish
      responses:
        '200':
          description: Tarea de síntesis de voz creada con éxito
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Qwen3TtsVdResponse'
        '400':
          description: Error en los parámetros de solicitud
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: missing_text
                  message: 'Missing required parameter: prompt or input'
                  type: invalid_request_error
        '401':
          description: No autenticado, token inválido o expirado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: Créditos insuficientes, recarga necesaria
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: insufficient_quota
                  message: Insufficient quota. Please top up your account.
                  type: insufficient_quota
        '403':
          description: Sin permiso de acceso
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: model_access_denied
                  message: 'Token does not have access to model: qwen3-tts-vd'
                  type: invalid_request_error
        '429':
          description: Frecuencia de solicitudes excedida
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: rate_limit_exceeded
                  message: Too many requests, please try again later
                  type: rate_limit_error
        '500':
          description: Error interno del servidor
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: internal_error
                  message: Internal server error
                  type: api_error
components:
  schemas:
    Qwen3TtsVdRequest:
      type: object
      required:
        - model
        - prompt
        - voice
      properties:
        model:
          type: string
          description: Nombre del modelo
          enum:
            - qwen3-tts-vd
          default: qwen3-tts-vd
          example: qwen3-tts-vd
        prompt:
          type: string
          description: |-
            Texto a sintetizar

            **Restricciones:**
            - Máximo `600` caracteres
          maxLength: 600
          example: >-
            Estimados oyentes, buenas noches y bienvenidos al noticiero
            nocturno.
        voice:
          type: string
          description: >-
            Nombre del timbre


            - Primero debe crear un timbre a través de [Qwen Voice
            Design](/es/api-manual/audio-series/qwen-tts/qwen-voice-design)

            - Obtenido de `result_data.voice` en los resultados de la tarea de
            Voice Design

            - No se admiten timbres del sistema
          example: qwen-tts-vd-announcer-voice-20260402-a1b2
        language_type:
          type: string
          description: >-
            Pista de idioma para ayudar al modelo a seleccionar las reglas de
            pronunciación


            Si no se envía, se detecta automáticamente
          enum:
            - Auto
            - Chinese
            - English
            - Japanese
            - Korean
            - French
            - German
            - Spanish
            - Italian
            - Russian
            - Portuguese
          example: Auto
        callback_url:
          type: string
          description: >-
            Dirección de callback HTTPS tras completar la tarea


            **Momento del callback:**

            - Se activa cuando la tarea se completa (completed), falla (failed)
            o se cancela (cancelled)

            - Se envía tras confirmar la facturación


            **Restricciones de seguridad:**

            - Solo se admite el protocolo HTTPS

            - Prohibido hacer callback a direcciones IP internas (127.0.0.1,
            10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)

            - La URL no debe superar los `2048` caracteres


            **Mecanismo de callback:**

            - Tiempo de espera: `10` segundos

            - Máximo `3` reintentos tras fallo (respectivamente `1`/`2`/`4`
            segundos después del fallo)

            - El formato del cuerpo de respuesta del callback es igual al
            formato de retorno de la interfaz de consulta de tareas

            - Si la dirección de callback devuelve código de estado 2xx se
            considera exitoso; otros códigos activan reintentos
          format: uri
          example: https://your-domain.com/webhooks/tts-completed
    Qwen3TtsVdResponse:
      type: object
      properties:
        created:
          type: integer
          description: Marca de tiempo de creación de la tarea
          example: 1775122733
        id:
          type: string
          description: ID de tarea
          example: task-unified-1775122733-lozyt2i5
        model:
          type: string
          description: Nombre del modelo realmente utilizado
          example: qwen3-tts-vd
        object:
          type: string
          enum:
            - audio.generation.task
          description: Tipo específico de la tarea
        progress:
          type: integer
          description: Porcentaje de progreso de la tarea (0-100)
          minimum: 0
          maximum: 100
          example: 0
        status:
          type: string
          description: Estado de la tarea
          enum:
            - pending
            - processing
            - completed
            - failed
          example: pending
        task_info:
          $ref: '#/components/schemas/AudioTaskInfo'
          description: Información detallada de la tarea de audio
        type:
          type: string
          enum:
            - audio
          description: Tipo de salida de la tarea
          example: audio
        usage:
          $ref: '#/components/schemas/AudioUsage'
          description: Información de uso y facturación
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: Identificador del código de error
            message:
              type: string
              description: Mensaje de descripción del error
            type:
              type: string
              description: Tipo de error
    AudioTaskInfo:
      type: object
      properties:
        can_cancel:
          type: boolean
          description: Si la tarea se puede cancelar
          example: true
        estimated_time:
          type: integer
          description: Tiempo estimado de finalización (segundos)
          minimum: 0
          example: 10
        audio_type:
          type: string
          description: Tipo de tarea de audio
          example: tts
    AudioUsage:
      type: object
      description: Información de uso
      properties:
        credits_reserved:
          type: number
          description: Créditos estimados a consumir
          minimum: 0
          example: 0.32
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ##Todas las interfaces requieren autenticación con Bearer Token##


        **Obtener API Key:**


        Visita la [página de administración de API
        Key](https://evolink.ai/dashboard/keys) para obtener tu API Key


        **Agrégalo en el encabezado de solicitud:**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```

````