Introducción
Envía el texto que se va a leer y, opcionalmente, una voz, un acento, un estilo de habla, un ritmo, una escena y una breve nota sobre la interpretación; para una conversación, envía diálogo y hablantes en lugar de texto. La tarea devuelve un archivo WAV (24 kHz, 16 bits, mono) con el guion leído con esa voz, o con hasta dos voces en el caso de un diálogo. El modelo sigue indicaciones en lenguaje sencillo (más despacio, más cerca del micrófono, divertido, cansado) y ejecuta las indicaciones entre corchetes, como [sighs], en lugar de leerlas en voz alta. SpicyAPI no aplica ningún filtro de contenido: cada guion se lee tal como está escrito. Se cobra por segundo del audio devuelto.
| Campo | Valor |
|---|---|
| Entrada | Texto |
| Salida | Audio |
| Campo obligatorio | text (1 a 5.000 caracteres) o dialogue (hasta 20 líneas) |
| Campos opcionales |
|
| Resultado | Un archivo WAV, 24 kHz, 16 bits, mono |
| Clip más largo | Unos 655 segundos (16 384 tokens de audio) |
| Cantidad facturada | Segundos de audio devueltos, medidos en el archivo |
| Conservación | El audio generado se conserva 14 días |
Parámetros de la solicitud
| Parámetro | Obligatorio | Descripción |
|---|---|---|
text | No | Las palabras que se van a decir, tal como están escritas. Las marcas entre corchetes como [sighs] se actúan, no se leen. mínimo 1 caracteres · máximo 5000 caracteres |
dialogue | No | Una conversación con guion para hasta dos voces, en lugar de text: hasta 20 líneas, cada una con speaker (un nombre de speakers) y text de hasta 250 caracteres. mínimo 1 elementos · máximo 20 elementos |
speakers | No | El reparto de dialogue: una o dos entradas, cada una con un name al que se refieren las líneas, un |
voice_id | No | Una de las 30 voces predefinidas, cada una con un carácter fijo. Kore por defecto. |
style | No | Manera general de la lectura. Déjalo vacío para usar la manera predeterminada de la voz. |
pace | No | Ritmo de la lectura: natural, |
accent | No | Acento del inglés para la lectura. neutral por defecto. |
instructions | No | Indicación libre sobre cómo leer: ritmo, ánimo, distancia al micrófono y oyente. Da forma a la interpretación y no se pronuncia. máximo 1000 caracteres |
scene | No | Dónde y a quién se dicen las palabras, por ejemplo “una habitación de hotel en silencio pasada la medianoche”. Da forma a la interpretación y no se lee en voz alta. máximo 500 caracteres |
temperature | No | Variación entre tomas, de 0 a 2: los valores más altos hacen la interpretación menos predecible. Si no lo defines, se usa el valor predeterminado del modelo. |
Precios
$0.00045 / segundo
Se factura por segundo de audio devuelto. Durante la tarea se retiene el monto de 660 segundos y la parte no usada se libera al medir el audio.
Casos de uso
Audiolibros y narración larga
Capítulos, cuentos para dormir y ficción por entregas leídos por un narrador estable. Elige una voz una vez y mantenla: la misma voz con las mismas indicaciones suena igual de un capítulo a otro.
Voces para personajes y acompañantes
Dale a un personaje de chat una voz propia. Un estilo susurrado y una indicación breve convierten un texto plano en frases que suenan dichas a una sola persona, no anunciadas.
Historias en audio sin censura
Los guiones se leen tal como están escritos, sin filtro de contenido. En nuestras pruebas, el modelo pronunció cada palabra tanto de las líneas en primera persona como de las escenas narradas, sin saltar palabras ni terminar el clip antes de tiempo.
Pistas de voz para video
Genera la frase aquí y pasa el WAV a un modelo de avatar parlante o de sincronización labial para que un rostro la interprete. La duración del audio fija la duración del clip en el paso siguiente.
Guía de prompts y consejos prácticos
Envía el guion en text
Escríbelo exactamente como debe decirse, con signos de puntuación para las pausas. Hasta 5000 caracteres.
Elige una voz y, si hace falta, un estilo y un acento
voice_idusa Kore por defecto y accent usa neutral. Agrega style solo si quieres una manera concreta, como whisper.Dirige la lectura en instructions
Una o dos frases sobre ritmo, ánimo y oyente funcionan mejor que una lista de adjetivos. La indicación no se lee.
Qué devuelve
Un archivo WAV por tarea: PCM de 24 kHz, 16 bits, mono. El archivo se copia al almacenamiento de SpicyAPI y se conserva 14 días. El resultado no incluye tiempos por palabra ni subtítulos.
Elegir una voz
voice_id acepta una de las 30 voces predefinidas y su valor predeterminado es Kore. Cada voz tiene un carácter fijo; por ejemplo, Kore firme, Charon informativa, Puck animada, Enceladus aireada, Achernar suave, Algenib áspera, Sulafat cálida, Gacrux madura. La voz no cambia con el idioma del guion.
Dirigir la lectura
stylefija una manera general:whisper,empathetic,vocal_smile,newscaster,promo_hypeodeadpan. Si lo omites, la voz lee a su manera predeterminada.accentelige un acento del inglés y por defecto esneutral.pacemarca el ritmo:natural,rapid_fire,the_driftostaccato.instructionsrecibe texto libre sobre cómo leer: ritmo, ánimo, distancia al micrófono, a quién se habla.scenedice dónde y a quién se dicen las palabras. Ninguno de los dos se lee en voz alta.temperature(0–2) fija cuánto varía la interpretación entre tomas.- Dentro de
text, las indicaciones entre corchetes como[sighs]o[whispering]se actúan en lugar de leerse.
Dos voces en un clip
Para una conversación, envía dialogue en lugar de text, junto con speakers con el reparto: una o dos entradas, cada una con un name, un voice_id y, si quieres, accent, style, pace y profile, una breve descripción de quién habla que no se lee en voz alta. Cada línea de dialogue es {speaker, text}, donde speaker es uno de esos nombres; las líneas se interpretan en orden, hasta 20 líneas de 250 caracteres cada una. Lo que una entrada no defina se toma de accent, style y pace del nivel superior. Toda la conversación vuelve como un solo archivo WAV y se cobra por segundo, como cualquier otra solicitud.
Duración y tiempos
text acepta hasta 5000 caracteres. En nuestras pruebas, un párrafo de 270 caracteres dio entre 23 y 29 segundos de audio según la voz y el estilo. El modelo se detiene en 16 384 tokens de audio, unos 655 segundos. La mayoría de las tareas termina en menos de un minuto.
Facturación
Se factura por segundo de audio devuelto, medido en el archivo. Mientras la tarea se ejecuta, se retiene en tu saldo el monto de 660 segundos —el clip más largo que puede producir el modelo— y la parte no usada se libera al liquidar la tarea. Las solicitudes fallidas no se cobran.
Contenido
SpicyAPI no añade ningún filtro de contenido. En nuestras pruebas, los guiones que otros servicios rechazan se leyeron palabra por palabra, sin saltarse nada y sin clips cortados antes de tiempo.
SpicyAPI no añade ningún filtro de contenido: los guiones se leen tal como están escritos, sea lo que sea que contengan. Eres responsable de los guiones que envías y del uso que haces del audio resultante, incluido no presentarlo como palabras de una persona real.
Inicio rápido de la API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "google/gemini-2.5-pro-tts/text-to-speech",
"input": {
"text": "Welcome back. Your files finished rendering a minute ago and are ready to download.",
"accent": "neutral",
"voice_id": "Kore"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
Consulta la referencia de la API para autenticación, el esquema completo, sondeo y gestión de errores.







