Zur API-Referenz springen

API-Integration

Von Medien zu Text. Direkt in Ihrem Workflow.

Auf dieser Seite

Übersicht

Wandeln Sie Audio- und Videodateien mit einer einfachen REST-API in Transkripte und Untertitel um.

Senden Sie eine Medien-URL, verfolgen Sie den Transkriptionsauftrag und rufen Sie strukturierte JSON-Daten oder eine fertige Untertiteldatei ab.

HTTPS-AnfragenJSON-AntwortenAsynchrone Aufträge

Basis-URL

https://api.taption.com/v1POST/transcriptsGET/transcripts/{id}

Ihre erste Transkription

Die Transkription erfolgt im Hintergrund. Beim Erstellen eines Auftrags erhalten Sie sofort eine Antwort. Prüfen Sie den Status, bis das Ergebnis bereitsteht.

  1. Auftrag erstellen

    Senden Sie POST /transcripts mit einer direkten, öffentlichen Medien-URL. Speichern Sie die zurückgegebene id.

  2. Fortschritt prüfen

    Fragen Sie GET /transcripts/{id} alle 15–30 Sekunden ab, bis status den Wert complete oder error hat.

  3. Transkript verwenden

    Lesen Sie JSON aus data oder laden Sie bei SRT- oder VTT-Anfragen die Datei über export_url herunter.

Auftragsstatus

initializing

In der Warteschlange, wartet auf den Start. Weiter abfragen.

transcribing

Ihre Medien werden transkribiert. Weiter abfragen.

complete

Bereit. Ergebnis lesen oder Datei herunterladen.

error

Der Auftrag ist fehlgeschlagen. Lesen Sie message und beenden Sie die Abfragen.

Behandeln Sie jeden anderen Status als noch in Bearbeitung. Weitere Zwischenzustände können hinzukommen.

Authentifizierung

Senden Sie Ihren API-Schlüssel bei jeder Anfrage im Header Authorization, genau so, wie er beim Erstellen angezeigt wurde.

Authorization: <your api key>

Fügen Sie kein Bearer-Präfix hinzu.

Neue Schlüssel beginnen mit tp_live_. Der vollständige Schlüssel wird nur einmal angezeigt, beim Erstellen. Wenn Sie ihn verlieren, widerrufen Sie ihn und erstellen Sie einen neuen; ein widerrufener Schlüssel funktioniert sofort nicht mehr.

Ein aktives Abonnement und die erforderliche API-Schlüsselberechtigung sind nötig.

Bewahren Sie Ihren Schlüssel auf Ihrem Server auf. Er gewährt Zugriff auf die Transkripte und die Nutzung Ihres Kontos. Veröffentlichen Sie ihn niemals im Browsercode oder in einem öffentlichen Repository.

API-Schlüssel erstellen

Transkript erstellen

POST/transcripts

Starten Sie einen Transkriptionsauftrag für eine Mediendatei unter einer öffentlichen URL. Sobald der Auftrag in der Warteschlange steht, erhalten Sie eine Antwort mit status: "initializing".

Taption lädt die Datei direkt herunter. Links zu Freigabeseiten, etwa einer Vorschauseite von Google Drive oder Dropbox, funktionieren nicht.

media_urlstringerforderlich

Direkter Downloadlink zu Ihrer Mediendatei.

Maximal 2048 Zeichen
extensionstringerforderlich

Das Format der Mediendatei.

mp3wavm4aaacflacwmaopusmp4
languagestringerforderlich

Die in den Medien gesprochene Sprache als Sprach-Tag. Siehe die Referenz zu Sprachen.

Sprach-Tags ansehen
namestring

Anzeigename des Transkripts. Standardmäßig wird der Dateiname aus `media_url` verwendet. Längere Namen werden auf 200 Zeichen gekürzt.

Maximal 200 Zeichen
export_typestring

Ausgabeformat. Standard ist json, das den geparsten Transkriptinhalt in data zurückgibt. srt und vtt geben einen Dateilink in export_url zurück.

jsonsrtvtt
Standard: json
max_charinteger

Maximale Zeichenanzahl pro Untertitelsegment. Standard ist `16` für Chinesisch, Japanisch, Koreanisch und Kantonesisch sowie `65` für andere Sprachen. Werte außerhalb von 1–200 werden ignoriert; stattdessen gilt der Standardwert.

1–200

Antworten

200

Der Auftrag wurde erstellt und in die Warteschlange gestellt. Speichern Sie die `id`, um seinen Status zu prüfen.

400

Der Anfragetext ist ungültig. Korrigieren Sie die Anfrage vor einem erneuten Versuch. Es wird nur das zuerst gefundene Problem gemeldet.

401

Der API-Schlüssel fehlt, ist ungültig oder nicht für den API-Zugriff eingerichtet.

403

