Skip to main content
PUT
Update a Scheduled Broadcast
Updates a scheduled broadcast that hasn’t started yet. :id is the alphanumeric broadcast_id, while the body’s required scheduled_broadcast_id is the numeric scheduler ID (from create, list, or get).

Required fields

scheduled_broadcast_id, scheduled_start_ms and scheduled_end_ms are required in every request. To keep the current times, resend them unchanged. Send scheduled_end_ms as "0" for an open-ended broadcast. Every other field is optional. Fields you don’t send keep their current values.

Schedule rules

The create rules apply: the start must be in the future, a broadcast with an end lasts 1 minute to 24 hours, and broadcasts on the same source can’t overlap. Updating a broadcast that has already started returns 400.

Source

source_id is the source id of one of your stream sources, from Get Sources. Passing a stream key as source_id is deprecated and stops working on January 1, 2027; see the migration guide. The response returns source_id as the source id.
Recurring schedules are retired. A request with roll_forward set to true returns 400.

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Scopes

broadcast.read

View your live broadcasts and their chat.

broadcast.write

Manage your live broadcasts and send chat messages on your behalf.

Path Parameters

id
string
required
Pattern: ^[a-zA-Z0-9]{1,24}$

Body

application/json
scheduled_broadcast_id
string
required

Numeric scheduler id from create/list/get.

Pattern: ^[0-9]{1,19}$
scheduled_end_ms
string
required

End time, ms since Unix epoch (decimal string).

Pattern: ^[0-9]{1,19}$
scheduled_start_ms
string
required

Start time, ms since Unix epoch (decimal string).

Pattern: ^[0-9]{1,19}$
available_for_replay
boolean

Enable replay.

chat_option
string

Who can chat (numeric string): 0 default, 1 chat off, 2 everyone, 3 verified accounts, 4 accounts the host follows, 5 the host's subscribers, 6 accounts followed by an account the host follows.

Pattern: ^[0-9]{1,19}$
description
string

Description.

is_locked
boolean

Lock the broadcast.

locale
string

Locale.

manual_publish
boolean

If true, do not auto-publish at start; call POST .../live when ready.

roll_forward
boolean

Deprecated: recurring schedules are being retired and true will be rejected.

source_id
string

Source to bind: a source's id from GET /2/sources. A stream key is also accepted but deprecated; stream keys stop being accepted when the /2/users/:id/sources and /2/users/:id/broadcasts routes reach end of life on January 1, 2027.

thumbnail_media_id
string

Pre-live slate media id (numeric string).

Pattern: ^[0-9]{1,19}$
title
string

Title / status text.

Response

The request has succeeded.

data
object
errors
object[]