Worder API

Generiere Sprache aus echten, verifizierten menschlichen Stimmen — programmatisch. Bezahlt wird pro Sekunde generiertes Audio.

Warum mit Worder entwickeln?

Ethisch beschaffte Stimmen

Jede Stimme wird vom Sprecher selbst hochgeladen und per Video verifiziert. Keine gescrapten Daten.

Abrechnung pro Sekunde

Jeder Sprecher legt seinen Sekundenpreis fest. Du zahlst nur für das Audio, das du generierst, oder sparst mit Abo-Stufen.

Sprecher behalten 90 %

Nach Kreditkarten- und KI-Generierungsgebühren behalten Sprecher 90 % jedes Verkaufs. Auszahlungen laufen über Stripe Connect.

Schnellstart

1. API-Schlüssel holen + Guthaben aufladen

Erstelle ein Konto und öffne dann Dashboard → Entwickler-API, um einen Schlüssel zu erstellen. Lade Guthaben auf (mindestens 5 $) — jede Generierung wird mit deinem Guthaben oder einem Abo verrechnet, das du bei einem Sprecher hast.

2. Stimme + Hörprobe finden

curl https://worder.com/api/v1/voices \
  -H "Authorization: Bearer wdr_YOUR_API_KEY"

Liefert Stimmen mit IDs, Hörproben, Sprachen, Sekundenpreisen und Abo-Stufen. Oder stöbere auf dem Marktplatz und kopiere die Stimmen-/Hörproben-ID von einer beliebigen Hörprobenseite → „Per API generieren“.

3. Sprache generieren

curl -X POST https://worder.com/api/v1/generate \
  -H "Authorization: Bearer wdr_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "voice_id": "VOICE_ID",
    "sample_id": "SAMPLE_ID",
    "text": "[happy] Hello, this is a test of the Worder API. [pause 1] [calm] Now let us discuss the details."
  }'

Liefert eine signierte URL zur generierten WAV-Datei, die Anzahl der erzeugten Sekunden, den berechneten Betrag und ob die Abrechnung über ein Abo oder dein Guthaben erfolgt ist.

Stimmtypen

Einzel-Emotion

Eine Hörprobe. Das gesamte Skript wird in einem einheitlichen Ton generiert. Regieanweisungen sind nicht verfügbar. Ideal für Erzählungen, Durchsagen und Inhalte mit gleichbleibendem Stil.

Multi-Emotion

13 emotionale Stile, vom Sprecher aufgenommen. Käufer wechseln mit Regieanweisungen wie [happy], [angry], [calm] mitten im Skript die Emotion. Ideal für Werbung, Storytelling, Figuren und dynamische Inhalte.

Verfügbare Tags: normal, excited, happy, confident, fast, calm, surprised, angry, thoughtful, sad, annoyed, scared, nervous.

Das Feld voiceType in der API-Antwort zeigt, um welchen Typ es sich handelt. Mit descriptiveTags (bis zu 5 Stichwörter wie „tief“, „warm“, „professionell“) suchst du nach Stimmen mit einer bestimmten Eigenschaft.

API-Referenz

GET/api/v1/voices

Listet Stimmen auf, die per Video verifiziert wurden und mindestens eine Hörprobe haben.

Query-Parameter

language — Nach Sprache filtern (z. B. "English")

search — Namenssuche ohne Beachtung der Groß-/Kleinschreibung

limit — Ergebnisse pro Seite (Standard 20, max. 100)

offset — Offset für die Seitennavigation

Antwort

{
  "voices": [
    {
      "id": "...",
      "name": "Professional Narrator",
      "language": "English (United States)",
      "accent": null,
      "voiceType": "MULTI_EMOTION",
      "descriptiveTags": ["deep", "warm", "professional"],
      "samples": [
        { "id": "...", "label": "normal" },
        { "id": "...", "label": "happy" },
        { "id": "...", "label": "angry" }
      ],
      "user": {
        "id": "...",
        "name": "Sarah Mitchell",
        "pricePerSecondCents": 5,
        "volumeDiscounts": [
          { "threshold": 3600, "discountPercent": 20 }
        ],
        "storefront": { "slug": "sarahmitchell" }
      }
    }
  ],
  "total": 42,
  "limit": 20,
  "offset": 0
}
POST/api/v1/generate

Generiert Sprache aus einer Stimme. Hast du ein aktives Abo bei diesem Sprecher, werden die Sekunden vom Abo abgezogen. Andernfalls wird dein Guthaben zum Sekundenpreis des Sprechers belastet.

Request-Body (JSON)

voice_id erforderlich — Stimmen-ID

sample_id — Standard-Hörprobe für Text ohne Tag (standardmäßig die erste Hörprobe)

text erforderlich — Zu synthetisierender Text (min. 30, max. 5.000 Zeichen). Unterstützt Regieanweisungen und Pausen-Tags (siehe unten).

