Skip to navigation

Media · Transcription · Start a video/audio transcription job (step 1 of 3)

View as Markdown

Step 1 — submit a media URL for speech-to-text transcription.

The response is only {id}. It does not contain the transcript and it does not contain any status flag. The STT pipeline runs asynchronously and updates the row later via provider webhooks.

Next steps:

  • Step 2: poll getTranscription with the returned id until job_status="DONE" (or "FAILED").
  • Step 3: optionally call downloadTranscriptionFile to get VTT/SRT.

Authentication

AuthorizationApi-Key

Header authentication of the form Api-Key <token>

OR
AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Request

This endpoint expects an object.
video_urlstringRequiredformat: "uri"
URL of the source video or audio file.
language_codestringOptionalDefaults to en-US

BCP-47 language code of the source audio. Defaults to "en-US".

Response

Transcription completed (the apikit middleware blocks until terminal). Response is the full TranscriptionResponse when job_status="DONE", or an {error, id, status, message} envelope when the job fails or times out.

idstringOptional
Transcription UUID. Use this with getTranscription and downloadTranscriptionFile.
titlestringOptional
creatorintegerOptional
Creator user ID.
video_urlstringOptional
Source media URL submitted for transcription.
transcribed_video_urlstring or nullOptional

URL of the captioned/burned-in video, if produced.

transcription_urlstring or nullOptional
URL of the raw transcript artifact in storage.
payloadmap from strings to anyOptional

Transcription payload. When job_status=COMPLETED, contains language_code and phrases (each with speaker, text, and words[{text, start, end, confidence}] in milliseconds).

contentmap from strings to anyOptional

Source metadata (e.g. {source, source_id}).

job_statusenumOptional

Lifecycle state of the transcription job. Terminal: DONE (success) and FAILED. All other values are non-terminal — keep polling.

statusstringOptional

Project status (PUBLIC, PRIVATE, ARCHIVED).

project_typestringOptional
Always "transcription" for this resource.
createddatetimeOptional
modifieddatetimeOptional
translation_languagestring or nullOptional
providerenumOptional
STT engine used for the job.
Allowed values: