TL;DR, Réponse Rapide
9 min de lectureSeuls quatre réseaux acceptent une heure de publication future via leurs API. Facebook demande au moins 10 minutes et plafonne le maximum à 30 jours, 75 jours, 6 mois ou 29 jours selon la page de Meta et l'endpoint que vous lisez. Mastodon veut au moins 5 minutes et ne documente aucun maximum. YouTube ne documente ni minimum ni maximum pour publishAt. La X Ads API autorise des Tweets programmés jusqu'à un an à l'avance. Instagram, Threads, LinkedIn, TikTok, Pinterest, Bluesky et la X API v2 n'ont aucun champ de programmation, donc c'est l'outil de planification qui garde le post et le publie à l'heure choisie.
Combien de temps à l'avance programmer un post sur chaque API de plateforme ?
Via les API officielles, savoir combien de temps à l'avance programmer un post dépend du réseau : les publications de Page Facebook acceptent de 10 minutes à 30 jours, Mastodon veut au moins 5 minutes sans plafond documenté, et Instagram, LinkedIn, TikTok, Threads et Pinterest n'acceptent aucune heure future. Chaque cellule ci-dessous est tirée de la documentation de la plateforme elle-même. Quand une cellule indique « aucun documenté », la page de la plateforme consacrée à ce champ ne nomme aucune limite.
| Plateforme, endpoint et champ | Délai minimum | Délai maximum | Page source |
|---|---|---|---|
Publication de Page Facebook, /{page-id}/feed, scheduled_publish_time | « between 10 minutes and 30 days » | 30 jours | Pages API, guide des publications |
Publication de Page Facebook, /{page-id}/feed, scheduled_publish_time | « between 10 minutes and 75 days » | 75 jours | Graph API, référence Page Feed |
Vidéo de Page Facebook, /{page-id}/videos, scheduled_publish_time | « between 10 mins and 6 months » | 6 mois | Graph API, référence Page Videos |
Reel Facebook, /{page-id}/video_reels, scheduled_publish_time | « greater than 10 minutes from the current time » | « within 29 days of the current date » | Video API, guide de publication des Reels |
YouTube, videos.insert ou videos.update, status.publishAt | Aucun documenté | Aucun documenté | YouTube Data API, ressource videos |
Mastodon, POST /api/v1/statuses, scheduled_at | « at least 5 minutes in the future » | Aucun documenté | Mastodon API, méthodes statuses |
X Ads API, POST accounts/:account_id/scheduled_tweets, scheduled_at | Aucun documenté | « up to one year in the future » | X Ads API, référence Creatives |
X API v2, POST /2/tweets | Aucun champ de programmation | Aucun champ de programmation | X API, Create Posts |
Instagram, /<IG_ID>/media et /<IG_ID>/media_publish | Aucun champ de programmation | Aucun champ de programmation | Instagram Platform, Content Publishing |
Threads, /{threads-user-id}/threads et /threads_publish | Aucun champ de programmation | Aucun champ de programmation | Threads API, référence Publishing |
LinkedIn, POST /rest/posts | Aucun champ de programmation | Aucun champ de programmation | LinkedIn Marketing, Posts API |
TikTok, /v2/post/publish/video/init/ | Aucun champ de programmation | Aucun champ de programmation | TikTok Content Posting API, Direct Post |
Pinterest, POST /v5/pins | Aucun champ de programmation | Aucun champ de programmation | Spécification OpenAPI de Pinterest API v5, PinCreate |
Bluesky, enregistrement app.bsky.feed.post | Aucun champ de programmation | Aucun champ de programmation | Lexicon app.bsky.feed.post |
Deux règles ressortent du tableau. Le minimum est toujours une vérification côté serveur faite sur l'horloge de la plateforme, jamais sur la vôtre. Le maximum, quand il existe, s'applique au moment de la requête à l'API, pas au moment où vous avez rédigé le post.

