Designed for browser microphones and softphones that produce audio incrementally. Each session supports exactly one SSE consumer at a time.Documentation Index
Fetch the complete documentation index at: https://docs.illocution.ai/llms.txt
Use this file to discover all available pages before exploring further.
Initialize Session — POST /analyze/live/start
Optional hint used to infer the extension.
Explicit extension (e.g.,
.wav). Defaults to .mp4.Session lifetime (60-3600). Default 900s.
Response
Upload Chunks — POST /analyze/live/{session_id}/chunk
Live session identifier from
/analyze/live/start.Zero-based, must equal
next_chunk_seq.PCM/Opus audio chunks.
received_bytes and updated next_chunk_seq. Out-of-order uploads return 409 Conflict.
Subscribe to Events — GET /analyze/live/{session_id}/events
Live session identifier.
- Returns the same SSE catalog as
/analyze/stream. - Only one connection allowed; a second call returns
409. - When streaming completes, the session is cleaned up.
Control Session — POST /analyze/live/{session_id}/control
Live session identifier.
One of:
finalize, cancel, keepaliveOptional reason for the action.
Actions
| Action | Effect |
|---|---|
finalize | Stop ingest and begin final processing stages. |
cancel | Abort processing; SSE clients receive error. |
keepalive | Extend TTL without uploading media. |
status, detail, and new expires_at.
Live Capture Python Cookbook (Async)
Async Python examples using
httpx for implementing live capture workflows with asyncio.Live Capture Python Cookbook (Sync)
Synchronous Python examples using
requests for WSGI apps, Lambda, and non-async environments.