Start a stream
Starts the stream now. Allowed from draft, scheduled (it starts now instead of at its window), stopped, failed and invalid; any other state is 409 STREAM_ILLEGAL_TRANSITION. It first runs the checks GET /streams//readiness runs, plus a YouTube live-eligibility check; when one fails the answer is still 200, with the stream in state invalid (GET /streams//readiness says why; fix it and start again). 422 STREAM_GUARD_FAILED (the problem also carries reason and cause) is a refusal at the moment of starting. The stream plays its playlists as they are when it starts, so edits made while it is not live need no publish. Answers once the start is accepted (state preparing): it is live within about a minute, longer while media is prepared.
Authorizations
OAuth 2.1 authorization-code flow with PKCE.
Headers
Workspace this request operates in — the workspace id (wksp_…) or the organization id, from GET /workspaces. Required with an API key, which carries no workspace (400 WORKSPACE_REQUIRED without it). With an OAuth token it defaults to the workspace the token was issued for. Responds 403 WORKSPACE_FORBIDDEN when the caller is not a current member, rather than falling back to another workspace.
Optional client-generated key. A repeated request with the same key, method and path (by the same caller in the same workspace) replays the original response, with Idempotency-Replayed: true, for 24 hours instead of running again — safe retries. The same key with a different body is refused with 422 IDEMPOTENCY_KEY_REUSED (nothing runs): use a new key for each new request. A 5xx answer is not remembered (a retry runs).
Path Parameters
Resource identifier.
Response
Successful response.
draft, invalid, scheduled, preparing, activating, active, failing, failed, stopping, stopped Outputs in creation order.
f_24, f_25, f_30, f_60 q_720p, q_1080p, q_1440p, q_2160p Also publish to YouTube's backup ingest, for redundancy. Doubles the streaming cost while live.
The scene a stream plays (a live, designed stream) instead of its video playlist. Scenes are made and published with the Scenes API — its OpenAPI document is GET /v1/scenes/openapi.json. Publish the scene before attaching it with PUT /v1/streams/{id}/scene.
none, daily, weekly Weekdays a weekly window starts on, as the UTC weekday of scheduleStartAt.
Empty = every 7 days from the anchor. Always empty unless scheduleRepeat is weekly.
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY Storage tier for this stream's media. 'standard' suits typical playlists and is included. 'large' is for big playlists: storage is provisioned to fit your content and grows as you add to it, billed per GiB-month. Takes effect at the next stream start.
standard, large Stream duration in seconds. 0 = never expires. Copied from user default on creation.