Livepush Developers

Stream Scheduler

Schedule a pre-recorded live stream

POST https://octopus.livepush.io/streams/{stream_id}/config/scheduler/events

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

Schedules a pre-recorded live stream to start at a specific date and time using the configured playlist.

This endpoint is used for both one-time scheduled events and looping (24/7) streams.

Authorization

Send a valid access token in the Authorization header.

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

Try it

POST https://octopus.livepush.io/streams/{stream_id}/config/scheduler/events — This call changes live data on your account.

Parameters

Path parameters

  • stream_id string required
    Unique identifier of the pre-recorded live stream

Request body

application/json required

  • label string required
    Human-readable label for the scheduled event
  • datetime string<date-time> required
    Scheduled start time in ISO 8601 (UTC)
  • immediateStart boolean
    Whether the stream should start immediately
  • loop boolean
    Whether the event respects looping configuration
  • videos string[]
    Optional list of video IDs for this event
Example request body response.json
{
  "label": "string",
  "datetime": "2026-01-31T09:00:00.000Z",
  "immediateStart": false,
  "loop": false,
  "videos": [
    "string"
  ]
}

Code samples

request.sh
curl -X POST 'https://octopus.livepush.io/streams/<stream_id>/config/scheduler/events' \
  -H 'Authorization: Bearer YOUR_API_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "label": "string",
    "datetime": "2026-01-31T09:00:00.000Z",
    "immediateStart": false,
    "loop": false,
    "videos": [
      "string"
    ]
  }'
const response = await fetch('https://octopus.livepush.io/streams/<stream_id>/config/scheduler/events', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "label": "string",
    "datetime": "2026-01-31T09:00:00.000Z",
    "immediateStart": false,
    "loop": false,
    "videos": [
      "string"
    ]
  }),
});

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

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

headers = {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json',
}

payload = {
    "label": "string",
    "datetime": "2026-01-31T09:00:00.000Z",
    "immediateStart": False,
    "loop": False,
    "videos": [
        "string"
    ]
}

response = requests.post('https://octopus.livepush.io/streams/<stream_id>/config/scheduler/events', headers=headers, json=payload, timeout=30)
response.raise_for_status()
data = response.json()

Responses

Stream scheduled successfully

Unauthorized

Stream not found