Asynchrones Speech to Text
Anleitung · Setzt voraus, dass Sie den Speech to Text- Schnellstart abgeschlossen haben.
Überblick
Webhooks ermöglichen Ihnen, automatische Benachrichtigungen zu erhalten, wenn Ihre Speech to Text-Transkriptionsaufgaben abgeschlossen sind. So müssen Sie die API nicht fortlaufend nach Statusaktualisierungen abfragen. Das ist besonders nützlich für lang laufende Transkriptionsaufgaben oder bei der Verarbeitung großer Mengen an Audiodateien.
Wenn eine Transkription abgeschlossen ist, sendet ElevenLabs eine POST-Anfrage mit den Transkriptionsergebnissen an Ihre angegebene Webhook-URL, einschließlich Transkripttext, Spracherkennung und Metadaten.
Webhooks verwenden
Dieser Leitfaden setzt voraus, dass Sie Ihren API-Schlüssel und Ihr SDK eingerichtet haben. Schließen Sie zuerst den Schnellstart ab, falls noch nicht geschehen.
Webhook erstellen oder bearbeiten
Öffnen Sie im ElevenLabs-Dashboard Entwickler > Webhooks. Klicken Sie auf Webhook erstellen oder bearbeiten Sie einen vorhandenen Webhook.

Konfigurieren Sie den Webhook mit:
- Name: Ein aussagekräftiger Name für Ihren Webhook
- Callback-URL: Ihr öffentlich zugänglicher HTTPS-Endpunkt
- Webhook-Authentifizierungsmethode: Entweder
HMACoderOAuth. Die Implementierung des Verifizierungsmechanismus liegt beim Client. ElevenLabs sendet Header, die eine Verifizierung ermöglichen, erzwingt sie jedoch nicht. - Ereignisse: Wählen Sie Transkription abgeschlossen aus.
Webhook-Payload
Wenn eine Transkription abgeschlossen ist, erhält Ihr Webhook-Endpunkt eine POST-Anfrage mit den Transkriptions- und Webhook-Daten:
Weitere Informationen zur Struktur der Antwort finden Sie in der Referenz zur Speech-to-Text-API.
Wenn die Anfrage eine transcript_edit-Anweisung enthielt, enthält das Objekt transcription außerdem ein Feld edited_transcript mit dem bearbeiteten Text.
Wenn die Transkription fehlschlägt, erhält Ihr Endpunkt stattdessen ein webhook_error-Ereignis. Es enthält kein data-Objekt: Es übermittelt eine request_id auf oberster Ebene (dieselbe ID, die beim Akzeptieren der Anfrage zurückgegeben wurde), eine error_message und die webhook_metadata der Anfrage.
Webhook-Endpunkt implementieren
Hier ist ein Beispiel für die Implementierung eines Webhook-Endpunkts zur Verarbeitung eingehender Benachrichtigungen:
Sicherheitsaspekte
Signaturverifizierung
Verifizieren Sie immer Webhook-Signaturen, um sicherzustellen, dass Anfragen von ElevenLabs stammen.
HTTPS-Anforderung
Webhook-URLs müssen HTTPS verwenden, um die sichere Übertragung von Transkriptionsdaten zu gewährleisten.
Ratenbegrenzung
Implementieren Sie eine Ratenbegrenzung für Ihren Webhook-Endpunkt, um Missbrauch zu verhindern:
Fehlerantworten
Geben Sie einen 2xx-Statuscode zurück, um den Webhook zu bestätigen.
Standardmäßig werden Speech to Text-Transkriptionswebhooks einmal zugestellt. Jede Antwort, die nicht 2xx ist, gilt als fehlgeschlagene Zustellung. Wiederholte Fehler deaktivieren den Webhook automatisch.
Wenn Sie Wiederholungsversuche für den Webhook aktivieren, werden fehlgeschlagene Zustellungen (5xx, 408, 429 oder Verbindungsfehler) bis zu 5-mal erneut versucht: etwa 30 Sekunden, 2 Minuten, 8 Minuten, 30 Minuten und 30 Minuten nach dem vorherigen Versuch. Andere 4xx-Antworten werden nicht erneut versucht. Jeder Versuch für dasselbe Ereignis enthält denselben Header ElevenLabs-Webhook-Delivery-Id, sodass Ihr Handler Duplikate ignorieren kann.
Anfragen mit enable_logging auf false (Modus ohne Speicherung) erhalten bei aktivierten Wiederholungsversuchen bis zu 2 schnelle Wiederholungen: 5 Sekunden und 30 Sekunden nach dem vorherigen Versuch. Das Transkript wird niemals gespeichert.
Wenn eine Zustellung weiterhin fehlschlägt, rufen Sie das Ergebnis mit Transkript abrufen über die transcription_id ab, die beim Akzeptieren der Anfrage zurückgegeben wurde. Transkripte werden für Anfragen mit enable_logging auf false nicht gespeichert.
Webhooks testen
Lokale Entwicklung
Verwenden Sie für lokale Tests Tools wie ngrok, um Ihren lokalen Server öffentlich zugänglich zu machen:
Verwenden Sie während der Entwicklung die bereitgestellte HTTPS-URL als Ihren Webhook-Endpunkt.
Webhook-Tests
Sie können Ihre Webhook-Implementierung testen, indem Sie eine Transkriptionsanfrage stellen und Ihren Endpunkt überwachen: