API réseaux sociaux : publier et programmer partout en une requête
API réseaux sociaux : ce que coûte l'intégration de chaque réseau, ce qu'une API unique change, des exemples en curl et en Python, les webhooks et les critères pour choisir.

Une API de réseaux sociaux permet à un logiciel de publier et de programmer sur Instagram, Facebook, TikTok, LinkedIn ou YouTube sans passer par leurs applications. Deux voies existent : brancher l'API officielle de chaque réseau, une par une, ou passer par une API unifiée, où une seule requête publie sur tous les réseaux visés. Ce guide compare les deux, avec des exemples prêts à copier ; les règles des réseaux ont été vérifiées sur leurs pages pour développeurs le 6 novembre 2026.
Dans ce guide :
- ce qu'une API de réseaux sociaux permet, et les deux façons de s'y prendre ;
- ce que coûte l'intégration de chaque réseau par soi-même ;
- ce qu'une API unique change : une requête, des webhooks, une clé de reprise ;
- des exemples en curl et en Python, pour publier puis programmer ;
- les critères pour choisir son API.
Qu'est-ce qu'une API de réseaux sociaux
Une API, pour interface de programmation, est une porte que le réseau ouvre aux logiciels : au lieu de cliquer sur Publier, votre programme envoie une requête qui contient le texte, l'image et la date. Chaque réseau a la sienne : la Graph API de Meta pour Facebook et Instagram, la Content Posting API de TikTok, l'API de LinkedIn, la YouTube Data API.
Une API unifiée se place au-dessus. Elle a déjà fait le travail auprès de chaque réseau (applications, revues, jetons) et vous offre une seule porte : vous décrivez la publication une fois, avec la liste des réseaux, et elle se charge du reste. C'est le choix de la plupart des logiciels, des SaaS et des agences qui publient pour leurs utilisateurs, et c'est aussi ce que branchent n8n, Make ou Zapier.
Ce que coûte l'intégration de chaque réseau
Brancher soi-même chaque réseau est gratuit à l'usage, mais chacun pose ses conditions avant de vous laisser publier pour d'autres que vous.

| Réseau | Ce qu'il exige | Source |
|---|---|---|
| Facebook et Instagram | Accès avancé par revue d'application dès que l'application sert des personnes sans rôle dessus ; Instagram limite à 100 publications par API sur 24 heures glissantes et par compte | Niveaux d'accès de Meta, publication Instagram |
| TikTok | Tant que l'application n'a pas passé l'audit, tout ce qu'elle publie reste en visibilité privée | Content Posting API |
| Profil personnel par la permission w_member_social, 150 requêtes par jour et par membre ; Pages d'entreprise par un produit examiné | Share on LinkedIn | |
| YouTube | Quota par défaut de 100 envois de vidéos par jour et par projet, pour toute l'application | Quotas de la YouTube Data API |
Il faut ensuite tenir la durée : renouveler les jetons avant qu'ils expirent (60 jours pour LinkedIn et Instagram), suivre les changements de version de chaque API, et gérer les formats propres à chacun. Instagram ne prend que des médias accessibles en ligne, TikTok pose ses propres questions sur la visibilité et le contenu commercial, YouTube demande un envoi de fichier en plusieurs morceaux. Pour un logiciel dont la publication n'est pas le cœur, c'est beaucoup de code à entretenir.
Ce qu'une API unique change
Une API unifiée réduit tout cela à une requête et à une adresse qui vous prévient.

