Why use the CLI
- One command away — Install the CLI, set your API key, run
gladia transcribe. - Flexible output — Get plain text, JSON, SRT, or VTT straight to stdout.
- Full feature set — Speaker diarization, multilingual configuration, and model selection (
solaria-1,solaria-3). - Files or URLs — Transcribe a local recording or a remote link, with no download step.
- Pipe-friendly — Machine-readable output for shell scripts and CI pipelines.
Install
Quick start
API key setup
Provide your API key in one of three ways (checked in this order):Everyday examples
Commands
| Command | Description |
|---|---|
transcribe <file-or-url> | Transcribe an audio file or URL |
auth set <key> | Save API key to ~/.gladia |
languages | List supported ISO 639-1 codes |
completion <shell> | Generate shell tab completion (bash, zsh, fish, powershell) |
Output formats
Use-o or --output to control how the transcript is returned:
| Format | Description |
|---|---|
text | Plain transcript (default) |
json | Structured JSON transcript |
json-full | Full API response as JSON |
srt | SubRip subtitles |
vtt | WebVTT subtitles |
Transcription options
| Flag | Default | Description |
|---|---|---|
-o, --output | text | Output format: text, json, json-full, srt, vtt |
--language | — | Expected language(s), comma-separated (en or en,fr,de); narrows detection |
--cs, --code-switching | off | Re-detect language on each utterance (mixed-language audio; solaria-1 only) |
--diarize | off | Identify speakers in the transcript |
--model | — | STT model: solaria-1 or solaria-3. Solaria-3 accepts at most one --language (en, fr, de, es, or it) and does not support code switching. |
-v, --verbose | off | Show progress while polling |
--gladia-key — API key if not set in the environment or ~/.gladia.
Language
| Goal | What to run |
|---|---|
| Auto-detect | gladia transcribe <file> |
| Constrain detection | --language en,fr,de |
| Code switching | --code-switching (+ optional --language hints) |
--languagelimits which language(s) Gladia considers. A comma-separated list is a hint list, not per-utterance switching.--code-switchingturns on per-utterance language detection. Add--languageto restrict which languages may appear. Not available withsolaria-3.
Diarization
Use--diarize when you need who spoke when. Speaker labels are included in the output (for example, Speaker 0: …).
Shell completion
When you install viainstall.sh or install.ps1, the script offers to configure tab completion for your shell. To skip the prompt (for example in CI), set GLADIA_NO_COMPLETION_PROMPT=1.
You can also set up completion manually:
gladia completion --help for full instructions per shell.
Next steps
Get your API key
Create an API key on the Gladia dashboard
Gladia CLI on GitHub
Source code, issues, and releases
Pre-recorded STT quickstart
Learn more about Gladia transcription features