Skip to content

PrerecordedView as MarkdownView this page as plain textOpen in ClaudeAsk questions about this pageOpen in ChatGPTAsk questions about this page

The REST API provides speech-to-text transcription for complete audio files. You upload an audio file and receive the full transcript in the response.

How It Works

  1. Authenticate — Include an authentication header in your request.
  2. Configure — Use query parameters to set the audio encoding and which fields to include in the response.
  3. Upload audio — Send the audio file as the request body with Content-Type: application/octet-stream.
  4. Receive transcript — The server processes the entire file and returns the transcript as JSON.

See the API reference for full details on fields and error codes.

Audio Format Detection

When the encoding query parameter is set to auto (the default), the server automatically detects the audio format from the uploaded file. Most common formats (WAV, M4A, MP3, OGG, FLAC, WebM, etc.) are supported. If you know the file is a seekable media container, you can set encoding=m4a, m4v, mp4, mov, 3gp, or 3g2 explicitly. If you are sending raw audio without container headers, set the encoding parameter explicitly (e.g., pcm_s16le for raw PCM, or mulaw / alaw for G.711 telephony audio) along with sample_rate and channels.

Language

The server auto-detects the language by default; pass the language query parameter to pin a specific one, or a comma-separated list (e.g. language=nl,en) to constrain detection to those candidates. See Languages for the supported set.

Set include_language=true to include the detected language in the response.

Diarization

Pass diarize=true to label transcribed speech by speaker. The response is split into per-speaker segments. See Diarization.