Get a transcription
Read a job until it finishes. Short recordings often complete in seconds, so poll quickly at first and then every few seconds. While the job is merging it carries a provisional draft; once completed it has text, segments and diarization.
Copy finished transcripts into your own storage: they are not kept forever.
Authorizations
Your workspace secret key, sk_live_ followed by 32 hex characters. Create one in the console under Developers.
Path Parameters
The transcription's id (trn_…).
Response
Completed
An offline transcription job. Lists carry the job without text, segments, draft or diarization; GET /v2/transcriptions/{id} adds them.
x >= 0Billing: pending until the job finishes; then charged once (₹18 per hour of audio, rounded up to a paisa) or free (degraded or failed). amount_inr is the job's charge at the rate frozen when it was accepted; the wallet transaction (kind transcription, reference = the job id) records what the balance moved.
Once completed: true when the merge step was unavailable, so text is a single decoding pass without speaker roles; a degraded job is free. null until completed.
The recording's length in seconds, known once decoding has started.
x >= 0Why a failed job failed. transcription_failed and audio_too_long are the recording's fault (not audio, damaged, empty, or too long); every other code is a fault on our side, and the same recording can be submitted again. A failed job is free.
The job id; also the reference of its wallet transaction (kind transcription).
^trn_[0-9A-Z]{26}$The language you forced, or null for automatic detection.
The model that produced the transcript, once completed (mira-transcribe-offline-1).
upload, url queued → decoding → merging → completed | failed; there is no progress figure. A job typically completes in about 10 seconds plus 15% of the recording's length; diarization adds about a second.
queued, decoding, merging, completed, failed Completed jobs, GET by id only.
While merging, GET by id only: the strongest single decoding pass, readable seconds after decoding and before the merge finishes. Speaker is empty. Replaced by segments once completed.
Completed jobs, GET by id only.
The whole transcript; completed jobs, GET by id only.