Guide

Comment automatiser vos publications Instagram Publiez Reels, carrousels et Stories en un seul appel API

La Graph API officielle d’Instagram demande une validation d’application Facebook, un compte professionnel lié à une page Facebook et un flux OAuth en plusieurs étapes. Upload-Post s’occupe de tout cela en coulisses. Un appel API, un point d’accès, et votre Reel, votre photo, votre carrousel ou votre Story est en ligne. Ce guide couvre tout ce qu’il faut pour automatiser la publication sur Instagram, avec de vrais exemples de code.

Pourquoi automatiser ses publications Instagram par API

Si vous avez déjà publié à la main depuis l’application Instagram, vous connaissez la routine : ouvrir l’application, choisir un fichier, écrire une légende, ajouter des hashtags, identifier des personnes, choisir une couverture, puis enfin publier. Multipliez maintenant cela par cinq publications par jour sur plusieurs comptes clients.

La page de la plateforme Instagram détaille ce qu’Upload-Post prend en charge sur Instagram. En résumé : vous pouvez publier des Reels, des photos seules, des carrousels (publications à plusieurs images) et des Stories via un seul point d’accès de l’API réseaux sociaux. Pas de validation d’application Facebook, pas de renouvellement de jetons, pas de complexité liée à la Graph API.

Upload-Post autorise jusqu’à 50 publications Instagram par compte sur 24 heures glissantes, ce qui suffit largement dans la plupart des cas. Si vous devez publier en même temps sur d’autres plateformes, voyez comment publier sur toutes les plateformes en une fois.

Publier un Reel Instagram par API

Les Reels sont le format principal sur Instagram. Pour publier une vidéo en Reel, envoyez une requête POST au point d’accès d’upload avec media_type réglé sur REELS. Vous pouvez aussi choisir où le Reel apparaît avec share_mode.

curl -X POST https://api.upload-post.com/api/upload \
  -H "Authorization: Apikey your-api-key-here" \
  -F "[email protected]" \
  -F "user=mybrand" \
  -F "title=Les coulisses du lancement de notre nouveau produit" \
  -F "platform[]=instagram" \
  -F "media_type=REELS" \
  -F "share_mode=FEED_AND_REELS" \
  -F "audio_name=Original Audio" \
  -F "cover_url=https://example.com/cover.jpg"

Voici ce que fait chaque paramètre propre à Instagram :

  • media_type=REELS indique à Instagram de traiter la vidéo comme un Reel et non comme une vidéo classique du fil.
  • share_mode=FEED_AND_REELS publie à la fois dans l’onglet Reels et dans le fil principal. Utilisez REELS_ONLY pour ne pas l’afficher dans la grille du profil.
  • audio_name définit le nom de la piste audio que les spectateurs voient sur le Reel.
  • cover_url fournit une image de couverture personnalisée. Sans elle, Instagram choisit une image de la vidéo.

Un upload réussi renvoie l’identifiant de la tâche et le statut par plateforme :

{
  "success": true,
  "job_id": "job_reel_abc123",
  "platforms": {
    "instagram": {
      "status": "processing",
      "user": "mybrand"
    }
  }
}

Vous pouvez aussi utiliser share_to_feed=true ou share_to_feed=false à la place de share_mode. Les deux font la même chose. Utilisez thumb_offset pour choisir une image précise de la vidéo comme miniature (valeur en millisecondes).

Publier des photos et des carrousels

Pour une photo seule ou un carrousel (plusieurs images), utilisez le point d’accès /api/upload_photos. Envoyez plusieurs fichiers avec le paramètre photos[] pour créer un carrousel automatiquement.

curl -X POST https://api.upload-post.com/api/upload_photos \
  -H "Authorization: Apikey your-api-key-here" \
  -F "photos[][email protected]" \
  -F "photos[][email protected]" \
  -F "photos[][email protected]" \
  -F "user=mybrand" \
  -F "title=Nos 3 coups de cœur produit du mois" \
  -F "platform[]=instagram" \
  -F "instagram_first_comment=#coupdecoeur #tendance #shopping"

