Summary
Public broadcasts created through POST /2/broadcasts/scheduled have begun automatically creating public timeline Posts when they start. There is no documented request field that controls this behavior, and our application does not call POST /2/tweets for these broadcasts.
This appears inconsistent with the Media Studio Producer documentation, which describes posting a broadcast as a separate action:
https://help.x.com/en/using-x/how-to-use-live-producer
The general X Live documentation, however, says live videos are automatically posted:
https://help.x.com/en/using-x/x-live
Could the scheduled-broadcast API documentation clarify which behavior applies and how API clients can start a public broadcast without automatically creating a timeline Post?
Reproduction
- Create a public scheduled broadcast through
POST /2/broadcasts/scheduled with manual_publish: false.
- Do not call
POST /2/tweets.
- Allow the broadcast to reach its scheduled start.
- A public timeline Post is automatically created and returned as the broadcast's attached
tweet_id.
We also tested a separate public broadcast with manual_publish: true, followed by an explicit call to the broadcast /live endpoint. Starting it still immediately generated an attached public Post. This indicates that manual_publish controls start timing, rather than timeline publication.
Observed transition
The same application, credentials, sources, payload settings, and scheduler previously started scheduled public broadcasts without attached Posts. Consecutive scheduled broadcasts bracketed the behavior change:
- Broadcast
1PJqrNpyrZnxb, started 2026-09-21 10:40 UTC: no attached Post.
- Broadcast
1DGleVnQboMJL, started 2026-09-21 22:30 UTC: attached Post 2102163450785059230.
- Broadcast
1wxWjlMNNPVJQ, started 2026-09-22 10:20 UTC: attached Post 2102342129980948683.
All had available_for_replay: true, chat_option: "3", locale: "en", and manual_publish: false. The latter Post was created two seconds before the scheduled start, between our controller runs, which rules out our optional announcement code. The generated Posts were subsequently deleted manually.
Documentation/API gap
The current OpenAPI schema for scheduled-broadcast creation contains no nullcast, publish_to_timeline, auto_post, or equivalent field. nullcast is documented only for Posts explicitly created through POST /2/tweets, so it cannot be applied to a Post internally generated when a broadcast starts.
Please clarify:
- Is automatic timeline posting now intentional for every public scheduled API broadcast?
- If so, is there a supported opt-out for Media Studio/API broadcasters?
- If not, is this a regression or account-level rollout?
- Could the scheduled-broadcast schema and documentation explicitly describe the timeline-Post behavior of
manual_publish and public broadcasts?
Environment
- API: X API v2 scheduled broadcasts
- Endpoint:
/2/broadcasts/scheduled
- First observed changed behavior: 2026-09-21 between 10:40 and 22:30 UTC
- No call to
POST /2/tweets
- Reproduced with both automatic and manual broadcast publication
Summary
Public broadcasts created through
POST /2/broadcasts/scheduledhave begun automatically creating public timeline Posts when they start. There is no documented request field that controls this behavior, and our application does not callPOST /2/tweetsfor these broadcasts.This appears inconsistent with the Media Studio Producer documentation, which describes posting a broadcast as a separate action:
https://help.x.com/en/using-x/how-to-use-live-producer
The general X Live documentation, however, says live videos are automatically posted:
https://help.x.com/en/using-x/x-live
Could the scheduled-broadcast API documentation clarify which behavior applies and how API clients can start a public broadcast without automatically creating a timeline Post?
Reproduction
POST /2/broadcasts/scheduledwithmanual_publish: false.POST /2/tweets.tweet_id.We also tested a separate public broadcast with
manual_publish: true, followed by an explicit call to the broadcast/liveendpoint. Starting it still immediately generated an attached public Post. This indicates thatmanual_publishcontrols start timing, rather than timeline publication.Observed transition
The same application, credentials, sources, payload settings, and scheduler previously started scheduled public broadcasts without attached Posts. Consecutive scheduled broadcasts bracketed the behavior change:
1PJqrNpyrZnxb, started 2026-09-21 10:40 UTC: no attached Post.1DGleVnQboMJL, started 2026-09-21 22:30 UTC: attached Post2102163450785059230.1wxWjlMNNPVJQ, started 2026-09-22 10:20 UTC: attached Post2102342129980948683.All had
available_for_replay: true,chat_option: "3",locale: "en", andmanual_publish: false. The latter Post was created two seconds before the scheduled start, between our controller runs, which rules out our optional announcement code. The generated Posts were subsequently deleted manually.Documentation/API gap
The current OpenAPI schema for scheduled-broadcast creation contains no
nullcast,publish_to_timeline,auto_post, or equivalent field.nullcastis documented only for Posts explicitly created throughPOST /2/tweets, so it cannot be applied to a Post internally generated when a broadcast starts.Please clarify:
manual_publishand public broadcasts?Environment
/2/broadcasts/scheduledPOST /2/tweets