Skip to content

Batch transcription

POST https://api.speechrouter.ai/v1/audio/transcriptions — multipart form, OpenAI-compatible shape.

Field Default Meaning
model (required) Model slug with batch mode, e.g. openai/whisper-1
file The audio (up to 250 MB). Exactly one of file / url
url Public URL the gateway fetches instead
response_format json json · verbose_json · srt · vtt · text
language auto Language hint
diarization false Speaker labels (model support varies)
keyterms Comma-separated bias terms
provider_params JSON object string, passed through to the vendor
include_raw false Include the raw provider payload (verbose_json)
  • json{ "text": "…" }, nothing else. The pipe-into-jq format.
  • verbose_json — text plus words[] (timings, confidence, speakers), duration, language, and provider_raw when requested.
  • srt / vtt — ready-to-serve subtitle files.
  • text — the bare transcript.
Terminal window
curl -s https://api.speechrouter.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $SPEECHROUTER_API_KEY" \
-F model=speechmatics/melia-1 \
-F response_format=verbose_json \
-F file=@interview.mp3 | jq '.words[:3]'

Uploads and remote URLs are capped at 250 MB. Batch requests hold the connection until the provider finishes — allow up to 10 minutes for very long audio in your HTTP client timeout.