Ein aktives Abonnement und die erforderliche API-Schlüsselberechtigung sind nötig.

429

Kontolimit erreicht; kein Auftrag erstellt. Standard: Premium 10 Einreichungen/Minute und 2 unerledigte Aufträge; Corp 30/Minute und 10 unerledigte Aufträge, gemeinsam für alle Schlüssel. Limits können sich ändern. Statusabfragen zählen nicht.

500

Unerwarteter Serverfehler. Wiederholen Sie die Anfrage mit exponentiell steigender Wartezeit.

503

Einreichungslimits sind vorübergehend nicht verfügbar (`api_limits_unavailable`; es wurde kein Transkript erstellt), oder das Einreihen ist fehlgeschlagen oder konnte nicht bestätigt werden. Beachten Sie Retry-After, falls vorhanden. Wird eine `id` zurückgegeben, prüfen Sie vor einem erneuten Versuch den Status: Er kann `error` sein oder der Auftrag wird bereits verarbeitet. Ein erneuter Versuch erstellt ein neues Transkript.

Transkript abrufen

GET/transcripts/{id}

Rufen Sie den aktuellen Status und das Ergebnis eines Transkripts ab. Fragen Sie alle 15–30 Sekunden ab, solange der Auftrag bearbeitet wird.

Bei json oder ohne angegebenen Exporttyp erscheint das fertige Ergebnis in data. Bei srt oder vtt laden Sie die Datei über export_url herunter.

idstringerforderlich
Die von POST /transcripts zurückgegebene Transkript-ID.Maximal 256 Zeichen

Auch eine fehlgeschlagene Transkription gibt HTTP 200 mit status: "error" zurück. Prüfen Sie neben dem HTTP-Code auch den Auftragsstatus.

Antworten

200

Der aktuelle Status des Transkripts. Dies bedeutet nicht, dass der Auftrag erfolgreich war; lesen Sie `status`.

401

Der API-Schlüssel fehlt, ist ungültig oder nicht für den API-Zugriff eingerichtet.

403

Ein aktives Abonnement und die erforderliche API-Schlüsselberechtigung sind nötig.

404

In Ihrem Konto existiert kein Transkript mit dieser ID. Ein Transkript eines anderen Kontos liefert dieselbe Antwort.

500

Unerwarteter Serverfehler. Wiederholen Sie die Anfrage mit exponentiell steigender Wartezeit.

Das Transkriptobjekt

Anfragen zum Erstellen und zum Status geben ein JSON-Objekt zurück. Seine Felder beschreiben den Auftrag und, sobald verfügbar, dessen Ergebnis.

idstring
Die Transkript-ID. Verwenden Sie sie mit `GET /transcripts/{id}`.
statusstring
Aktueller Auftragsstatus: `initializing`, `transcribing`, `complete` oder `error`. Behandeln Sie jeden anderen Wert als noch in Bearbeitung.
dataJSON
Geparster JSON-Export, sobald bereit, für json oder ohne export_type; andernfalls eine leere Zeichenfolge.
export_urlstring
Downloadlink für einen srt- oder vtt-Export. Leer, bis das Ergebnis bereitsteht. Bei json oder ohne export_type ist dieses Feld in Statusantworten nicht enthalten.
messagestring
Zusätzliche Angaben zum aktuellen Status. Bei `transcribing` kann dies eine Fortschrittsphase wie `ANALYZING` oder `FINALIZING` sein. Wenn `status` den Wert `error` hat, beschreibt es den Fehler. Für Menschen bestimmt; nicht maschinell auswerten.
error_codestring
Optionaler maschinenlesbarer Code für ein Einreichungslimit.
limitinteger
Das geltende Kontolimit, enthalten in HTTP-429-Antworten.

Fehler und Wiederholungen

Entscheiden Sie anhand des HTTP-Statuscodes über den nächsten Schritt. Das Feld message ist für Menschen bestimmt; sein Wortlaut kann sich ändern.

API-Antworten enthalten einen X-Request-Id-Header. Geben Sie ihn an, wenn Sie sich wegen einer Anfrage an den Support wenden.

HTTP-Fehlercodes9 Codes
HTTP-Fehler und Hinweise zu Wiederholungen
HTTPUrsacheNächster Schritt
400Ungültiger Anfragetext.Korrigieren Sie zuerst die Anfrage.
401Fehlender, ungültiger oder widerrufener API-Schlüssel.Prüfen Sie Ihren API-Schlüssel.
403Ein aktives Abonnement und die erforderliche API-Schlüsselberechtigung sind nötig.Prüfen Sie Ihr Abonnement und die Berechtigungen des API-Schlüssels.
404Transkript in Ihrem Konto nicht gefunden.Prüfen Sie die Transkript-ID.
405Falsche HTTP-Methode.Verwenden Sie die dokumentierte Methode.
429Einreichungsrate oder Höchstzahl unerledigter Aufträge erreicht.Retry-After beachten und auf einen freien Auftragsplatz warten.
500Unerwarteter Serverfehler.Wartezeit exponentiell erhöhen.
503Einreichungslimits nicht verfügbar, oder das Einreihen ist fehlgeschlagen oder konnte nicht bestätigt werden.Vor einem erneuten Versuch die zurückgegebene Auftrags-ID prüfen; Retry-After beachten.
504Zeitüberschreitung der Anfrage.Wartezeit erhöhen; doppelte Aufträge vermeiden.

