VideoToText API

Retrieve results

Poll a transcription's status and list your transcriptions.

Get a transcription

curl https://www.transcribevideototext.com/api/v1/transcriptions/{id} \
  -H "Authorization: Bearer vtt_your_key"
{
  "id": "…",
  "status": "completed",
  "locked": false,
  "language": "en",
  "durationSeconds": 115,
  "fileName": "interview.mp3",
  "mediaType": "audio/mpeg",
  "segments": [
    { "start": 0, "end": 4200, "text": "Welcome to the show.", "speaker": "A" }
  ],
  "audioUrl": "https://…",
  "isPublic": false,
  "error": null,
  "createdAt": "2026-06-18T12:00:00.000Z"
}

Status values

StatusMeaning
pendingCreated; not yet accepted by the transcription engine.
processingIn progress.
completedDone — segments are available.
failedFailed; see error.

Poll this endpoint until status is completed or failed, or register a webhook to be notified instead of polling.

locked: true means the completed result exceeds your account's available minutes, so only a preview is returned. Top up minutes and fetch again to unlock the full transcript. audioUrl is a signed playback link, available for uploaded files only.

List transcriptions

curl "https://www.transcribevideototext.com/api/v1/transcriptions?page=1&perPage=20" \
  -H "Authorization: Bearer vtt_your_key"
{ "items": [ { "id": "…", "fileName": "…", "status": "completed", "durationSeconds": 115 } ], "total": 42 }

perPage defaults to 20 (max 50). The list is scoped to the key owner.

Delete a transcription

curl -X DELETE https://www.transcribevideototext.com/api/v1/transcriptions/{id} \
  -H "Authorization: Bearer vtt_your_key"

Deleting an in-progress job cancels it and refunds the reserved minutes.

On this page