For AI agents: a documentation index is available at the root level at /llms.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Creates a live transcription session and returns a `websocket.url` for one client.
Call this from your backend with your API key. Give `websocket.url` to the browser (or any client). The URL carries a single-use ticket that expires after 60 seconds. The client opens the socket and sends raw PCM16 little-endian audio, 16 kHz, mono, as binary frames. The session sends back `partial` and `final` text. The WebSocket upgrade is not an API operation: it is documented on the capability page, not here. Use `POST /v1/realtime/transcriptions/{id}/tickets` to get a new ticket for a reconnect.
**Pricing.** A 5-credit session fee, charged when the first decoder joins, or when a session that no client connected to expires. Then 2 credits per started minute of decoded audio. When the session fails on our side (no capacity, no decoder), you pay nothing. With `finalPass: true`, the batch diarized transcription is billed by the normal audio meters on top (20 credits per minute, minimum 1 minute).
**Data.** Montreal decode, North America session state, the final pass may run in the US; no residency guarantee. The server keeps no transcript: persist the finals your client receives. Without `finalPass`, no audio is kept after close.
**Limits.** A session lasts at most 4 hours (2 hours with `finalPass`). It closes after 5 minutes without audio. It expires when no client connects within 10 minutes. A revoked API key does not end its live sessions.
MCP code mode can create a session, but it cannot stream audio. Send an `idempotency-key`: a retry with the same key and body returns the same session with a fresh ticket and the `idempotent-replay: true` header.
**Learn more:** [Realtime transcription](https://docs.cloudraker.com/capabilities/realtime-transcription)
Authentication
AuthorizationBearer
Bearer authentication of the form Bearer <token>, where token is your auth token.
Headers
idempotency-keystringOptional1-255 characters
A retry with the same key and body returns the same session.
Request
This endpoint expects an object.
finalPassbooleanOptionalDefaults to false
Archive the audio as a file and run batch diarized transcription at close. Billed by the normal audio meters (minimum 1 diarized minute).
maxDurationSecondsintegerOptional60-14400
Hard cap on received audio. Default and max 14400 (4 h); default and max 7200 with finalPass.
metadatamap from strings to stringsOptional
Kept 30 days after close. Do not put personal data here.
Connect before this time, or the session expires. Null once a client connected.
websocketobjectOptional
Only in the create response.
Errors
400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
409
Conflict Error
429
Too Many Requests Error
503
Service Unavailable Error
Creates a live transcription session and returns a websocket.url for one client.
Call this from your backend with your API key. Give websocket.url to the browser (or any client). The URL carries a single-use ticket that expires after 60 seconds. The client opens the socket and sends raw PCM16 little-endian audio, 16 kHz, mono, as binary frames. The session sends back partial and final text. The WebSocket upgrade is not an API operation: it is documented on the capability page, not here. Use POST /v1/realtime/transcriptions/{id}/tickets to get a new ticket for a reconnect.
Pricing. A 5-credit session fee, charged when the first decoder joins, or when a session that no client connected to expires. Then 2 credits per started minute of decoded audio. When the session fails on our side (no capacity, no decoder), you pay nothing. With finalPass: true, the batch diarized transcription is billed by the normal audio meters on top (20 credits per minute, minimum 1 minute).
Data. Montreal decode, North America session state, the final pass may run in the US; no residency guarantee. The server keeps no transcript: persist the finals your client receives. Without finalPass, no audio is kept after close.
Limits. A session lasts at most 4 hours (2 hours with finalPass). It closes after 5 minutes without audio. It expires when no client connects within 10 minutes. A revoked API key does not end its live sessions.
MCP code mode can create a session, but it cannot stream audio. Send an idempotency-key: a retry with the same key and body returns the same session with a fresh ticket and the idempotent-replay: true header.