Glossary

Lead times by platform API: how far in advance can you schedule a post?

Taras Shynkarenko
Taras Shynkarenko
•Updated: •8 min read
How far in advance can you schedule a post on each platform APIHow far in advance can you schedule a post on each platform API

TL;DR, Quick Answer

8 min read

Only four networks take a future publish time through their APIs. Facebook asks for at least 10 minutes and caps the maximum at 30 days, 75 days, 6 months or 29 days depending on which Meta page and endpoint you read. Mastodon wants at least 5 minutes and documents no maximum. YouTube documents neither a minimum nor a maximum for publishAt. The X Ads API allows scheduled Tweets up to one year out. Instagram, Threads, LinkedIn, TikTok, Pinterest, Bluesky and the X API v2 have no scheduling field, so the scheduler holds the post and publishes it at the chosen time.

How far in advance can you schedule a post on each platform API?

Through the official APIs, how far in advance can you schedule a post depends on the network: Facebook Page posts take 10 minutes to 30 days, Mastodon wants at least 5 minutes with no documented ceiling, and Instagram, LinkedIn, TikTok, Threads and Pinterest accept no future time at all. Every cell below is quoted from the platform's own documentation. Where a cell says "none documented", the platform's page for that field names no limit.

Platform, endpoint and fieldMinimum lead timeMaximum lead timeSource page
Facebook Page post, /{page-id}/feed, scheduled_publish_time"between 10 minutes and 30 days"30 daysPages API, Posts guide
Facebook Page post, /{page-id}/feed, scheduled_publish_time"between 10 minutes and 75 days"75 daysGraph API, Page Feed reference
Facebook Page video, /{page-id}/videos, scheduled_publish_time"between 10 mins and 6 months"6 monthsGraph API, Page Videos reference
Facebook Reel, /{page-id}/video_reels, scheduled_publish_time"greater than 10 minutes from the current time""within 29 days of the current date"Video API, Reels Publishing guide
YouTube, videos.insert or videos.update, status.publishAtNone documentedNone documentedYouTube Data API, videos resource
Mastodon, POST /api/v1/statuses, scheduled_at"at least 5 minutes in the future"None documentedMastodon API, statuses methods
X Ads API, POST accounts/:account_id/scheduled_tweets, scheduled_atNone documented"up to one year in the future"X Ads API, Creatives reference
X API v2, POST /2/tweetsNo scheduling fieldNo scheduling fieldX API, Create Posts
Instagram, /<IG_ID>/media and /<IG_ID>/media_publishNo scheduling fieldNo scheduling fieldInstagram Platform, Content Publishing
Threads, /{threads-user-id}/threads and /threads_publishNo scheduling fieldNo scheduling fieldThreads API, Publishing reference
LinkedIn, POST /rest/postsNo scheduling fieldNo scheduling fieldLinkedIn Marketing, Posts API
TikTok, /v2/post/publish/video/init/No scheduling fieldNo scheduling fieldTikTok Content Posting API, Direct Post
Pinterest, POST /v5/pinsNo scheduling fieldNo scheduling fieldPinterest API v5 OpenAPI spec, PinCreate
Bluesky, app.bsky.feed.post recordNo scheduling fieldNo scheduling fieldapp.bsky.feed.post lexicon

Two rules come out of the table. The minimum is always a server-side check against the platform's clock, never yours. The maximum, where one exists, applies to the moment of the API request, not the moment you drafted the post.

Several wall clocks side by side showing different times, standing in for the conflicting maximum lead times Meta documents for Facebook.

Why does Meta publish four different maximums for Facebook?

Because four Meta pages give a range for scheduled_publish_time and no two of them agree on the ceiling. The minimum is consistent at 10 minutes. The maximum is not.

The Pages API guide says: "The publish date must be between 10 minutes and 30 days from the time of the API request." The Page Feed reference, for the same parameter on the same /feed endpoint, says: "UNIX timestamp indicating when post should go live. Must be date between 10 minutes and 75 days from the time of the API request." The Page Videos reference says the video post time "should be between 10 mins and 6 months from the time of publishing the video." The Reels Publishing guide says "the publish time must be greater than 10 minutes from the current time and within 29 days of the current date, and video_state must be set to 'SCHEDULED'."