Pourquoi Meta publie-t-il quatre maximums différents pour Facebook ?
Parce que quatre pages de Meta donnent une plage pour scheduled_publish_time et qu'aucune paire d'entre elles ne s'accorde sur le plafond. Le minimum est constant, à 10 minutes. Le maximum ne l'est pas.
Le guide de la Pages API dit : « The publish date must be between 10 minutes and 30 days from the time of the API request. » La référence Page Feed, pour le même paramètre sur le même endpoint /feed, dit : « UNIX timestamp indicating when post should go live. Must be date between 10 minutes and 75 days from the time of the API request. » La référence Page Videos dit que l'heure de publication de la vidéo « should be between 10 mins and 6 months from the time of publishing the video. » Le guide de publication des Reels dit « 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'. »
Aucune de ces pages ne dit quel chiffre l'emporte, et aucune ne mentionne les autres. Les chiffres de 30 et 75 jours se contredisent sur un seul et même endpoint, donc un outil qui autorise 75 jours ne fonctionne que si la référence a raison. Si c'est le guide qui a raison, toute requête au-delà du jour 30 échoue. Plafonner les publications du fil à 30 jours fonctionne quelle que soit la page qui a raison, et plafonner les Reels à 29 jours reste dans le seul chiffre que Meta donne pour eux. Le champ complet, ses formats et ses erreurs sont traités dans la fenêtre du scheduled_publish_time de Facebook.
Le guide des Reels ajoute une seconde limite qui compte pour les files d'attente. Il indique que l'API Reels « is limited to 30 API-published posts within a 24-hour moving period », et que « 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. »
Quelles plateformes ne documentent aucun délai maximum ?
YouTube et Mastodon. Aucune des deux pages n'indique de plafond, donc la réponse honnête pour les deux est que la plateforme n'en publie pas.
La ressource videos de YouTube décrit status.publishAt comme « The date and time when the video is scheduled to publish », ajoute que « It can be set only if the privacy status of the video is private », et ne donne ni minimum ni maximum. Elle décrit en revanche ce qui se passe du côté proche : « If your request schedules a video to be published at some time in the past, the video will be published right away. » YouTube n'a donc pas de délai minimum au sens d'un rejet. Une heure passée signifie publier maintenant. Chaque champ publishAt de YouTube et la façon dont chacun échoue couvre les règles de confidentialité et de mise à jour qui l'entourent.
Mastodon documente le plancher et s'arrête là. Le paramètre scheduled_at de POST /api/v1/statuses est une « Datetime at which to schedule a status » qui « Must be at least 5 minutes in the future. » La page ne nomme aucun maximum. Le code source du serveur applique ce plancher strictement et ajoute des plafonds par compte que la documentation omet, tous exposés dans pourquoi le scheduled_at de l'API Mastodon exige 5 minutes d'avance.
Quelles plateformes n'ont aucun champ de programmation ?
Instagram, Threads, LinkedIn, TikTok, Pinterest, Bluesky et la X API v2. Sur ces sept réseaux, un post programmé est un post qu'un outil de planification garde sur ses propres serveurs et publie via l'appel de création normal le moment venu. La plateforme ne voit jamais qu'une publication immédiate.
La documentation le rend explicite de différentes façons. La Posts API de LinkedIn dit de lifecycleState : « PUBLISHED is the only accepted field during creation. » Le guide Content Publishing d'Instagram part du principe que c'est l'application qui attend. Il demande aux applications d'appliquer elles-mêmes la limite de publication, « especially if your app allows app users to schedule posts to be published in the future. » Le schéma PinCreate de Pinterest dans la spécification OpenAPI v5 liste ai_disclosures, alt_text, board_id, board_section_id, description, dominant_color, link, media_source, parent_pin_id, sponsor_id et title, sans aucun champ d'heure. Le corps de POST /2/tweets de la X API v2 n'a pas non plus de champ d'heure. L'enregistrement de publication de Bluesky a un createdAt, mais le lexicon le décrit comme un « Client-declared timestamp when this post was originally created », pas comme une heure de publication.
Sans file côté plateforme, les limites qui comptent sont les durées de vie des objets intermédiaires. Vous ne pouvez pas les préparer plusieurs jours à l'avance :
| Plateforme | Objet | Règle de délai documentée |
|---|---|---|
| Conteneur de média | EXPIRED : « The container was not published within 24 hours and has expired. » | |
| TikTok | upload_url issu de /v2/post/publish/video/init/ | « valid for one hour after issuance » |
| Threads | Conteneur de média | Meta recommande d'attendre « on average 30 seconds before publishing » |
Un outil qui programme un post Instagram pour le mois prochain garde donc lui-même le média et la légende. Il crée le conteneur peu avant l'heure de publication et publie dans les 24 heures qui suivent sa création. Sur ces sept réseaux, l'horizon de planification dépend de l'outil, pas de l'API.
Qu'autorise la X Ads API pour les Tweets programmés ?
Jusqu'à un an à l'avance, à la minute près, et uniquement pour les annonceurs. Le paramètre scheduled_at de POST accounts/:account_id/scheduled_tweets est « The time, expressed in ISO 8601, that the Tweet should be published (or go live) », avec deux remarques : « Tweets can only be scheduled up to one year in the future » et « Tweets should only be scheduled at minute-granularity; seconds will be ignored. »
AdaptlyPost
Commencez votre essai gratuit de 7 jours
Analyses multiplateforme
Boîte sociale
Assistant IA
Les valeurs par défaut cachent un piège. Le paramètre nullcast du même endpoint vaut true par défaut, ce qui, selon la documentation, crée « a nullcasted (or 'Promoted-only') Tweet. » Un Tweet programmé créé avec les valeurs par défaut n'apparaît pas sur le fil du profil comme un post organique. L'endpoint exige aussi as_user_id, et l'annonceur « must grant your handle (or handles) access to their ads account via ads.x.com. » C'est une configuration différente de la publication organique, qui passe par POST /2/tweets et n'a aucun champ de programmation.