Quand vous envoyez plus d’un fichier dans photos[], Instagram crée un carrousel. Les utilisateurs font défiler les images dans l’ordre où vous les avez envoyées. Un seul fichier crée une publication photo classique. Instagram accepte jusqu’à 10 images par carrousel.

Vous pouvez utiliser instagram_title pour définir une légende propre à Instagram quand vous publiez le même contenu sur plusieurs plateformes à la fois. C’est utile quand votre légende Instagram doit avoir d’autres hashtags ou mentions que sur les autres réseaux.

Publier automatiquement un premier commentaire

Le paramètre instagram_first_comment ajoute automatiquement un commentaire à votre publication juste après sa mise en ligne. C’est une des pratiques Instagram les plus répandues : garder une légende propre et déplacer tous les hashtags dans le premier commentaire.

curl -X POST https://api.upload-post.com/api/upload \
  -H "Authorization: Apikey your-api-key-here" \
  -F "[email protected]" \
  -F "user=mybrand" \
  -F "title=Tuto express : comment utiliser notre appli" \
  -F "platform[]=instagram" \
  -F "media_type=REELS" \
  -F "instagram_first_comment=#tuto #astuce #appli #tech #demo"

Pourquoi un premier commentaire plutôt que des hashtags dans la légende ? L’algorithme d’Instagram traite les hashtags du premier commentaire comme ceux de la légende pour la découverte, mais votre légende reste plus lisible. Beaucoup de marques et de créateurs préfèrent cette méthode, car la publication reste centrée sur le message et non sur un mur de hashtags.

Collaborateurs et identifications

Les publications Collab d’Instagram permettent à deux comptes de cosigner un même contenu. La publication apparaît sur les deux profils, et l’engagement (j’aime, commentaires, partages) est partagé. Utilisez le paramètre collaborators pour inviter des collaborateurs.

curl -X POST https://api.upload-post.com/api/upload \
  -H "Authorization: Apikey your-api-key-here" \
  -F "[email protected]" \
  -F "user=mybrand" \
  -F "title=Ravis d'annoncer notre partenariat avec @partneraccount" \
  -F "platform[]=instagram" \
  -F "media_type=REELS" \
  -F "collaborators=partneraccount,otheraccount" \
  -F "user_tags=partneraccount,photographer_jane" \
  -F "location_id=123456789"
  • collaborators prend une liste de noms d’utilisateur Instagram séparés par des virgules. Les comptes invités reçoivent une notification pour accepter la collaboration.
  • user_tags identifie des comptes dans la publication elle-même, comme quand vous identifiez des personnes sur une photo dans l’application.
  • location_id ajoute un lieu à la publication. Vous trouverez les identifiants de lieu via la recherche de lieux d’Instagram ou l’API Facebook Places.

Programmer des publications Instagram

Ajoutez scheduled_date à n’importe quelle requête d’upload pour publier plus tard. La date doit être au format ISO-8601, et vous pouvez préciser un timezone.

curl -X POST https://api.upload-post.com/api/upload \
  -H "Authorization: Apikey your-api-key-here" \
  -F "[email protected]" \
  -F "user=mybrand" \
  -F "title=Bonjour ! Du nouveau contenu arrive aujourd'hui." \
  -F "platform[]=instagram" \
  -F "media_type=REELS" \
  -F "scheduled_date=2025-09-15T09:00:00Z" \
  -F "timezone=America/New_York"

Vous pouvez aussi utiliser add_to_queue=true au lieu d’une date précise. La file d’attente choisit le prochain créneau libre selon le planning que vous avez configuré, ce qui est idéal pour envoyer du contenu en lot sans choisir chaque horaire. Le guide de programmation complet explique la configuration de la file, la modification des publications programmées et la gestion de votre calendrier éditorial.

