Schedule a post
Give it ascheduledFor and a timezone instead of publishNow.
The scheduling window
scheduledFor must land between 10 minutes and 75 days from now. Outside
that range the API returns 400 immediately, rather than uploading your media
and letting the platform reject it afterwards.
timezone is an IANA name (America/New_York, Europe/Berlin). It does not
shift scheduledFor, which is an absolute instant. It records the timezone the
post was authored in so the calendar renders the time a person meant.
List the calendar
Edit a scheduled post
caption, scheduledFor, timezone and status (between
draft and scheduled). Media is changed through the
media endpoints, not here.
A post can be edited while its status is draft, scheduled, queued or
failed. queued still counts: the publish queue re-reads the row at delivery
and drops a message whose time no longer matches, so moving a queued post is
safe. Once it is uploading or publishing, the platform owns it and edits are
rejected.
Drafts
A JSON create call always schedules or publishes. Send neitherpublishNow nor
scheduledFor and it returns 400. To park a post as a draft (on the
calendar, not going anywhere), create it with a scheduledFor, then update it
with: