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.