Skip to main content
POST

Autorizaciones

Authorization
string
header
requerido

Todos los endpoints requieren autenticación con token Bearer

Obtener una clave API:

Visita Gestión de claves API para obtener tu clave

Añade esta cabecera:

Cuerpo

application/json

Crea una voz a partir de la grabación de una persona. audio_url elige clonación; omite los campos de diseño voice_prompt, preview_text, sample_rate y response_format. Un texto de diseño no vacío, una frecuencia distinta de cero o un formato no vacío devuelve 400. sample_rate: 0/null y response_format: ""/null se tratan como omitidos.

model
enum<string>
predeterminado:voice-enrollment
requerido

Nombre del modelo

Opciones disponibles:
voice-enrollment
Ejemplo:

"voice-enrollment"

audio_url
string<uri>
requerido

URL de la grabación que se clonará. Este campo elige clonación de voz y no puede enviarse junto con voice_prompt

Requisitos de la URL:

  • HTTP o HTTPS, accesible públicamente sin autenticación
  • Direcciones locales o privadas: 400 (invalid_media_url)
  • Máximo 2048 caracteres
  • Protocolos no HTTP(S), como FTP: 400 (invalid_media_url)
  • Solo enlaces, no Base64; una URI de datos Base64 devuelve 400 (invalid_parameter)

Requisitos de audio (de lo contrario puede fallar la tarea):

  • WAV, MP3 o M4A
  • Máximo 60 segundos; muy poco contenido hablado también puede fallar (una grabación de 2 segundos falló en las pruebas)
  • Tamaño máximo 10 MB
  • Frecuencia de muestreo de al menos 16 kHz
  • Voz humana clara; se rechazan silencio, música y otros audios sin voz

Consejos de grabación:

  • 10–20 segundos, con al menos 5 segundos de lectura continua y clara; pausas de máximo 2 segundos
  • Mono; en estéreo solo se usa el primer canal
  • Sin música, ruido de fondo ni otras voces; habla normalmente, sin cantar

Si el audio no puede descargarse o no cumple los requisitos, la tarea falla y se devuelven todos los créditos

Clona solo tu propia voz o una voz con autorización explícita

Maximum string length: 2048
Pattern: [^\u0009-\u000D\u0020\u0085\u00A0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]
Ejemplo:

"https://your-cdn.com/samples/my-voice.wav"

preferred_name
string
requerido

Prefijo del nombre de voz

Restricciones:

  • 1–10 letras inglesas o dígitos; sin guiones bajos ni otros símbolos
  • Las mayúsculas se convierten en minúsculas
  • No tiene que ser único

Nombre completo: qwen-audio-3.1-tts-flash-{preferred_name}-{32-character-id} para clonación, qwen-audio-3.1-tts-flash-vd-{preferred_name}-{32-character-id} para diseño

Ejemplo con myvoice: qwen-audio-3.1-tts-flash-myvoice-5996beec833d41f4982158347ba97fae

Maximum string length: 10
Pattern: ^[a-zA-Z0-9]+$
Ejemplo:

"myvoice"

language
enum<string>

Para clonación, idioma hablado en la grabación, para extraer mejor la voz. Para diseño, preferencia de idioma de la voz; se recomienda el mismo que preview_text

Por defecto zh si se omite

Opciones disponibles:
zh,
en,
ja,
ko,
de,
fr,
it,
ru,
pt,
es
Ejemplo:

"zh"

target_model
enum<string>
predeterminado:qwen-audio-3.1-tts-flash

Modelo TTS que utilizará la voz. Actualmente solo se admite un valor, que se usa por defecto; los demás devuelven 400

Opciones disponibles:
qwen-audio-3.1-tts-flash
Ejemplo:

"qwen-audio-3.1-tts-flash"

callback_url
string<uri>

URL HTTPS de callback para el resultado de la tarea

Momento:

  • Cuando la tarea termina (completed) o falla (failed)
  • Después de confirmar la facturación

Seguridad:

  • Solo HTTPS
  • Se prohíben IP privadas (127.0.0.1, 10.x.x.x, 172.16–31.x.x, 192.168.x.x, etc.)
  • URL de máximo 2048 caracteres

Entrega:

  • Tiempo de espera: 10 segundos
  • Máximo 3 reintentos tras un fallo, con demoras de 1 / 2 / 4 segundos
  • Cuerpo del callback con el mismo formato que la respuesta de consulta de tarea
  • Un estado 2xx indica éxito; los demás provocan reintentos
Ejemplo:

"https://your-domain.com/webhooks/voice-completed"

Respuesta

Tarea de creación de voz aceptada

created
integer

Marca de tiempo de creación de la tarea

Ejemplo:

1775123456

id
string

ID de tarea

Ejemplo:

"task-unified-1775123456-abcd1234"

model
string

Modelo utilizado realmente

Ejemplo:

"voice-enrollment"

object
enum<string>

Tipo específico de objeto de tarea

Opciones disponibles:
audio.generation.task
progress
integer

Progreso de la tarea en porcentaje (0–100)

Rango requerido: 0 <= x <= 100
Ejemplo:

0

status
enum<string>

Estado de la tarea

Opciones disponibles:
pending,
processing,
completed,
failed
Ejemplo:

"pending"

task_info
object

Detalles de la tarea de audio

type
enum<string>

Tipo de salida de la tarea

Opciones disponibles:
audio
Ejemplo:

"audio"

usage
object

Información de uso y facturación