Regieanweisungen

Setze Teile deines Skripts in eckige Klammern mit einem Tag-Namen, der einem Hörproben-Label der Stimme entspricht. Worder generiert jeden Abschnitt mit der passenden Hörprobe und fügt das Audio anschließend zusammen.

"text": "[happy] Welcome to the show! [confident] Now let's talk business."

Welche Tags verfügbar sind, hängt von der Stimme ab — sieh dir das Feld samples[].label aus /api/v1/voices an. Text ohne Tag verwendet die angegebene sample_id oder die erste Hörprobe. Bei einer Multi-Emotion-Stimme liefert ein Tag, der keiner ihrer Hörproben entspricht, 422 mit den verfügbaren Tags der Stimme — es wird nichts generiert oder berechnet. Skripte mit den 13 Standard-Tags funktionieren bei jeder Stimme, die sie anbietet.

Pausen-Tag

Fügt Stille zwischen Abschnitten ein. Gib die Dauer in Sekunden an (ganzzahlig oder dezimal, max. 30). Text nach einer Pause wird im Stil des vorherigen Tags fortgesetzt.

"text": "[excited] Big news! [pause 2] [calm] But let's take it one step at a time."
"text": "[calm] Take a breath. [pause 1.5] Now continue."
"text": "[happy] Hola! [pausa 3] [calm] Ahora hablemos con calma."

Sowohl [pause N] als auch [pausa N] werden unterstützt (funktioniert in jeder Sprache).

Emphasize-Tag

Mit [emphasize] erhöhst du die Lautstärke des nächsten Abschnitts. Der Stimmstil ändert sich nicht — es wird dieselbe Hörprobe wie beim vorherigen Tag verwendet. Text nach [emphasize] wird im Stil des vorherigen Tags fortgesetzt.

"text": "[calm] Take a deep breath. [emphasize] Now give it everything you've got!"

Ebenfalls unterstützt: [emphasis], [enfatizar], [énfasis].

Aussprache-Überschreibungen

Mit {written|spoken} steuerst du, wie bestimmte Wörter ausgesprochen werden. Die TTS-Engine erhält die „gesprochene“ Fassung; die Qualitätsprüfung vergleicht mit der „geschriebenen“ Fassung.

"text": "{Pulse|Pols} es la energía que necesitas. {Nike|Naiki} también lo sabe."

Nützlich für Markennamen, Fremdwörter oder Fachbegriffe, die die TTS falsch ausspricht.

Anforderungen an Abschnitte

Jeder getaggte Abschnitt muss mindestens 30 Zeichen lang sein. Kürzere Abschnitte erzeugen unzuverlässiges Audio. Sind mehrere Abschnitte zu kurz, liefert die API alle Fehler auf einmal.

Nach der Generierung transkribiert Worder die Ausgabe mit Whisper und vergleicht sie mit der Eingabe. Liegt die Übereinstimmung unter 90 %, wird die Generierung abgelehnt (422) — dir wird nichts berechnet.

Antwort

{
  "audio_url": "https://...",
  "voice_id": "...",
  "sample_id": "...",
  "seconds_generated": 12,
  "cost_cents": 60,
  "charged_via": "credits",
  "subscription_id": null,
  "balance_cents": 9940
}

Fehlercodes

400 — Validierungsfehler (Text zu kurz, Sprache passt nicht, Abschnitt zu kurz). Kann mehrere Fehler enthalten, durch Zeilenumbrüche getrennt.

401 — Ungültiger oder fehlender API-Schlüssel

402 — Nicht genug Guthaben (Antwort enthält required_cents, balance_cents)

404 — Stimme oder Hörprobe nicht gefunden

422 — Qualitätsprüfung nicht bestanden (Antwort enthält similarity, transcript, quality_failed: true). Dir wird nichts berechnet.

502 — Generierung fehlgeschlagen (Fehler des TTS-Dienstes)

Preise

Abrechnung pro Sekunde — jeder Sprecher legt seinen eigenen Preis fest (mindestens 0,01 $/Sek.). Du zahlst nur für die tatsächlich erzeugten Audiosekunden.

Abos — sichere dir ein monatliches Kontingent an Sekunden (1 h, 10 h oder 100 h) und spare 20–60 % gegenüber dem Sekundenpreis. Abos werden in der Oberfläche gekauft und gelten automatisch, wenn du die API aufrufst.

Guthaben — einmalige Aufladungen deines Kontos, mindestens 5 $. Das Guthaben wird belastet, wenn kein Abo eine Generierung abdeckt.

Erlösaufteilung — Kreditkarten- und KI-Generierungsgebühren werden vorab abgezogen. Vom Rest behalten Sprecher 90 % (ausgezahlt über Stripe Connect) und Worder 10 %.