Skip to main content
Live Streaming API

Automate live streaming with the Upstream API.

Create and control scheduled, prerecorded, and 24/7 streams from code. Upload and organize media, build playback queues, manage multistream destinations, and start or stop broadcasts with one REST API.

Create a continuous stream · cURL
curl --request POST \
  --url https://studio.upstream.so/api/v1/streams \
  --header "Authorization: Bearer YOUR_API_TOKEN" \
  --header "Content-Type: application/json" \
  --data '{
    "name": "Always-on channel",
    "platform": "youtube",
    "type": "video",
    "key": "YOUR_DESTINATION_STREAM_KEY",
    "schedule": {
      "mode": "continuous",
      "continuous_start_type": "now",
      "continuous_stop_type": "never",
      "stream_duration_hours": 23,
      "stream_duration_minutes": 55,
      "break_duration_minutes": 5,
      "preserve_state": true
    }
  }'

201 response · abridged
{
  "data": {
    "id": "stream_uuid",
    "name": "Always-on channel",
    "type": "video",
    "status": "installing",
    "schedule": {
      "mode": "continuous",
      "continuous_start_type": "now",
      "continuous_stop_type": "never",
      "preserve_state": true
    }
  }
}

REST + JSON
Bearer authentication
OpenAPI 3.0.3
Postman collection

Live streaming API, explained

A live streaming API turns broadcast operations into software workflows.

A live streaming API lets an application control broadcasts without repeating every step in a dashboard. It can connect a content system, internal tool, or scheduled job to the streams it needs to run—for example, creating a channel when a campaign is approved or refreshing its queue when new media is ready.

The Upstream live streaming API is the control layer for broadcasts managed on Upstream. It handles streams, schedules, media, playback queues, settings, and destinations. It is designed for broadcast automation rather than viewer playback or CDN delivery.

What you can automate

Control the core broadcast workflow from your own application.

The same API can prepare the content, configure the stream, decide where it publishes, and control when it goes live.

Control the stream lifecycle

Create, inspect, update, start, stop, and delete streams from your application or automation.

Schedule broadcasts

Set one-off, daily, weekly, or continuous schedules, including breaks and playback resume behavior.

Build playback queues

Add, remove, and reorder video, image, primary audio, secondary audio, and external MP4 items.

Manage media at scale

Create resumable upload tickets, check processing, search media, and organize files with folders and tags.

Automate multistreaming

Add and manage YouTube, Twitch, Facebook, Instagram, Kick, Rumble, Mixcloud, custom RTMP, and SRT destinations.

Configure broadcast output

Control encoding, volume, playback order, transitions, video fit, recording, and stream metadata when your plan supports them.

Live streaming API use cases

Build around the way your team actually broadcasts.

Use the API where repeatable live streaming work needs to connect with your content, publishing, or operations systems.

Automated 24/7 channels

Keep an always-on channel supplied with media, update its queue, and run continuous schedules from your own system.

Explore 24/7 live streaming

Scheduled campaigns and premieres

Prepare prerecorded broadcasts ahead of time, set repeat rules, and start or stop them through a predictable workflow.

Explore stream scheduling

Multi-destination operations

Keep destination settings synchronized and control where each stream publishes without repeating the same setup by hand.

Explore multistreaming

Internal tools and workflows

Build a control panel, scheduled job, content pipeline, or operations tool around the broadcasts your team runs in Upstream.

Read the API reference

From API key to live

Create your first live streaming workflow in three steps.

Start with a dedicated API key and one read request. Then use the reference examples for the streams, media, queues, and destinations your integration needs.

  1. 01

    Create an API key

    Sign in to Upstream Studio, open Profile → API Keys, and create a dedicated key for the integration.

  2. 02

    Call the v1 API

    Send the key as a Bearer token to the versioned REST base URL. Successful payloads are returned under data.

  3. 03

    Build the broadcast

    Create a stream, upload or select media, prepare its queue and destinations, wait until provisioning reaches paused, then start it from code.

Base URL

https://studio.upstream.so/api/v1

Store API keys only in server-side secrets or environment variables. Never ship a key in browser code, a mobile app, or a public repository.

Open API Keys
Verify your API key
curl --request GET \
  --url https://studio.upstream.so/api/v1/user \
  --header "Accept: application/json" \
  --header "Authorization: Bearer YOUR_API_TOKEN"

A workflow you can automate

From new content to live programming—without rebuilding the stream.

Connect Upstream to your content system, catalog, or internal tools. When something is ready to publish, your integration can prepare the broadcast while your team stays focused on the programming.

  1. 01

    New content is ready

    Your CMS or operations tool triggers the workflow when a video, show, or campaign is approved.

  2. 02

    Upstream updates the broadcast

    Your integration uploads or selects the media, places it in the queue, and applies the stream settings it needs.

  3. 03

    Your channel keeps moving

    Scheduled or continuous programming uses the updated queue while your team checks status and steps in only when needed.

API or MCP?

Use the API for software. Use MCP for AI assistants.

The REST API is built for application code, scripts, cron jobs, and automation platforms. The Upstream MCP server exposes supported API operations as discoverable tools for compatible AI clients.

Explore Upstream MCP

Developer resources

Start with the format that fits your workflow.

Read endpoint details and examples in the API reference, import the Postman collection, or generate tooling from the OpenAPI specification.

FAQ

Live streaming API questions

What the Upstream API controls, how authentication works, and when to use the API or MCP.

A live streaming API lets software create or control broadcast workflows programmatically. The Upstream live streaming API is a REST API for the broadcast control layer: streams, schedules, media, playback queues, settings, and multistream destinations managed in an Upstream account.

Put your live streaming workflow behind one API.

Create a dedicated key, make your first authenticated request, and start automating streams, schedules, media, queues, and destinations.