Skip to main content
Recording features are available in the Python SDK.
After a stream session ends, you can retrieve recording artifacts including the full video, events log, thumbnail, and preview.

Capturing the Stream ID

The stream ID is provided in the on_stream_started callback or returned from start_stream(). Save this ID to retrieve recordings later:

Retrieving a Recording

Use get_recording() with the stream ID to get presigned URLs for the recording artifacts:
get_recording() can be called without an active connection. It only requires a valid API key.

Recording Properties

Listing All Recordings

Use list_stream_recordings() to get a paginated list of all your recordings:

Pagination Options

Complete Workflow Example

This example shows the full workflow: starting a stream, interacting with it, ending it, and then retrieving the recording:

Downloading Recordings

Example of downloading recording files:

Broadcast & Recordings

Broadcast streams are recorded the same way as standard interactive streams. Recordings are tied to the stream ID, not to individual spectators.
  • Starting a stream with broadcast=True does not change how recordings are created.
  • Spectators do not generate separate recordings.
  • Use the stream_id returned from start_stream() (or received via on_stream_started) to retrieve artifacts with get_recording().

Recording Types

Python dataclasses for recordings

Odyssey Client

get_recording and list_stream_recordings methods