API-Limitfehler liefern HTTP 429 mit JSON und Retry-After in Sekunden. Die Hosting-Plattform kann auch 429, 504 oder 400 ohne JSON liefern. Vor dem Lesen des Inhalts den HTTP-Status prüfen.

Erstellungsanfragen sind nicht idempotent. Ein erneutes POST /transcripts nach einem Timeout kann ein weiteres Transkript erstellen. Enthält eine 503-Antwort eine Auftrags-ID, prüfen Sie diesen Auftrag vor einer erneuten Einreichung: Er kann fehlgeschlagen sein oder bereits verarbeitet werden.

Sprachen

Setzen Sie language auf die in Ihren Medien gesprochene Sprache. Verwenden Sie das genaue Tag aus der folgenden Liste, einschließlich eines möglichen Suffixes für Region oder Ausgabeschrift.

Unterstützte Sprachen74 Sprachen
Unterstützte Sprach-Tags für die Transkription
SpracheTag
Afrikaans (South Africa)af-ZA
Arabic (Egypt)ar-EG
Armenian (Armenia)hy-AM
Assamese (India)as-IN
Azerbaijani (Azerbaijan)az-AZ
Bengali (India)bn-IN
Bosnian (Bosnia and Herzegovina)bs-BA
Bulgarian (Bulgaria)bg-BG
Burmese (Myanmar)my-MM
Cantonese, Simplified Chinese output (Hong Kong)yue-Hant-HK-zh
Cantonese, Traditional Chinese output (Hong Kong)yue-Hant-HK-TW-zh
Cantonese, Simplified Cantonese output (Hong Kong)yue-Hant-HK
Cantonese, Traditional Cantonese output (Hong Kong)yue-Hant-HK-TW
Catalan (Spain)ca-ES
Chinese (China)zh
Chinese (Taiwan)zh-TW
Chinese & English (Simplified)zh-EN
Chinese & English (Traditional)zh-EN-TW
Croatian (Croatia)hr-HR
Czech (Czech Republic)cs-CZ
Danish (Denmark)da-DK
Dutch (Belgium)nl-BE
English (Australia)en-AU
English (United Kingdom)en-GB
English (United States)en-US
Estonian (Estonia)et-EE
Filipino (Philippines)tl-PH
Finnish (Finland)fi-FI
French (France)fr-FR
Galician (Spain)gl-ES
German (Germany)de-DE
Greek (Greece)el-GR
Gujarati (India)gu-IN
Hebrew (Israel)iw-IL
Hindi (India)hi-IN
Hungarian (Hungary)hu-HU
Icelandic (Iceland)is-IS
Indonesian (Indonesia)id-ID
Italian (Italy)it-IT
Japanese (Japan)ja-JP
Kannada (India)kn-IN
Kazakh (Kazakhstan)kk-KZ
Khmer (Cambodia)km-KH
Korean (South Korea)ko-KR
Latvian (Latvia)lv-LV
Lithuanian (Lithuania)lt-LT
Macedonian (North Macedonia)mk-MK
Malay (Malaysia)ms-MY
Malayalam (India)ml-IN
Marathi (India)mr-IN
Nepali (Nepal)ne-NP
Norwegian (Norway)no-NO
Odia (India)or-IN
Persian (Iran)fa-IR
Polish (Poland)pl-PL
Portuguese (Portugal, Brazil)pt-PT_pt-BR
Punjabi, Gurmukhi (India)pa-IN
Romanian (Romania)ro-RO
Russian (Russia)ru-RU
Serbian (Serbia)sr-SR
Slovak (Slovakia)sk-SK
Slovenian (Slovenia)sl-SI
Spanish (Spain)es-ES
Swahili (Kenya)sw-KE
Swedish (Sweden)sv-SE
Tamil (India)ta-IN
Telugu (India)te-IN
Thai (Thailand)th-TH
Turkish (Turkey)tr-TR
Ukrainian (Ukraine)uk-UA
Urdu (Pakistan)ur-PK
Uzbek (Uzbekistan)uz-UZ
Vietnamese (Vietnam)vi-VN
Zulu (South Africa)zu-ZA

Diese Liste entspricht den Spracheinstellungen von Taption und kann sich ändern. Maßgeblich ist die Sprachauswahl in Taption.

Zurück zur Übersicht