Introducción
Envía el texto a leer y, opcionalmente, una voz, un idioma, una velocidad y un formato de salida. La tarea devuelve un archivo de audio —MP3 a 24 kHz por defecto— con el guion leído en esa voz. Las etiquetas de habla escritas en el texto, como [laugh] o …, se ejecutan en lugar de leerse. SpicyAPI no aplica ningún filtro de contenido y los guiones se leen tal como están escritos. Se cobra por cada 1.000 caracteres del texto enviado.
| Campo | Valor |
|---|---|
| Entrada | Texto |
| Salida | Audio |
| Campo obligatorio | text — de 1 a 15,000 caracteres, se permiten etiquetas de voz |
| Campos opcionales |
|
| Resultado | Un archivo de audio; MP3, 24 kHz, 128 kbps, mono de forma predeterminada |
| Cantidad cobrada | Caracteres del texto enviado, por cada 1,000, etiquetas incluidas |
| Tiempo habitual | De 3 a 8 segundos para 170 a 320 caracteres |
| Conservación | El audio generado se conserva 14 días |
Parámetros de la solicitud
| Parámetro | Obligatorio | Descripción |
|---|---|---|
text | Sí | Las palabras que se van a decir, exactamente como están escritas, con etiquetas de voz opcionales como [laugh] o …. De 1 a 15,000 caracteres. mínimo 1 caracteres · máximo 15000 caracteres |
voice_id | No | Una de las 71 voces predefinidas, etiquetadas con nombre, género e idioma. |
language | No | El idioma de lectura como código de idioma, o auto (predeterminado) para detectarlo a partir del guion. |
speed | No | Velocidad de habla de 0.7 (más lenta) a 1.5 (más rápida); predeterminada 1.0. No cambia el precio. |
output_format | No | Codificación de audio: mp3 (predeterminado), wav, o los flujos sin encabezado pcm, mulaw y alaw para telefonía. No cambia el precio. |
sample_rate | No | Frecuencia de muestreo en Hz: 8000, 16000, 22050, 24000 (predeterminada), 44100 o 48000. Usa 8000 con mulaw o alaw para líneas telefónicas y 44100 o 48000 para trabajo de estudio. |
bitrate | No | Tasa de bits de MP3 en bits por segundo: de 32000 a 192000, predeterminada 128000. Solo aplica cuando |
text_normalization | No | Si está activado, las formas escritas como números, abreviaturas y símbolos se convierten a su forma hablada antes de leer. Desactivado de forma predeterminada. Valor predeterminado: |
optimize_streaming_latency | No | Nivel de latencia de streaming del modelo: 0 (predeterminado) mantiene la mejor calidad de audio; 1 usa un primer fragmento de audio más pequeño para que el sonido llegue antes,… |
Precios
$0.018 / 1,000 caracteres
Se cobra por cada 1,000 caracteres del texto enviado, contando espacios, puntuación y etiquetas de voz. La cotización antes de ejecutar es el precio final.
Casos de uso
Notas de voz y apps de compañía
Un comentario susurrado, una risa en el momento justo, una respiración antes de la siguiente línea: todo escrito en el guion como etiquetas, así la interpretación forma parte del texto que guardas y vuelves a reproducir.
Audiolibros y ficción por entregas
Hasta 15.000 caracteres por solicitud, una voz de narrador que se mantiene igual de capítulo en capítulo y un control de velocidad para una lectura nocturna más lenta. Ningún capítulo se filtra ni se suaviza por el camino.
Narración multilingüe
Lee el mismo guion en inglés, japonés, francés, coreano, árabe y más, con una de las cinco voces multilingües o con una voz nativa para cada idioma.
Líneas telefónicas y menús de voz
Pide μ-law o A-law a 8 kHz y el audio llega en el formato que un sistema telefónico reproduce directamente, sin paso de conversión.
Guía de prompts y consejos prácticos
Escribe el guion en text
Hasta 15,000 caracteres. Coloca [pause], [laugh], [breath] o … exactamente donde los quieras; la puntuación marca el ritmo.
Elige una voz y un idioma
voice_ides eve de forma predeterminada. Eve, Ara, Leo, Rex y Sal hablan todos los idiomas compatibles; las demás voces están ajustadas a uno solo. Deja language en auto, salvo que un guion corto o con varios idiomas salga en el idioma equivocado.Ajusta el ritmo y el formato
speed va de 0.7 a 1.5. Deja
output_formaten mp3 para reproducir, elige wav para editar, o pcm, mulaw y alaw a 8 kHz para telefonía.
Qué devuelve
Un archivo de audio por tarea: MP3 a 24 kHz, 128 kbps, mono, salvo que pidas otra cosa. 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 71 voces predefinidas; la predeterminada es eve. Eve, Ara, Leo, Rex y Sal hablan todos los idiomas compatibles. Las otras 66 están ajustadas cada una a un idioma —mandarín, ruso, italiano, hindi, francés, español, danés, vietnamita, inglés, sueco, finlandés, turco, japonés, coreano, portugués, neerlandés, polaco, tailandés, árabe o alemán— y leen mejor en él. El formulario muestra cada voz con su nombre, género e idioma.
Dirigir la interpretación con etiquetas
Escribe la interpretación en text. Las etiquetas puntuales producen un sonido en ese punto: [pause], [long-pause], [hum-tune], [laugh], [chuckle], [giggle], [cry], [tsk], [tongue-click], [lip-smack], [breath], [inhale], [exhale], [sigh]. Las etiquetas que envuelven texto cambian las palabras que contienen: <soft>, <whisper>, <loud>, <build-intensity>, <decrease-intensity>, <higher-pitch>, <lower-pitch>, <slow>, <fast>, <sing-song>, <singing>, <laugh-speak>, <emphasis>. Las etiquetas que probamos se interpretaron y nunca se leyeron como palabras.
Velocidad, idioma y formato
speed va de 0.7 a 1.5. language se detecta si queda en auto; configúralo cuando un guion corto o con varios idiomas salga en el idioma equivocado. output_format es mp3 de forma predeterminada; wav sirve para editar, y pcm, mulaw y alaw son flujos sin encabezado para telefonía: combínalos con sample_rate 8000. bitrate solo afecta al MP3. optimize_streaming_latency (0, 1 o 2) es el nivel de latencia de streaming del modelo: cuanto más alto, más pequeño es el primer fragmento de audio, con posible pérdida de calidad en los cortes entre fragmentos; 0 mantiene la mejor calidad.
Cobro
Se cobra por cada 1,000 caracteres de text, contando espacios, puntuación, saltos de línea y etiquetas. La cantidad se conoce antes de iniciar la tarea, así que la cotización es el cargo final. La voz, el idioma, la velocidad y el formato no cambian el precio. Las solicitudes fallidas no se cobran.
Contenido
SpicyAPI no añade ningún filtro de contenido. En nuestras pruebas, los guiones más fuertes que enviamos se leyeron palabra por palabra, sin saltarse nada ni cortar ningún clip.
SpicyAPI no agrega filtro de contenido: los guiones NSFW se leen tal como están escritos. Eres responsable de los guiones que envías y del uso del audio resultante, incluido no hacerlo pasar por 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": "xai/grok-tts/text-to-speech",
"input": {
"text": "Welcome back. Your files finished rendering a minute ago and are ready to download.",
"bitrate": 128000,
"language": "auto",
"voice_id": "eve",
"sample_rate": 24000,
"output_format": "mp3"
}
}'
# 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.