Quelle fenêtre de délai un outil de planification doit-il imposer ?
Imposez la borne documentée la plus stricte pour chaque plateforme, mesurée sur une horloge serveur synchronisée, et rejetez tout ce qui en sort avant d'appeler l'API. Rejeter en amont donne à la personne une erreur lisible au lieu d'un 100 ou d'un 422 générique.
| Plateforme | Imposer au moins | Imposer au plus |
|---|---|---|
| Publications du fil Facebook | 10 minutes, plus une marge d'horloge | 30 jours |
| Reels Facebook | 10 minutes, plus une marge d'horloge | 29 jours |
| Vidéos Facebook | 10 minutes, plus une marge d'horloge | 6 mois |
| Mastodon | 5 minutes, plus une marge d'horloge | Aucune limite de la plateforme |
| YouTube | N'importe quelle heure future ; bloquer les heures passées | Aucune limite de la plateforme |
| Tweets programmés X Ads | Aucun plancher de la plateforme | Un an |
La marge compte parce que chacun de ces minimums est vérifié sur l'horloge de la plateforme au moment où la requête arrive. Un post mis en file pour dans 10 minutes et 5 secondes peut échouer si la requête est lente ou si l'horloge locale retarde. Pour les réseaux sans champ de programmation, le délai est celui que l'outil prend en charge, et la seule échéance de la plateforme est la durée de vie des objets du tableau précédent.
Questions fréquentes
Combien de temps à l'avance peut-on programmer une publication Facebook via l'API ?
Le guide de la Pages API de Meta dit entre 10 minutes et 30 jours, tandis que la référence Page Feed dit entre 10 minutes et 75 jours pour le même champ de /feed. Les vidéos de Page vont jusqu'à 6 mois et les Reels jusqu'à 29 jours. Plafonner les publications du fil à 30 jours reste dans les deux chiffres donnés pour le fil.
Peut-on programmer des posts Instagram via l'API Instagram ?
Pas avec une programmation côté plateforme. Les endpoints Content Publishing /<IG_ID>/media et /<IG_ID>/media_publish n'acceptent aucune heure de publication, donc un outil de planification garde le post et le publie au moment choisi. Les conteneurs expirent avec ce statut : « The container was not published within 24 hours and has expired. »
Y a-t-il une durée maximale de programmation sur YouTube ?
La ressource videos de Google n'en documente aucune pour status.publishAt. Elle dit seulement que le champ « can be set only if the privacy status of the video is private » et qu'une heure passée publie la vidéo « right away ».
Quel est le délai le plus court qu'accepte une API de plateforme ?
Le plancher documenté de Mastodon est « at least 5 minutes in the future ». Celui de Facebook est de 10 minutes sur chaque page de Meta qui donne une plage pour scheduled_publish_time. La référence Page Photos n'en donne aucune. YouTube ne documente aucun plancher et publie immédiatement les heures passées.
L'API de LinkedIn prend-elle en charge les posts programmés ?
Non. La Posts API dit de lifecycleState que « PUBLISHED is the only accepted field during creation », et la requête de création n'a aucun champ d'heure. Les outils qui programment des posts LinkedIn les stockent et appellent POST /rest/posts à l'heure choisie.
Combien de temps à l'avance peut-on programmer un Tweet via l'API ?
Seule la X Ads API a un champ de programmation. Son endpoint scheduled_tweets autorise des heures « up to one year in the future », ignore les secondes, et règle nullcast sur true par défaut, ce qui rend le Tweet réservé à la promotion. L'endpoint POST /2/tweets de la X API v2 n'a aucun champ de programmation.
Combien de temps à l'avance peut-on programmer un Reel Facebook via l'API ?
Le guide de publication des Reels indique que l'heure de publication doit être supérieure à 10 minutes après l'heure actuelle et tomber dans les 29 jours suivant la date du jour, avec video_state défini sur "SCHEDULED". Les Reels ont aussi une limite de 30 publications par API sur une période glissante de 24 heures. Meta recommande que votre app applique cette limite quand elle permet la programmation.
L'API de Mastodon a-t-elle une durée maximale de programmation ?
La documentation n'en indique aucune. Elle exige seulement que scheduled_at soit au moins 5 minutes dans le futur. Le code source du serveur ajoute des plafonds par compte que la documentation omet, donc un outil de planification ne doit pas supposer une file illimitée.
Peut-on programmer des posts Threads ou TikTok via leurs API ?
Aucune des deux n'a de champ de programmation, donc l'outil garde le post et le publie à l'heure choisie. Les délais ne concernent que les objets intermédiaires. L'upload_url de TikTok issue de /v2/post/publish/video/init/ reste valide une heure après son émission, et Meta recommande d'attendre en moyenne 30 secondes avant de publier un conteneur Threads.
Pourquoi un post Facebook programmé à exactement 10 minutes peut-il échouer ?
Chaque minimum est vérifié sur l'horloge de la plateforme à l'arrivée de la requête. Un post prévu à 10 minutes et 5 secondes peut échouer si la requête est lente ou si l'horloge locale retarde. Ajoutez une marge d'horloge au minimum de 10 minutes et rejetez tout ce qui sort de la fenêtre avant d'appeler l'API.
Mettez cela en pratique avec AdaptlyPost
Cet article vous a-t-il été utile ?
Dites-nous ce que vous en pensez !
Nous voir plus souvent sur Google
Un clic définit AdaptlyPost comme source préférée. Nos articles remontent alors dans vos À la une, en mode IA et dans les aperçus IA.
Avant de partir...
AdaptlyPost
Planifiez vos contenus sur toutes les plateformes
Gérez tous vos comptes de réseaux sociaux en un seul endroit avec AdaptlyPost.
Analyses multiplateforme
Boîte sociale
Assistant IA
Termes connexes du glossaire


