LansonAI provides three live transcription APIs today, plus Voice Agent which is coming soon.
Decision table
| Scenario | API | Endpoint | Who does VAD |
|---|---|---|---|
| Live captions / dialogue | Realtime WS | WS /v1/audio/transcriptions/stream | Server |
| Pre-segmented speech clips (e.g. voice UI) | Segment HTTP | POST /v1/audio/transcriptions | Client |
| Meeting / podcast file from URL | Batch jobs | POST /v1/audio/transcriptions/jobs | Server (time slice) |
| Voice agent | Voice Agent | Coming soon | — |
::callout{icon="i-lucide-info" color="primary"}
Segment vs Batch
Segment = you already cut speech with client VAD; send multipart file, get 200 immediately. Batch = you have a long audio_url; get 202 + poll. Do not send silence to Segment — we transcribe whatever you POST.
::
Realtime Voice Context
When to use: text while the person is still speaking.
Characteristics:
→ [Realtime Overview](/docs/realtime)
Segment transcription (client VAD)
When to use: your app already detected speech boundaries (VAD) and has a short clip per utterance.
multipart/form-dataCharacteristics:
→ [Segment API](/docs/api-reference/segment-transcription) · [Client-VAD guide](/docs/guides/client-vad-segments)
Batch jobs (recorded files)
When to use: complete audio file at a public URL; processing can take minutes.
Characteristics:
workflow_id is cf_ + 64 hex (not UUID)→ [Recorded Overview](/docs/recorded) · [Batch Jobs API](/docs/api-reference/batch-jobs)
Voice Agent
Status: Coming soon
Comparison
| Dimension | Realtime WS | Segment HTTP | Batch jobs |
|---|---|---|---|
| Transport | WebSocket | HTTP POST | HTTP POST + GET poll |
| Latency | Milliseconds | ~≤1.6s sync | Minutes (async) |
| Input | PCM16LE stream | Multipart file | JSON audio_url |
| Output | Event stream | Transcript JSON | Full job JSON |
| VAD | Server | Client | Server (slice) |
| Success code | WS events | 200 | 202 |