Overview
MiniMax ASR turns audio into text. The current public model isasr-1.0:
- Multilingual & code-switching: without a
languagehint the model auto-detects the dominant language and handles Chinese-English code-switching; you can still pin a language via thelanguageheader. - One-shot or streaming: default is one-shot; set
stream=trueto receive incrementaldeltachunks over SSE for live captions and low-latency voice agents. - Speaker diarization: with
response_format=verbose_jsonthe response includesn_speakersand per-segmentspeakertags, answering “who said what and when”. - Precise timestamps & subtitle export:
verbose_jsonreports segment-level start/end; you can also requestsrtorvttdirectly. - Robustness: the model is specifically tuned to reduce hallucinations, delivering a significant boost in real-world usability under noise, colloquial speech and jargon.
Capabilities
verbose_json / srt / vtt enable diarization and timestamp alignment, so they cannot be combined with stream=true.Baseline specs
Audio file
ASR does not need high sample rates or stereo. Uncompressed high-fidelity audio easily blows past the 50 MB limit (500 s / 48 kHz stereo WAV ≈ 92 MB). Convert to mono 16 kHz, or use
mp3 / aac / opus — accuracy is unaffected.Supported languages
Iflanguage is omitted (or empty), multilingual / code-switching recognition is enabled and the model picks the dominant language automatically. When the language is known, pin it explicitly — it typically yields more stable results on short clips and jargon-heavy content.
Response formats
Controlled by theresponse_format parameter; the available values are:
In streaming mode
response_format must be json. Events are pushed line by line as data: <json> with fields index / delta / finish / duration (only the terminating event carries duration).
Features & code samples
Grab an API key from Account → API Keys and put it into theMINIMAX_API_KEY env var.
One-shot transcription (default)
Pin a language
Diarization with per-segment timestamps
Export SRT / VTT subtitles
Streaming
Errors
Errors follow OpenAI-style envelopes: the HTTP status equals the real error, body is{"type":"error","error":{...},"request_id":"..."}.
Further reading
Speech-to-Text API
Full parameters, response schema and error codes.
Pricing
Pricing, billing rules and usage limits for every speech model.