Automatiser avec Python

Le SDK Python officiel permet d’écrire facilement des scripts d’automatisation. Installez-le avec pip install upload-post, puis utilisez UploadPostClient pour appeler l’API. Pour un tutoriel complet, consultez le guide d’automatisation avec Python.

Voici un script complet qui publie un Reel, envoie un carrousel de photos et programme du contenu pour la semaine :

from upload_post import UploadPostClient
from datetime import datetime, timedelta

client = UploadPostClient(api_key="your-api-key-here")

# 1. Publier un Reel tout de suite
reel_response = client.upload_video(
    video_path="/path/to/reel.mp4",
    title="Présentation de notre nouveau produit",
    user="mybrand",
    platforms=["instagram"],
    media_type="REELS",
    share_mode="FEED_AND_REELS",
    instagram_first_comment="#nouveauproduit #demo #tech"
)
print(f"Reel envoyé : {reel_response['job_id']}")

# 2. Publier un carrousel de photos
carousel_response = client.upload_photos(
    photo_paths=[
        "/path/to/photo1.jpg",
        "/path/to/photo2.jpg",
        "/path/to/photo3.jpg"
    ],
    title="Trois angles, un produit.",
    user="mybrand",
    platforms=["instagram"],
    collaborators="partneraccount"
)
print(f"Carrousel envoyé : {carousel_response['job_id']}")

# 3. Programmer des Reels pour les 7 prochains jours
videos = [
    "monday.mp4", "tuesday.mp4", "wednesday.mp4",
    "thursday.mp4", "friday.mp4", "saturday.mp4", "sunday.mp4"
]

for i, video in enumerate(videos):
    publish_date = (datetime.now() + timedelta(days=i + 1)).replace(
        hour=10, minute=0, second=0, microsecond=0
    )
    response = client.upload_video(
        video_path=f"/path/to/{video}",
        title=f"Jour {i + 1} de notre semaine de lancement",
        user="mybrand",
        platforms=["instagram"],
        media_type="REELS",
        scheduled_date=publish_date.isoformat(),
        timezone="Europe/Madrid"
    )
    print(f"{video} programmé pour le {publish_date} : {response['job_id']}")

Ce script programme un Reel par jour à 10 h, heure de Madrid, pendant une semaine entière. Adaptez hour, timezone et les chemins de fichiers à votre workflow. Pour un upload en masse, vous pouvez lire les chemins des vidéos depuis un dossier ou un fichier CSV et les parcourir de la même façon.

Automatisation sans code : n8n et Make.com

Si vous préférez les workflows visuels au code, n8n et Make.com fonctionnent tous les deux avec Upload-Post sans configuration particulière.

n8n

n8n est un outil open source d’automatisation de workflows. Vous pouvez utiliser le nœud HTTP Request pour appeler l’API Upload-Post. Nous proposons un template n8n pour les Reels Instagram prêt à l’emploi qui lit les vidéos dans Google Drive, ajoute les légendes depuis un Google Sheet et les publie automatiquement en Reels. Parcourez tous les templates n8n pour d’autres configurations.

Make.com

Make.com (anciennement Integromat) fonctionne par scénarios. Ajoutez un module HTTP, configurez-le avec le point d’accès Upload-Post et votre clé API, puis reliez-le à n’importe quel déclencheur : nouvelle ligne dans Google Sheets, nouveau fichier dans Dropbox, minuteur programmé, etc. Le résultat est le même qu’avec du code, mais en glisser-déposer.

Les deux outils prennent en charge les paramètres de programmation (scheduled_date, add_to_queue), vous pouvez donc construire un calendrier éditorial Instagram complet sans ouvrir de terminal.

Formats acceptés par Instagram

Upload-Post adapte automatiquement votre contenu quand c’est possible (avec l’API FFmpeg intégrée), mais il est utile de savoir ce qu’attend Instagram pour optimiser la qualité.

