Poll transcription status
Agent-friendly polling contract: while the request is in flight the response carries a Retry-After header (seconds) and body fields etaSeconds + nextPollSeconds — sleep on Retry-After and re-poll. status walks queued → downloading → transcribing → analyzing → complete (user-facing stage folds downloading into transcribing). Terminal statuses (complete, failed, refunded) drop Retry-After. On complete, fetch the transcript via GET /v1/transcripts/ — the unlock was granted at submission. refunded means the pipeline failed and the rows were returned.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Response
Success
Transcription request id (UUID). Null only in the degenerate submit response for a video you already own that has no request history.
YouTube video id (11 characters).
Request status. Values: queued (accepted; audio download not started), downloading (fetching the video audio), transcribing (premium speech-to-text is running), analyzing (entity/commercial analysis is running), complete (premium transcript is servable via GET /v1/transcripts/{video_id}), failed (reserved terminal failure value; failures currently surface as refunded), refunded (terminal failure; the charged rows were returned and the unlock this submission bought was revoked).
queued, downloading, transcribing, analyzing, complete, failed, refunded User-facing stage: downloading folds into transcribing. Values: queued (waiting to start), transcribing (downloading or transcribing), analyzing (analysis running). Null for terminal statuses.
queued, transcribing, analyzing, null What this request charged: rows and 15-minute blocks. rows is 0 when a prior unlock made the submission free.
When the request was submitted.
Estimated SECONDS until completion, re-derived from live pipeline telemetry on every poll. Only present while the request is in flight.
Recommended SECONDS to sleep before the next poll (also sent as the Retry-After header). Only present while the request is in flight.
Failure reason. Only present when status is failed or refunded.
True when the charged rows were returned. Only present when status is failed or refunded.
When the request reached a terminal status. Absent while in flight.