Transcriptions

POST /api/v1/transcriptions

Send upload_id after the file PUT, or send url for a public https link to an audio or video file. Do not send both. Private network addresses are rejected.

Body

FieldRequiredNotes
upload_idOne ofId from POST /uploads.
urlOne ofPublic https URL of the media file.
languageNoDefaults to auto. See Languages.
duration_secondsNoUsed for the credit check up front.
file_hashNosha256 hex of the file. Repeating the same hash returns the existing transcript unless force is true.
forceNotrue creates another transcript even when the hash matches.
optionsNoBooleans: speakerLabels, timestamps, summarize, sentiment, topics, and the other editor toggles.

Status

A new job returns 201. status moves from queued to processing, then completed or failed. Poll with GET. List with GET /transcriptions?limit=20&offset=0. Delete with DELETE. Delete moves the file to trash the same way the library does.

When status is completed, the object includes summary (English), segments with start, end, speaker, and text, exports, and editor_url.