Format Critère Détails
Vidéo (Reels) Taille max. du fichier 1 Go
Formats MP4, MOV
Format d’image 9:16 recommandé, 1:1 et 4:5 acceptés
Durée De 3 secondes à 15 minutes
Résolution 1080x1920 recommandé
Photo Taille max. du fichier 8 Mo
Formats JPEG, PNG
Format d’image 1:1, 4:5, 1,91:1
Dimensions max. 1440x1440 (carré), 1080x1350 (portrait)
Carrousel Images max. 10 par publication
Médias mixtes Photos et vidéos peuvent être combinées

Questions fréquentes

Comment automatiser ses publications Instagram ?

Connectez votre compte Instagram professionnel ou créateur à Upload-Post, puis envoyez une requête POST au point d’accès /api/upload avec platform[]=instagram. Vous pouvez publier des Reels (media_type=REELS), des carrousels et des photos seules, programmer avec scheduled_date, publier des Stories (media_type=STORIES) et ajouter automatiquement un premier commentaire, le tout en un seul appel API, sans validation d’application Meta ni configuration de la Graph API. Les exemples cURL et Python ci-dessus montrent comment faire.

Existe-t-il une API Instagram pour publier automatiquement Reels et photos ?

Oui. Upload-Post donne accès à la Content Publishing API officielle d’Instagram via un seul point d’accès simple. Envoyez platform[]=instagram avec votre vidéo ou vos photos, et l’API gère la création du conteneur, le suivi du statut et la publication des Reels, carrousels et photos du fil. C’est la même API officielle qu’utilisent les autres outils de programmation autorisés, pas un bot ni de l’automatisation de navigateur.

Est-ce que cela fonctionne avec les comptes Instagram personnels ?

Non. L’API d’Instagram ne prend en charge que les comptes professionnels et créateurs. Aucune API officielle ne donne accès aux comptes personnels. Bonne nouvelle : passer à un compte professionnel ou créateur est gratuit et prend environ 30 secondes dans les paramètres de l’application Instagram. Upload-Post se connecte via Instagram Login, donc aucune page Facebook liée n’est nécessaire.

Peut-on publier des Stories Instagram par API ?

Oui. Envoyez media_type=STORIES avec platform[]=instagram sur le point d’accès vidéo (/api/upload) ou photo (/api/upload_photos). Les Stories ignorent la légende et ne peuvent pas porter de lieu, et un format vertical 9:16 donne le meilleur résultat.

Les publications automatiques risquent-elles un shadowban ?

Upload-Post publie via la Content Publishing API officielle d’Instagram, la même voie qu’utilisent les autres outils de programmation autorisés, donc vos publications ne sont pas repérées comme de l’automatisation comme le sont les bots de navigateur. Ce qu’Instagram montre aux gens dépend quand même du contenu lui-même. Upload-Post limite aussi chaque compte à 50 publications sur 24 heures glissantes pour rester bien en dessous des limites de publication d’Instagram. Si vous utilisez aujourd’hui un outil comme Hootsuite ou Later, Upload-Post est une alternative pensée pour les développeurs, avec le même accès officiel.

Y a-t-il une offre gratuite ?

Oui. Chaque compte Upload-Post inclut 10 publications gratuites par mois, sans carte bancaire. C’est suffisant pour tester l’API, valider votre workflow et vérifier que tout fonctionne avant de passer à une offre payante. Consultez le calendrier des temps forts sur les réseaux sociaux pour caler vos premières publications sur les événements à venir, ou découpez une bannière en plusieurs carrés avec l’outil pour découper une image pour Instagram et programmez-les dans l’ordre.

Automatisez vos publications Instagram dès aujourd’hui

Un seul appel API. Reels, photos, carrousels, Stories, premiers commentaires, collaborateurs et programmation. Tout est géré pour vous.

Sans carte bancaire. 10 publications gratuites incluses.