Skip to main content

Lifecycle

  1. POST /streams creates a stream and returns a publish token.
  2. The client publishes video using publish.url and publish.token (see LiveKit client flow).
  3. Overshoot makes recent frames available for inference.
  4. The client calls POST /chat/completions with text and optional ovs:// media references.
  5. The client calls POST /streams/{id}/keepalive before the 5-minute lease expires.
  6. DELETE /streams/{id} ends the stream.
There is no public POST /streams/{id}/infer contract.