Saltar al contenido principal
POST
/
v1
/
audios
/
generations
curl --request POST \
  --url https://api.evolink.ai/v1/audios/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "qwen-voice-design",
  "voice_prompt": "Locutor masculino de mediana edad, serio y sereno, voz grave y resonante, con magnetismo, ritmo estable y pronunciación clara",
  "preview_text": "Estimados oyentes, buenas noches y bienvenidos al noticiero nocturno.",
  "preferred_name": "announcer"
}
'
{
  "created": 1775123456,
  "id": "task-unified-1775123456-abcd1234",
  "model": "qwen-voice-design",
  "object": "audio.generation.task",
  "progress": 0,
  "status": "pending",
  "task_info": {
    "can_cancel": true,
    "estimated_time": 15,
    "audio_type": "voice_design"
  },
  "type": "audio",
  "usage": {
    "credits_reserved": 2
  }
}

Autorizaciones

Authorization
string
header
requerido

##Todas las interfaces requieren autenticación con Bearer Token##

Obtener API Key:

Visita la página de administración de API Key para obtener tu API Key

Agrégalo en el encabezado de solicitud:

Authorization: Bearer YOUR_API_KEY

Cuerpo

application/json
model
enum<string>
predeterminado:qwen-voice-design
requerido

Nombre del modelo

Opciones disponibles:
qwen-voice-design
Ejemplo:

"qwen-voice-design"

voice_prompt
string
requerido

Descripción de las características de voz para definir el timbre

Restricciones:

  • Máximo 2048 caracteres
  • Solo se admiten chino e inglés

Dimensiones de descripción recomendadas:

  • Género: masculino, femenino, neutro
  • Edad: niño(5-12), adolescente(13-18), joven(19-35), adulto(36-55), mayor(55+)
  • Tono: agudo, medio, grave
  • Velocidad: rápido, medio, lento
  • Emoción: alegre, sereno, suave, serio, animado, tranquilo
  • Características: magnético, cristalino, ronco, redondo, dulce, profundo
  • Uso: locución de noticias, doblaje publicitario, audiolibros, personajes de animación, asistente de voz

Ejemplos de redacción recomendada:

  • Hombre de mediana edad sereno, ritmo lento, voz grave con magnetismo, ideal para leer noticias o narrar documentales
  • Voz infantil adorable, niña de unos 8 años, habla con cierta ingenuidad, ideal para doblaje de personajes de animación
  • Mujer suave e intelectual, alrededor de 30 años, tono tranquilo, ideal para narrar audiolibros
Maximum string length: 2048
Ejemplo:

"Locutor masculino de mediana edad, serio y sereno, voz grave y resonante, con magnetismo, ritmo estable y pronunciación clara"

preview_text
string
requerido

Texto de vista previa para generar el audio de muestra

Restricciones:

  • Máximo 1024 caracteres
  • Compatible con 10 idiomas: chino, inglés, japonés, coreano, alemán, francés, italiano, ruso, portugués, español
  • Se recomienda que coincida con el idioma del parámetro language
Maximum string length: 1024
Ejemplo:

"Estimados oyentes, buenas noches y bienvenidos al noticiero nocturno."

preferred_name
string
requerido

Prefijo del nombre del timbre

Restricciones:

  • Solo números, letras del alfabeto inglés y guiones bajos
  • No más de 16 caracteres

Formato del nombre completo del timbre generado: qwen-tts-vd-{preferred_name}-voice-{timestamp}

Si se ingresa announcer, el nombre final del timbre será similar a: qwen-tts-vd-announcer-voice-20260402-a1b2

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

"announcer"

language
enum<string>

Preferencia de idioma del timbre, se recomienda que coincida con el idioma de preview_text

Si no se envía, el valor predeterminado del upstream es zh

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

"zh"

sample_rate
enum<integer>

Frecuencia de muestreo del audio de vista previa (Hz)

Si no se envía, el valor predeterminado del upstream es 24000

Opciones disponibles:
8000,
16000,
24000,
48000
Ejemplo:

24000

response_format
enum<string>

Formato del audio de vista previa

Si no se envía, el valor predeterminado del upstream es wav

Opciones disponibles:
pcm,
wav,
mp3,
opus
Ejemplo:

"wav"

target_model
enum<string>
predeterminado:qwen3-tts-vd-2026-01-26

Modelo TTS que impulsará el timbre creado

Importante: El target_model especificado al crear el timbre debe coincidir con el modelo utilizado en la síntesis de voz posterior; de lo contrario, la síntesis fallará

ValorDescripción
qwen3-tts-vd-2026-01-26Qwen3-TTS-VD no streaming (predeterminado)
qwen3-tts-vd-realtime-2026-01-15Qwen3-TTS-VD-Realtime streaming bidireccional (versión nueva)
qwen3-tts-vd-realtime-2025-12-16Qwen3-TTS-VD-Realtime streaming bidireccional (versión antigua)

Actualmente esta plataforma ha integrado qwen3-tts-vd-2026-01-26 (no streaming); los modelos realtime aún no están disponibles pero se pueden pre-crear timbres

Opciones disponibles:
qwen3-tts-vd-2026-01-26,
qwen3-tts-vd-realtime-2026-01-15,
qwen3-tts-vd-realtime-2025-12-16
Ejemplo:

"qwen3-tts-vd-2026-01-26"

callback_url
string<uri>

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
Ejemplo:

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

Respuesta

Tarea de diseño de voz creada con éxito

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

Nombre del modelo realmente utilizado

Ejemplo:

"qwen-voice-design"

object
enum<string>

Tipo específico de la tarea

Opciones disponibles:
audio.generation.task
progress
integer

Porcentaje de progreso de la tarea (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

Información detallada 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