Before you begin
Access
See Getting Started for the prerequisites.Authentication
All requests require user-context authentication. The authenticated user owns the broadcasts accessed through these endpoints. Supported authentication methods:- OAuth 2.0 Authorization Code Flow with PKCE. Read routes require
broadcast.read. Create, update, delete, and go-live routes require bothbroadcast.readandbroadcast.write. - OAuth 1.0a user context. List and get routes accept apps with Read, Read and write, or Read, write, and Direct Messages permissions. Create, update, delete, and go-live routes require Read and write or Read, write, and Direct Messages permissions.
Base URL
Livestream source
You must create a livestream source before scheduling a broadcast. Pass the source’sid (its source id, from Get Sources) as source_id. Responses return source_id as the source id too.
For a manual go-live request, begin sending RTMP video to the source before calling the live endpoint. The source must be active for the broadcast to publish.
Timestamps and IDs
- Timestamp fields use Unix epoch time in milliseconds.
- Send timestamps and numeric IDs as decimal strings to preserve precision.
- The
broadcast_idis an alphanumeric ID used in endpoint paths. IDs are 13 or 14 characters; don’t assume a fixed length. - The
scheduled_broadcast_idis a numeric scheduler ID. Save both values returned by create, list, or get. Updates require the numeric ID in the request body.
Schedule rules
- The start time must be in the future.
- A broadcast with a scheduled end lasts 1 minute to 24 hours. Omit the end for an open-ended broadcast.
- Scheduled broadcasts on the same source can’t overlap. Open-ended broadcasts on one source must start at least 1 minute apart.
- A scheduled broadcast can be updated only before it starts, and can’t be deleted while it’s live.
- Each broadcast is scheduled once. Recurring schedules are retired:
recurrenceandroll_forward=truereturn400, andtelecast_idis ignored.
Scheduled broadcast object
state values include:
Endpoints
Recommended workflow
Automatically published broadcast
1
Create or select a livestream source
2
Create a scheduled broadcast
Leave
manual_publish omitted or set to false.3
Begin sending RTMP video
Start pushing video before
scheduled_start_ms.4
The scheduler publishes the broadcast
Publishing happens automatically at the scheduled start time.
5
Poll the get endpoint
Observe state changes via Get a scheduled broadcast.
Manually published broadcast
1
Create or select a livestream source
2
Create a scheduled broadcast
Set
manual_publish: true.3
Begin sending RTMP video
4
Go live when ready
5
Poll the get endpoint
Poll until the state is
Running.Errors and troubleshooting
Common HTTP responses:
If a go-live request fails:
- Confirm
manual_publishistrue. - Confirm the source ID is correct.
- Confirm RTMP video is actively reaching the source.
- Confirm the broadcast has not already ended or been deleted.