Introducción
Envía el texto a leer y, opcionalmente, una de 30 voces, un acento, un estilo, un ritmo, una escena y una breve nota sobre la interpretación; para una conversación, envía el diálogo y los hablantes en lugar del texto. La tarea devuelve un archivo WAV (24 kHz, 16 bits, mono) con el guion leído en esa voz, o en hasta dos voces para un diálogo, normalmente en segundos. Modela la lectura con la puntuación; las indicaciones entre corchetes, como [sighs], no se ejecutan de forma fiable y a veces se leen en voz alta. SpicyAPI no aplica ningún filtro de contenido, así que cada guion se lee tal como está escrito. Se cobra por segundo de 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 | 16.384 tokens de audio |
| Cantidad facturada | Segundos de audio devuelto, medidos a partir del archivo |
| Retenció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 deben pronunciar, exactamente como están escritas. 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 30 voces prediseñadas, cada una con un carácter fijo. Por defecto es Kore. |
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. Si no lo defines, se usa el acento propio de la voz. |
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.00021 / segundo
Facturado por segundo de audio devuelto. Se coloca una retención de 660 segundos mientras la tarea se ejecuta, y la parte no utilizada se libera cuando se mide el audio.
Casos de uso
Narración de alto volumen
Textos de producto, guiones de lecciones, lecturas de artículos y lotes de líneas cortas donde el tiempo de respuesta y el costo importan más que el matiz actoral.
Voces de personajes y compañeros
Dale a un personaje de chat una voz propia y responde en segundos. Oraciones cortas de estilo hablado y una puntuación cuidada aportan la mayor parte del tono.
Historias de audio sin censura
Los guiones pasan sin filtro de contenido. En nuestras pruebas, el modelo pronunció cada palabra de los monólogos más atrevidos y de las escenas narradas que enviamos, sin saltarse nada ni cortar antes.
Pistas de voz para video
Genera la línea aquí y luego entrega el WAV a un modelo de avatar parlante o de sincronización labial para que un rostro la interprete. La duración del audio define la duración del clip resultante.
Guía de prompts y consejos prácticos
Envía el guion en texto
Escríbelo exactamente como debe pronunciarse, incluida la puntuación para las pausas. Hasta 5.000 caracteres.
Elige una voz
voice_idusa Kore de forma predeterminada. Cada una de las 30 voces tiene un carácter fijo, así que elige una vez y mantenla para una serie.Escribe los sonidos como sonidos
Para suspiros, risas o gemidos, escríbelos tal cual —"Mmm…", "ha…", "ahh…"— en lugar de usar etiquetas entre corchetes, que este modelo a veces lee en voz alta.
Qué devuelve
Un archivo WAV por tarea: 24 kHz, 16 bits, PCM mono. El archivo se copia al almacenamiento de SpicyAPI y se conserva 14 días. El resultado no incluye marcas de tiempo por palabra ni subtítulos.
Elegir una voz
voice_id acepta una de 30 voces prediseñadas y usa Kore de forma predeterminada. Cada voz tiene un carácter fijo: por ejemplo, Kore firme, Charon informativa, Puck animada, Enceladus entrecortada, Achernar suave, Algenib áspera, Sulafat cálida, Gacrux madura. La voz no cambia con el idioma del guion.
Dar forma a la lectura
Además de text y voice_id, estos ajustes dan forma a la lectura:
style,accentypacefijan la manera, el acento del inglés y el ritmo; si los omites, la voz conserva los suyos.instructionsrecibe texto libre sobre cómo leer, yscenedice 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.
La puntuación sigue llevando buena parte de la interpretación: las comas y los puntos suspensivos la ralentizan, y las frases cortas la hacen más conversacional.
Las indicaciones entre corchetes como [sighs] no se interpretan de forma confiable: en nuestras pruebas, el modelo a veces leía en voz alta la palabra dentro de los corchetes. Escribe los sonidos tal cual en su lugar ("Mmm…", "ahh…"). Si las indicaciones interpretadas son importantes, usa Gemini 3.8 Flash TTS.
En este modelo, la dirección enviada para una sola voz puede leerse en voz alta al comienzo del clip. Por eso, cuando una solicitud de una sola voz incluye style, accent, pace, instructions o scene, SpicyAPI la envía en el formato de dos hablantes del modelo con un segundo hablante en silencio, lo que deja las notas fuera del audio. El cobro no cambia: pagas por los segundos devueltos.
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 5.000 caracteres. Un párrafo de 270 caracteres resultó en 22–26 segundos de audio en nuestras pruebas, y la tarea mediana terminó de generarse en unos 7 segundos. El modelo se detiene a los 16.384 tokens de audio por clip.
Facturación
Facturado por segundo de audio devuelto, medido a partir del archivo. Mientras la tarea se ejecuta, se coloca una retención de 660 segundos en tu saldo, y la parte no utilizada se libera cuando la tarea se liquida. Las solicitudes fallidas no se cobran.
Contenido
SpicyAPI no añade ningún filtro de contenido. En nuestras pruebas, cada guion se leyó palabra por palabra, incluidos los más atrevidos, sin saltarse nada ni cortar ningún clip antes de tiempo.
SpicyAPI no agrega ningún filtro de contenido: los guiones NSFW se leen tal como están escritos. Eres responsable de los guiones que envías y de cómo usas el audio resultante, incluido no hacerlo pasar por las 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-3.8-flash-lite-tts/text-to-speech",
"input": {
"text": "Welcome back. Your files finished rendering a minute ago and are ready to download.",
"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.







