Zum Inhalt springen

Oeffentliche API-Endpunkte fuer Uploads, Transkriptionsaufgaben, Transkriptionsmodi und Antworten.

Base URL:

https://api.videototext.dev

Erfolgreiche Antworten verwenden:

{
"data": {},
"meta": {}
}

Fehler verwenden Problem Details:

{
"type": "VALIDATION_ERROR",
"title": "Validation failed",
"status": 400,
"detail": "Invalid request",
"errorCode": "VALIDATION_ERROR"
}
ModusCreditsHinweise
balanced1 Credit pro MinuteStandardmodus
precision2 Credits pro MinuteOption mit hoeherer Genauigkeit
StatusBedeutung
QUEUEDDie Aufgabe wartet auf Verarbeitungskapazitaet.
PROCESSINGDie Aufgabe wird aktuell transkribiert.
SUCCEEDEDDas Transkript ist bereit.
FAILEDDie Aufgabe ist fehlgeschlagen und kann showError enthalten.
CANCELEDDie Aufgabe wurde abgebrochen.

Erstellen Sie eine signierte Upload-URL.

Anfrage:

{
"filename": "meeting.mp4",
"mimetype": "video/mp4"
}

Antwort:

{
"data": {
"uploadUrl": "https://storage.example.com/signed-upload-url",
"fileKey": "uploads/example.mp4",
"fileUrl": "https://static.example.com/uploads/example.mp4",
"uploadId": "00000000-0000-0000-0000-000000000000",
"expiresAt": "2026-06-06T10:00:00.000Z"
},
"meta": {}
}

Validieren Sie das hochgeladene Objekt, lesen Sie die Mediendauer und erstellen Sie ein Asset.

Pfadparameter:

NameTypBeschreibung
uploadIdUUIDUpload-Sitzungs-ID, die von POST /v1/uploads zurueckgegeben wurde.

Anfrage:

{
"fileKey": "uploads/example.mp4",
"fileUrl": "https://static.example.com/uploads/example.mp4",
"filename": "meeting.mp4",
"mimetype": "video/mp4",
"fileSize": 10485760
}

Antwort:

{
"data": {
"assetId": "00000000-0000-0000-0000-000000000000"
},
"meta": {}
}

Haeufige Fehler sind UPLOAD_SESSION_NOT_FOUND, UPLOAD_SESSION_EXPIRED, UPLOAD_SIZE_MISMATCH, UPLOAD_MIMETYPE_MISMATCH und UPLOAD_DURATION_UNREADABLE.

Erstellen Sie eine Transkriptionsaufgabe aus einem hochgeladenen Asset.

Informationen zur wiederholungssicheren Aufgabenerstellung finden Sie unter Idempotenz.

Anfrage:

{
"assetId": "00000000-0000-0000-0000-000000000000",
"language": "Auto",
"timestampMode": "CHUNK",
"transcriptionMode": "balanced"
}

Felder:

FeldTypErforderlichHinweise
assetIdUUIDJaAsset, das nach Abschluss des Uploads zurueckgegeben wird.
languagestringNeinStandard ist Auto. Unterstuetzte Sprachen verwenden kleingeschriebene Namen wie english, spanish oder chinese.
timestampModestringNeinCHUNK oder WORD. Standard ist CHUNK.
transcriptionModestringNeinOeffentlicher Modus-Key: balanced oder precision. Standard ist balanced.

Antwort:

{
"data": {
"task": {
"transcriptId": "00000000-0000-0000-0000-000000000000",
"status": "QUEUED",
"language": "Auto",
"timestampMode": "CHUNK",
"transcriptionMode": "balanced",
"billedCredits": "1.500000000000"
}
},
"meta": {
"pollAfterMs": 1500
}
}

Antworten zur Erstellung und zu Details einer Aufgabe enthalten immer transcriptionMode mit dem öffentlichen Modusschlüssel für Abrechnung und Ergebnisverarbeitung.

Gibt den aktuellen Aufgabenstatus und die von Clients benoetigten Transkriptergebnisfelder zurueck.

Pfadparameter:

NameTypBeschreibung
taskIdUUIDdata.task.transcriptId, zurueckgegeben von POST /v1/tasks.

Antwort:

{
"data": {
"task": {
"transcriptId": "00000000-0000-0000-0000-000000000000",
"status": "SUCCEEDED",
"showError": null,
"fullText": "Welcome to the meeting.",
"chunks": [
{
"seq": 0,
"startMs": 0,
"endMs": 2200,
"text": "Welcome to the meeting.",
"speakerKey": null,
"speakerName": null,
"wordStartIndex": 0,
"wordEndIndex": 1
}
],
"words": [
{
"text": "Welcome",
"startMs": 0,
"endMs": 600
}
],
"sourceDurationMs": 90400,
"language": "Auto",
"resultLanguage": "english",
"timestampMode": "CHUNK",
"transcriptionMode": "balanced",
"billedCredits": "1.500000000000",
"createdAt": "2026-06-06T09:00:00.000Z"
}
},
"meta": {}
}