Einführung
Senden Sie den vorzulesenden Text und optional eine von 30 Stimmen, einen Akzent, einen Stil, ein Tempo, eine Szene und einen kurzen Hinweis zum Vortrag; für ein Gespräch senden Sie statt text dialogue und speakers. Die Aufgabe liefert eine WAV-Datei (24 kHz, 16 Bit, Mono) mit dem in dieser Stimme gelesenen Skript zurück, bei einem Dialog mit bis zu zwei Stimmen. Im Skript werden Hinweise in eckigen Klammern wie [whispering], [sighs] oder [laughing] gespielt statt gelesen, und die Zeichensetzung bestimmt die Pausen. SpicyAPI wendet keinen Inhaltsfilter an: Skripte, die die offizielle App blockieren würde, werden wie geschrieben gelesen. Abgerechnet wird pro Sekunde des zurückgegebenen Audios.
| Feld | Wert |
|---|---|
| Eingabe | Text |
| Ausgabe | Audio |
| Pflichtfeld | text (1 bis 5.000 Zeichen) oder dialogue (bis zu 20 Zeilen) |
| Optionale Felder |
|
| Ergebnis | Eine WAV-Datei, 24 kHz, 16-Bit, Mono |
| Längster Clip | 16.384 Audio-Token |
| Abgerechnete Menge | Sekunden gelieferter Audiodauer, gemessen an der Datei |
| Aufbewahrung | Generierte Audiodateien werden 14 Tage aufbewahrt |
Request-Parameter
| Parameter | Pflicht | Beschreibung |
|---|---|---|
text | Nein | Die zu sprechenden Worte, genau wie geschrieben. Anweisungen in eckigen Klammern wie [whispering] oder [sighs] werden performt, nicht vorgelesen. mindestens 1 Zeichen · höchstens 5000 Zeichen |
dialogue | Nein | Ein Dialog mit bis zu zwei Stimmen, anstelle von text: bis zu 20 Zeilen, jede mit speaker (ein Name aus speakers) und text mit höchstens 250 Zeichen. mindestens 1 Einträge · höchstens 20 Einträge |
speakers | Nein | Die Besetzung für dialogue: ein oder zwei Einträge, jeweils mit einem name, auf den sich die Zeilen beziehen, einer |
voice_id | Nein | Eine von 30 vorgefertigten Stimmen, jede mit festem Charakter. Standardwert: Kore. |
style | Nein | Grundhaltung des Vortrags. Leer lassen, damit die Stimme in ihrer eigenen Grundhaltung liest. |
pace | Nein | Rhythmus der Lesung: natural, |
accent | Nein | Englischer Akzent für den Vortrag. Ohne Angabe gilt der eigene Akzent der Stimme. |
instructions | Nein | Regieanweisung in Freitext: Tempo, Stimmung, Abstand zum Mikrofon, Zuhörer. Prägt den Vortrag und wird nicht gesprochen. höchstens 1000 Zeichen |
scene | Nein | Wo und zu wem gesprochen wird, etwa „ein stilles Hotelzimmer nach Mitternacht“. Prägt den Vortrag und wird nicht vorgelesen. höchstens 500 Zeichen |
temperature | Nein | Variation zwischen Durchgängen, von 0 bis 2: Höhere Werte machen den Vortrag weniger vorhersehbar. Ohne Angabe gilt der Standardwert des Modells. |
Preis
$0.00032 / Sekunde
Abgerechnet pro Sekunde gelieferter Audiodauer. Während die Aufgabe läuft, wird ein Vorbehalt für 660 Sekunden platziert; der ungenutzte Teil wird freigegeben, sobald die Audiodauer gemessen wurde.
Anwendungsfälle
Hörbücher und Langform-Erzählungen
Kapitel, Gutenachtgeschichten und Fortsetzungsgeschichten, gelesen von einem gleichbleibenden Erzähler. Wählen Sie eine Stimme einmal und behalten Sie sie bei: Dieselbe Stimme klingt von Kapitel zu Kapitel konsistent.
Charakter- und Begleiterstimmen
Geben Sie einer Chat-Figur eine eigene Stimme. Eine [whispering]-Anweisung und kurze, gesprochen wirkende Sätze verwandeln einfachen Text in Zeilen, die wie für eine einzelne Person gemacht klingen.
Unzensierte Audiogeschichten
Ungefilterte Skripte werden wie geschrieben gelesen. In unseren Tests sprach das Modell jedes Wort der gesendeten Monologe und Erzähltexte und spielte Klammerhinweise wie Seufzer und Keuchen, statt die Tags vorzulesen.
Vertonung für Videos
Erzeugen Sie die Zeile hier und geben Sie die WAV-Datei dann an ein Talking-Avatar- oder Lip-Sync-Modell weiter, damit ein Gesicht sie performt. Die Länge des Audios bestimmt die Länge des nachgelagerten Clips.
Prompt-Leitfaden und Praxistipps
Skript als Text senden
Schreiben Sie es genau so, wie es gesprochen werden soll, einschließlich Zeichensetzung für Pausen. Bis zu 5.000 Zeichen.
Stimme wählen
voice_idist standardmäßig auf Kore gesetzt. Jede der 30 Stimmen hat einen festen Charakter – wählen Sie also einmal und behalten Sie sie für eine Serie bei.Regie direkt ins Skript schreiben
Setzen Sie Anweisungen in eckigen Klammern genau dort, wo sie passieren sollen – [whispering], [sighs], [laughing], [gasping]. Sie werden performt, nicht vorgelesen.
Was zurückgegeben wird
Eine WAV-Datei pro Aufgabe: 24 kHz, 16-Bit, Mono-PCM. Die Datei wird in den SpicyAPI-Speicher kopiert und 14 Tage aufbewahrt. Das Ergebnis enthält keine Wort-Timings oder Untertitel.
Eine Stimme wählen
voice_id akzeptiert eine von 30 vorgefertigten Stimmen und ist standardmäßig auf Kore gesetzt. Jede Stimme hat einen festen Charakter – zum Beispiel Kore fest, Charon informativ, Puck munter, Enceladus hauchig, Achernar sanft, Algenib rau, Sulafat warm, Gacrux reif. Die Stimme ändert sich nicht mit der Sprache des Skripts.
Die Vortragsweise steuern
Neben text und voice_id prägen diese Einstellungen die Lesung:
style,accentundpacelegen Grundhaltung, englischen Akzent und Rhythmus fest; ohne Angabe behält die Stimme ihre eigenen.instructionsnimmt Freitext dazu auf, wie gelesen werden soll, undscenesagt, wo und zu wem gesprochen wird. Beides wird nicht vorgelesen.temperature(0–2) legt fest, wie stark der Vortrag zwischen Durchgängen variiert.
Direkt in text:
- Anweisungen in eckigen Klammern wie
[whispering],[sighs],[laughing]oder[gasping]werden gespielt statt vorgelesen. - Kommas, Auslassungspunkte und Punkte bestimmen die Pausen.
Bei diesem Modell kann Regie, die für eine einzelne Stimme gesendet wird, am Anfang des Clips vorgelesen werden. Enthält eine Anfrage mit einer Stimme daher style, accent, pace, instructions oder scene, sendet SpicyAPI sie im Zwei-Sprecher-Format des Modells mit einem stummen zweiten Sprecher, der die Hinweise aus dem Audio heraushält. An der Abrechnung ändert das nichts: Sie zahlen für die zurückgegebenen Sekunden.
Zwei Stimmen in einem Clip
Für ein Gespräch senden Sie statt text ein dialogue und dazu speakers mit der Besetzung: ein oder zwei Einträge, jeweils mit name, voice_id und optional accent, style, pace und profile, einer kurzen Beschreibung der sprechenden Person, die nicht vorgelesen wird. Jede Zeile in dialogue ist {speaker, text}, wobei speaker einer dieser Namen ist; die Zeilen werden der Reihe nach gesprochen, bis zu 20 Zeilen mit je 250 Zeichen. Was ein Eintrag offenlässt, wird aus accent, style und pace auf oberster Ebene übernommen. Das ganze Gespräch kommt als eine WAV-Datei zurück und wird wie jede andere Anfrage pro Sekunde abgerechnet.
Länge und Timing
text akzeptiert bis zu 5.000 Zeichen. Ein Absatz mit 270 Zeichen ergab in unseren Tests 20–24 Sekunden Audio. Das Modell stoppt bei 16.384 Audio-Token pro Clip. Die meisten Aufgaben sind in unter einer Minute abgeschlossen.
Abrechnung
Abgerechnet pro Sekunde gelieferter Audiodauer, gemessen an der Datei. Während die Aufgabe läuft, wird ein Vorbehalt für 660 Sekunden auf Ihrem Guthaben platziert, und der ungenutzte Teil wird freigegeben, sobald die Aufgabe abgerechnet ist. Fehlgeschlagene Anfragen werden nicht berechnet.
Inhalt
SpicyAPI fügt keinen Inhaltsfilter hinzu. In unseren Tests wurden ungefilterte Skripte Wort für Wort gelesen, und Klammerhinweise wie Seufzer und Keuchen wurden gespielt statt vorgelesen.
SpicyAPI fügt keinen Inhaltsfilter hinzu: Skripte werden wie geschrieben gelesen, ohne jede Abschwächung. Sie sind verantwortlich für die Skripte, die Sie senden, und dafür, wie Sie die resultierende Audiodatei verwenden – auch dafür, sie nicht als die Worte einer realen Person auszugeben.
API-Schnellstart
# 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-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"
Authentifizierung, vollständiges Schema, Polling und Fehlerbehandlung stehen in der API-Referenz.