Nothing on any of those pages says which number wins, and none mentions the others. The 30 and 75 day figures conflict on a single endpoint, so a tool that allows 75 days works only if the reference is right. If the guide is right, every request past day 30 fails. Capping feed posts at 30 days works whichever page is right, and capping Reels at 29 days stays inside the only number Meta gives for them. The full field, its formats and its errors are covered in the Facebook scheduled_publish_time window.

The Reels guide adds a second limit that matters for queues. It says the Reels API "is limited to 30 API-published posts within a 24-hour moving period", and that "Meta recommends that your app also enforces the publishing rate limit, especially if your app allows app users to schedule posts to be published in the future."

Which platforms document no maximum lead time?

YouTube and Mastodon. Neither page states a ceiling, so the honest answer for both is that the platform does not publish one.

YouTube's videos resource describes status.publishAt as "The date and time when the video is scheduled to publish", adds that "It can be set only if the privacy status of the video is private", and gives no minimum or maximum. It does describe what happens at the near end: "If your request schedules a video to be published at some time in the past, the video will be published right away." So YouTube has no minimum lead time in the sense of a rejection. A time in the past means publish now. Every YouTube publishAt field and how each one fails covers the privacy and update rules around it.

Mastodon documents the floor and stops there. The scheduled_at parameter on POST /api/v1/statuses is a "Datetime at which to schedule a status" that "Must be at least 5 minutes in the future." The page names no maximum. The server source enforces that floor strictly and adds per-account caps that the docs leave out, all set out in why the Mastodon API scheduled_at needs 5 minutes of lead time.

Which platforms have no scheduling field at all?

Instagram, Threads, LinkedIn, TikTok, Pinterest, Bluesky and the X API v2. On all seven, a scheduled post is one that a scheduling tool holds on its own servers and publishes through the normal create call when the time comes. The platform only ever sees an immediate publish.

The docs make this explicit in different ways. LinkedIn's Posts API says of lifecycleState: "PUBLISHED is the only accepted field during creation." Instagram's Content Publishing guide assumes the app does the waiting. It asks apps to enforce the publishing rate limit themselves, "especially if your app allows app users to schedule posts to be published in the future." Pinterest's PinCreate schema in the v5 OpenAPI spec lists ai_disclosures, alt_text, board_id, board_section_id, description, dominant_color, link, media_source, parent_pin_id, sponsor_id and title, with no time field. The X API v2 POST /2/tweets body has no time field either. Bluesky's post record has a createdAt, but the lexicon calls it a "Client-declared timestamp when this post was originally created", not a publish time.

With no platform queue, the limits that matter are the lifetimes of intermediate objects. You cannot prepare them days early:

PlatformObjectDocumented timing rule
InstagramMedia containerEXPIRED: "The container was not published within 24 hours and has expired."
TikTokupload_url from /v2/post/publish/video/init/"valid for one hour after issuance"
ThreadsMedia containerMeta recommends waiting "on average 30 seconds before publishing"

So a tool scheduling an Instagram post for next month keeps the media and caption itself. It creates the container close to the publish time and publishes within 24 hours of creating it. On these seven networks, how far ahead you can plan depends on the tool, not the API.

Scheduling an Instagram post for next month
1
Store. The tool keeps the media and caption on its own servers.
2
Wait. Instagram sees nothing, because its endpoints take no publish time.
3
Create the container. Do it close to the publish time, because an unpublished container expires after 24 hours.
4
Publish. Use the normal create call within 24 hours of creating the container.
Instagram sees only the last step, and the 24 hour container clock starts at step 3.

What does the X Ads API allow for scheduled Tweets?

Up to one year ahead, at minute precision, and only for advertisers. The scheduled_at parameter on POST accounts/:account_id/scheduled_tweets is "The time, expressed in ISO 8601, that the Tweet should be published (or go live)", with two notes: "Tweets can only be scheduled up to one year in the future" and "Tweets should only be scheduled at minute-granularity; seconds will be ignored."

AdaptlyPost
AdaptlyPost

Start Your 7-Day Free Trial

All-platform analytics

Social Inbox

AI-powered assistant

There is a catch in the defaults. The same endpoint's nullcast parameter defaults to true, which the docs define as creating "a nullcasted (or 'Promoted-only') Tweet." A scheduled Tweet created with defaults does not appear on the profile timeline as an organic post. The endpoint also requires as_user_id, and the advertiser "must grant your handle (or handles) access to their ads account via ads.x.com." That is a different setup from organic posting, which goes through POST /2/tweets and has no scheduling field.

