Send a file, get a transcript.

When to use it

Recordings you already have

Calls, voicemails, uploads. Anything that is a file rather than a stream.

Captions and search

verbose_json gives you the timings to line text up with audio.

More than one speaker?

Use audio intelligence — same endpoint, speaker labels included.

Live microphone?

Use realtime. Chunking live audio into POSTs loses the turn boundaries.

Request

Pass language when you know it. Auto-detection is decided from the opening seconds, so a recording that starts with noise, hold music, or a greeting in a different language can be identified wrongly — and once it is, the whole transcript is in the wrong language.

Timings and segments

verbose_json adds the detail you need to line a transcript up with audio:
Use it to build captions, jump a player to a phrase, or align a transcript with a recording.

Choosing a model

Two tiers, and the difference is whether you need to know who spoke. Reach for nur-stt-v1-pro when more than one person is talking — a meeting, an interview, a two-sided call. It also reports whether each turn was on mic, off mic, or too faint to trust, which is what lets you tell a bad recording from a bad transcript. See Audio intelligence.
Read GET /v1/audio/models rather than hardcoding an id. Speech tiers are opt-in per environment, so a deployment only advertises what it can serve.

Live audio

This endpoint is for audio you already have. For a microphone, use realtime — it streams, and it does its own end-of-turn detection. Do not chop live audio into repeated POSTs. It costs a round trip per chunk, and it cuts turns at arbitrary boundaries rather than where someone stopped talking, which is what makes the difference between a transcript you can read and a wall of fragments.

Going further

Audio intelligence

Who said what, when — diarized long-form transcription.

Realtime

Live conversation, with turn detection.