NOT_STARTED.
Endpoint: POST /2/users/:user_id/broadcasts
The source doesn’t need to be receiving video yet. If the source already has a running broadcast, that broadcast is returned instead of a new one. A broadcast that is never published is deleted after 7 days. See the broadcast lifecycle overview.
Request body
Example request
Success response
Key fields returned at creation
id: The broadcast ID. IDs are 13 or 14 characters; don’t assume a fixed length.media_key/media_id: Required later for chat access.share_url: Public viewer link (https://x.com/i/broadcasts/{id}).state: Always starts"NOT_STARTED".video_access: Always an empty object. Playback URLs aren’t returned; shareshare_urlwith viewers.twitter_user_id: Your numeric X user ID (as a string). Use it for the:user_idpath parameter in every endpoint.
source_id that doesn’t exist, or belongs to another user, returns 404 ("Could not find source.").
Then start pushing video to the source’s rtmps_url with its rtmp_stream_key, if you haven’t already, and publish.