A hand circling a date on a paper wall calendar, showing the fixed window a scheduler has to check before it sends a post.

What lead time window should a scheduler enforce?

Enforce the strictest documented bound per platform, measured against a synced server clock, and reject anything outside it before calling the API. Rejecting early gives the person a readable error instead of a generic 100 or 422.

PlatformEnforce at leastEnforce at most
Facebook feed posts10 minutes, plus clock margin30 days
Facebook Reels10 minutes, plus clock margin29 days
Facebook videos10 minutes, plus clock margin6 months
Mastodon5 minutes, plus clock marginNo platform limit
YouTubeAny future time; block past timesNo platform limit
X Ads scheduled TweetsNo platform floorOne year

The margin matters because every one of these minimums is checked on the platform's clock at the moment the request arrives. A post queued for 10 minutes and 5 seconds out can fail if the request is slow or the local clock runs behind. For networks with no scheduling field, the lead time is whatever the tool supports, and the only platform deadline is the object lifetime in the previous table.

Frequently asked questions

How far in advance can you schedule a Facebook post through the API?

Meta's Pages API guide says between 10 minutes and 30 days, while the Page Feed reference says between 10 minutes and 75 days for the same /feed field. Page videos allow up to 6 months and Reels up to 29 days. Capping feed posts at 30 days stays inside both feed figures.

Can you schedule Instagram posts through the Instagram API?

Not with a platform-side schedule. The Content Publishing endpoints /<IG_ID>/media and /<IG_ID>/media_publish take no publish time, so a scheduling tool holds the post and publishes it at the chosen moment. Containers expire if they are "not published within 24 hours".

Is there a maximum scheduling time on YouTube?

Google's videos resource documents none for status.publishAt. It only says the field "can be set only if the privacy status of the video is private" and that a time in the past publishes the video "right away".

What is the shortest lead time any platform API accepts?

Mastodon's documented floor is "at least 5 minutes in the future". Facebook's is 10 minutes on every Meta page that gives a range for scheduled_publish_time. The Page Photos reference gives no range at all. YouTube documents no floor and publishes past times immediately.

Does LinkedIn's API support scheduled posts?

No. The Posts API says of lifecycleState that "PUBLISHED is the only accepted field during creation", and the create request has no time field. Tools that schedule LinkedIn posts store them and call POST /rest/posts at the chosen time.

How far ahead can you schedule a Tweet through the API?

Only the X Ads API has a scheduling field. Its scheduled_tweets endpoint allows times "up to one year in the future", ignores seconds, and defaults nullcast to true, which makes the Tweet promoted-only. The X API v2 POST /2/tweets endpoint has no scheduling field.

How far ahead can you schedule a Facebook Reel through the API?

The Reels Publishing guide says the publish time must be greater than 10 minutes from the current time and within 29 days of the current date, with video_state set to "SCHEDULED". Reels also have a limit of 30 API-published posts within a 24-hour moving period. Meta recommends that your app enforces that limit too when it allows scheduling.

Does the Mastodon API have a maximum scheduling time?

The documentation names none. It only requires scheduled_at to be at least 5 minutes in the future. The server source adds per-account caps that the docs leave out, so a scheduler should not assume an unlimited queue.

Can you schedule Threads or TikTok posts through their APIs?

Neither has a scheduling field, so a scheduling tool holds the post and publishes it at the chosen time. The timing rules apply to intermediate objects instead. A TikTok upload_url from /v2/post/publish/video/init/ is valid for one hour after issuance, and Meta recommends waiting on average 30 seconds before publishing a Threads media container.

Why can a Facebook post scheduled exactly 10 minutes ahead fail?

Every minimum is checked on the platform's clock when the request arrives. A post queued for 10 minutes and 5 seconds out can fail if the request is slow or the local clock runs behind. Add a clock margin to the 10 minute floor and reject anything outside the window before calling the API.

Was This Article Helpful?

Let us know what you think!

See us more often in Google

One click marks AdaptlyPost as a preferred source, so our articles sit higher in your Top Stories, AI Mode, and AI Overviews.

Before you go...

AdaptlyPost

AdaptlyPost

Schedule your content across all platforms

Manage all your social media accounts in one place with AdaptlyPost.

All-platform analytics

Social Inbox

AI-powered assistant

Related Glossary Terms

Related Articles