Heures sautées, heures répétées : comment les planificateurs de réseaux sociaux gèrent les fuseaux horaires
Voici comment les planificateurs de réseaux sociaux gèrent les fuseaux horaires : UTC et nom de zone IANA, heure sautée ou répétée, formats pris par les API.


Meta documente quatre limites différentes pour le champ scheduled_publish_time de Facebook
Le champ scheduled_publish_time de Facebook exige au moins 10 minutes d'avance, et Meta lui donne quatre maximums : 29 jours, 30 jours, 75 jours et 6 mois.


Pourquoi le scheduled_at de l'API Mastodon exige 5 minutes d'avance
Le paramètre scheduled_at de l'API Mastodon doit viser plus de 5 minutes à l'avance, sinon le serveur renvoie 422. Une date passée publie aussitôt.
Articles Connexes


Comment un threadgate de Bluesky décide qui peut répondre à un post
Un threadgate de Bluesky limite les réponses aux comptes mentionnés, abonnés, suivis ou à une liste. Le record, et le postgate qui bloque les citations.


Pourquoi le champ lifecycleState de LinkedIn n'accepte que PUBLISHED à la création
Le champ lifecycleState de LinkedIn n'accepte que PUBLISHED à la création. DRAFT, PUBLISH_REQUESTED et PUBLISH_FAILED n'apparaissent que dans les réponses.


Comment la limite de débit business use case de Meta mesure les Pages Facebook
Sur les Pages, la limite de débit business use case de Meta autorise 4800 appels par utilisateur engagé sur 24 heures et échoue avec le code 80001.

