Livepush Developers

Stream Recordings

List stream recordings by stream

GET https://octopus.livepush.io/streams/{stream_id}/recordings

Base URL https://octopus.livepush.io — Core Streams & Media APIs

Returns the list of recordings generated for a specific live stream.

This endpoint is useful for retrieving all historical recordings associated with a single stream.

Authorization

Send a valid access token in the Authorization header.

  • bearerAuth — Bearer token (JWT)
headers.txt
Authorization: Bearer YOUR_API_TOKEN

Try it

GET https://octopus.livepush.io/streams/{stream_id}/recordings — This call only reads data.

Parameters

Path parameters

  • stream_id string required
    Unique identifier of the live stream

Code samples

request.sh
curl -X GET 'https://octopus.livepush.io/streams/<stream_id>/recordings' \
  -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://octopus.livepush.io/streams/<stream_id>/recordings', {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
  },
});

if (!response.ok) {
  throw new Error(`Livepush API error ${response.status}`);
}

const data = await response.json();
import requests

headers = {
    'Authorization': 'Bearer YOUR_API_TOKEN',
}

response = requests.get('https://octopus.livepush.io/streams/<stream_id>/recordings', headers=headers, timeout=30)
response.raise_for_status()
data = response.json()

Responses

List of stream recordings

application/json

Array of Recording.

  • id string
    Public identifier of the recording
  • _id string
    Internal database identifier
  • user string
    User identifier who owns the recording
  • stream string
    Live stream identifier associated with the recording
  • streamKey string
    RTMP stream key used during the recording session
  • time string<date-time>
    Time when the recording session started
  • updatedAt string<date-time>
    Last update timestamp of the recording
  • sourceReadyAt string<date-time>
    Time when the recording source became available
  • duration number<float>
    Duration of the recording in seconds
  • size number
    Size of the recording file in bytes
    nullable
  • queued boolean
    Indicates whether the recording is queued for processing
  • unlocked boolean
    Indicates whether the recording is unlocked for access
  • watchable boolean
    Indicates whether the recording can be played
  • exportable boolean
    Indicates whether the recording can be exported
  • cleanable boolean
    Indicates whether the recording is eligible for cleanup
  • cleaned boolean
    Indicates whether the recording has been cleaned
  • recordingTier string
    Recording tier associated with the account
  • vendor string
    Backend vendor handling the recording
  • sourceHost string
    Internal source host handling the recording
  • ns string
    Namespace identifier
  • preKey string
    Internal object storage key for the recording file
  • screenshot string
    Screenshot URL or identifier for the recording
    nullable
  • error string
    Error message if recording processing failed
    nullable
  • isRecordingDisabled boolean
    Indicates whether recording was disabled for the stream
  • mediaInfo object
    Technical media metadata of the recording
    • codec string
    • profile string
    • fps number
    • width integer
    • height integer
    • pix_fmt string
Example 200 response response.json
[
  {
    "id": "recLuF0EKePs",
    "_id": "6956c9137a06c9debc18863e",
    "user": "0PoArI-B3",
    "stream": "stZ-mQc33cFxfeRH",
    "streamKey": "string",
    "time": "2026-01-31T09:00:00.000Z",
    "updatedAt": "2026-01-31T09:00:00.000Z",
    "sourceReadyAt": "2026-01-31T09:00:00.000Z",
    "duration": 390.465,
    "size": 0,
    "queued": false,
    "unlocked": false,
    "watchable": false,
    "exportable": false,
    "cleanable": false,
    "cleaned": false,
    "recordingTier": "c_startup",
    "vendor": "flu",
    "sourceHost": "string",
    "ns": "string",
    "preKey": "string",
    "screenshot": "string",
    "error": "string",
    "isRecordingDisabled": false,
    "mediaInfo": {
      "codec": "h264",
      "profile": "Main",
      "fps": 30,
      "width": 1920,
      "height": 1080,
      "pix_fmt": "yuv420p"
    }
  }
]

Unauthorized

Stream not found