- Une requête pour plusieurs réseaux. Le texte, les médias et la liste des cibles partent ensemble ; les limites de chaque réseau (longueur, nombre d'images) sont vérifiées cible par cible.
- La programmation côté serveur. Avec une date, la publication attend chez le service et part seule, même si votre programme est arrêté.
- Des webhooks pour le résultat. Plutôt que d'interroger l'API en boucle, vous recevez un appel quand une publication part ou échoue.
- Une clé de reprise. Si votre programme réessaie après une coupure, la même clé empêche une double publication.
Publier par API : un exemple en curl
Voici une publication immédiate sur une Page Facebook et un profil LinkedIn, avec une image, par l'API de Kreatoai. La clé se crée dans le tableau de bord et part dans l'en-tête x-api-key.
curl -X POST https://api.kreatoai.com/v1/posts \
-H "x-api-key: sk-kre-v1-votre_cle" \
-H "Content-Type: application/json" \
-d '{
"targets": ["facebook", "linkedin"],
"content": "Notre nouvelle offre est en ligne !",
"mediaUrls": ["https://exemple.com/visuel.jpg"],
"idempotencyKey": "lancement-offre-2026-11"
}'
L'API répond tout de suite par 202 Accepted, avec l'identifiant de la publication et une ligne par cible, chacune en pending. La publication se fait en tâche de fond ; GET /v1/posts/:id donne ensuite l'état de chaque réseau, avec le lien de la publication quand elle est partie. Quand vous avez deux comptes sur un même réseau, une cible désigne le compte exact : { "platform": "facebook", "channelId": "…" }.
Programmer en Python
Pour programmer, on ajoute une date au format ISO 8601. Le même appel en Python, avec la bibliothèque requests, programmé pour jeudi 18 h, heure de Paris :
import requests
reponse = requests.post(
"https://api.kreatoai.com/v1/posts",
headers={"x-api-key": "sk-kre-v1-votre_cle"},
json={
"targets": ["instagram", "tiktok"],
"content": "Les coulisses de notre atelier, en 30 secondes.",
"mediaUrls": ["https://exemple.com/coulisses.mp4"],
"scheduledAt": "2026-11-12T18:00:00+01:00",
"idempotencyKey": "coulisses-2026-11-12",
},
timeout=30,
)
print(reponse.status_code, reponse.json()["status"]) # 202 scheduled
Tant qu'elle n'est pas partie, la publication se modifie par PATCH /v1/posts/:id (texte, médias, date) et s'annule par DELETE /v1/posts/:id. Instagram et TikTok demandent une image ou une vidéo ; Facebook, LinkedIn, Bluesky et Google Business acceptent un texte seul.
Les erreurs à prévoir
Une bonne API refuse tout de suite ce qui ne pourra pas partir, plutôt que d'échouer en silence une minute plus tard. Chez Kreatoai, la requête est vérifiée réseau par réseau avant d'être acceptée, et un refus revient en 400 avec le détail de chaque cible :
{
"error": "invalid_targets",
"details": [
{ "platform": "instagram", "error": "media_required_for_target" },
{ "platform": "tiktok", "error": "channel_not_connected" }
]
}
Les cas les plus fréquents, à traiter dans votre code :
- Média manquant : Instagram et TikTok exigent une image ou une vidéo, YouTube une vidéo.
- Texte trop long : 3 000 caractères sur LinkedIn, 2 200 sur Instagram et TikTok, 1 500 sur Google Business, 300 sur Bluesky.
- Compte non relié : le réseau n'a pas de compte actif dans l'espace, ou l'identifiant visé n'existe pas.
- Date passée : une date de programmation déjà dépassée est refusée.
Après l'acceptation, un réseau peut encore refuser au moment de publier. L'échec dit alors s'il vaut la peine de réessayer (retriable : réseau indisponible, limite de débit) ou non (permanent : média refusé, compte à reconnecter). Ne relancez jamais en boucle un échec définitif : corrigez d'abord sa cause.
Recevoir le résultat par webhook
Une publication sur trois réseaux peut réussir sur deux et échouer sur le troisième. Les webhooks le disent, un événement par réseau.

Chez Kreatoai, vous déclarez une adresse et recevez publish.completed quand un réseau a publié, publish.failed avec la raison et le type d'échec (à réessayer ou définitif) quand il a refusé. Chaque appel est signé en HMAC-SHA256 avec le secret de l'adresse, dans l'en-tête X-Kreato-Signature, et horodaté : vérifiez la signature et la fraîcheur avant de croire le message. Répondez par un code 2xx, y compris aux événements que vous ne traitez pas, sinon les envois se répètent puis l'adresse est désactivée. La documentation des webhooks donne le code de vérification complet.
Choisir son API de réseaux sociaux
Les résultats de « social media scheduling api » listent beaucoup d'outils. Cinq questions font le tri :
| Critère | Ce qu'il faut vérifier |
|---|---|
| Réseaux et types de comptes | Vos réseaux, et le bon type : Page ou profil, compte professionnel Instagram |
| Programmation | Une date suffit, et la publication part sans votre programme |
| Suivi | Webhooks signés, état réseau par réseau, lien de la publication |
| Sécurité des reprises | Une clé de reprise contre les doubles publications |
| Clients multiples | Plusieurs comptes par réseau, visés par identifiant, pour une agence ou un SaaS |
D'après les pages relevées le 14 octobre 2026, Buffer, Postiz, Publer (formule Business) et Kreatoai ont une API publique ; Later n'en annonçait pas. Notre comparatif des API et serveurs MCP pour les réseaux sociaux détaille les prix et les limites de chacun. Si vous n'écrivez pas de code, notre article sur la publication automatique sur plusieurs réseaux montre la même chose depuis n8n, Make ou Zapier.
Une API pour publier sur huit réseaux
Kreatoai offre une API publique, avec des clés d'API, pour les publications, les comptes connectés et les médias, et des webhooks qui préviennent quand une publication part ou échoue. Une seule requête publie sur Instagram, les Pages Facebook, TikTok, les profils LinkedIn personnels, YouTube (Shorts), Bluesky, les fiches Google Business et Pinterest : votre logiciel n'a pas à parler à chaque plateforme ni à passer ses revues d'application.
Une clé appartient à un espace Kreatoai. Une agence relie les comptes de ses clients à son espace et vise chacun par son identifiant ; un SaaS peut aussi laisser chaque utilisateur créer sa clé et la lui confier. La clé de reprise idempotencyKey empêche qu'une requête rejouée publie deux fois, et une publication programmée part seule, même si votre outil est arrêté. L'API accepte trente requêtes par minute et par clé. Elle s'appelle depuis curl, Node.js, Python ou tout langage, et depuis n8n, Make ou Zapier, avec un guide pour chacun.
Dix publications sont offertes chaque mois, sans carte bancaire. La vue d'ensemble de l'API donne les premiers appels, et la page de publication tous les champs.
À retenir
- Une API de réseaux sociaux permet à un logiciel de publier et de programmer sans passer par les applications des réseaux.
- Brancher chaque réseau soi-même est gratuit à l'usage, mais demande revue chez Meta, audit chez TikTok, produit examiné chez LinkedIn pour les Pages et respect du quota de YouTube.
- Une API unifiée publie sur plusieurs réseaux en une requête, programme côté serveur et prévient par webhook.
- Une date ISO 8601 programme ; une clé de reprise évite les doubles publications ; un webhook signé dit ce qui est parti.
- Avant de choisir : réseaux et types de comptes, programmation, suivi, reprises, comptes multiples.
Questions fréquentes
- Qu'est-ce qu'une API de réseaux sociaux ?
- C'est une porte technique qui permet à un logiciel de publier, programmer ou lire des données sur un réseau sans passer par son application. Chaque réseau a la sienne (Graph API de Meta, Content Posting API de TikTok, API de LinkedIn, YouTube Data API), et des services proposent une API unique qui parle à tous ces réseaux à votre place.
- Peut-on publier sur plusieurs réseaux avec une seule API ?
- Oui, avec une API unifiée : une requête décrit le texte, les médias et les réseaux visés, et le service publie sur chacun avec ses propres accès. Kreatoai, par exemple, publie sur Instagram, les Pages Facebook, TikTok, LinkedIn, YouTube, Bluesky, Google Business et Pinterest avec une seule requête POST /v1/posts.
- Pourquoi ne pas utiliser directement l'API de chaque réseau ?
- C'est possible, mais chaque réseau a ses conditions : une revue d'application chez Meta pour servir d'autres comptes que les vôtres, un audit chez TikTok faute de quoi les vidéos restent privées, un produit examiné chez LinkedIn pour les Pages, un quota quotidien d'envois chez YouTube. Il faut aussi renouveler les jetons et suivre chaque changement de version.
- Comment programmer une publication par API ?
- On envoie la publication avec une date future, au format ISO 8601, et le service la publie seul à l'heure dite. Chez Kreatoai, c'est le champ scheduledAt de POST /v1/posts ; la publication se corrige par PATCH et s'annule par DELETE tant qu'elle n'est pas partie.
- Existe-t-il une API gratuite pour publier sur les réseaux sociaux ?
- Les API officielles des réseaux sont gratuites à l'usage, mais demandent revues, audits et entretien. Les API unifiées ont des formules : Kreatoai offre dix publications par mois sans carte bancaire, y compris par l'API.
- Comment savoir si une publication envoyée par API est partie ?
- Par les webhooks : le service appelle votre adresse quand une publication part ou échoue, un événement par réseau. Chez Kreatoai, les événements publish.completed et publish.failed arrivent signés en HMAC-SHA256, et GET /v1/posts/:id donne l'état réseau par réseau.
Faites-le faire à votre place
Kreatoai publie et programme vos posts sur tous vos réseaux, depuis votre tableau de bord ou en le demandant à ChatGPT et à Claude, et son agent répond à vos messages privés. Dix publications offertes chaque mois, sans carte bancaire.
Essayer gratuitement