Guide

Comment planifier des publications TikTok avec une API

La regularite est ce qui fait grandir les comptes TikTok. Mais publier manuellement a 6 h du matin parce que c\'est le moment ou votre audience est active n\'est pas une strategie durable. Avec l'Social media API Upload-Post, vous pouvez planifier une semaine entiere de contenu TikTok en quelques minutes et laisser le systeme publier aux bons moments pour vous.

Planifiez une publication TikTok à une heure précise

L\'approche la plus directe est de definir une date de publication exacte. Ajoutez le parametre scheduled_date (format ISO-8601) et un timezone (format IANA) a votre requete d\'upload. L\'API accepts dates up to\'a 365 jours dans le futur.

Voici un exemple cURL qui planifie une video TikTok pour le 22 septembre a 10 h 00, heure de New York, avec la confidentialite definie sur public et les duos desactives :

curl -X POST https://api.upload-post.com/api/upload \
  -H "Autorisation : Apikey votre-clé-api-ici" \
  -F "[email protected]" \
  -F "user=mybrand" \
  -F "title=Morning routine that changed everything #fyp #routine" \
  -F "platform[]=tiktok" \
  -F "scheduled_date=2025-09-22T10:00:00Z" \
  -F "timezone=America/New_York" \
  -F "privacy_level=PUBLIC" \
  -F "disable_duet=false" \
  -F "disable_comment=false" \
  -F "disable_stitch=false"

Lorsque la publication est planifiee avec succes, l\'API repond avec un code de statut 202 et un job_id :

{
  "success": true,
  "job_id": "scheduler_job_abc123",
  "scheduled_date": "2025-09-22T10:00:00Z"
}

Conservez ce job_id. Vous en aurez besoin pour modifier, replanifier ou annuler la publication plus tard. Vous pouvez egalement lister toutes vos publications planifiees en attente a tout moment :

curl https://api.upload-post.com/api/uploadposts/schedule \
  -H "Autorisation : Apikey votre-clé-api-ici"

Cela renvoie un tableau de toutes les taches en attente avec leur job_id, scheduled_date, les details de la plateforme et une URL d\'apercu du contenu. Pour un apercu plus approfondi de la planification sur toutes les plateformes, consultez le guide general de planification.

Utiliser la file d\'attente pour une planification automatique.

Choisir des dates exactes fonctionne quand vous avez quelques publications. Mais si vous produisez du contenu en lot, choisir manuellement une heure pour chaque video devient vite fastidieux. Le systeme de file d\'attente resout ce probleme. Vous definissez votre calendrier de publication prefere une seule fois, et chaque contenu que vous ajoutez est automatiquement attribue au prochain creneau disponible.

Configurer votre calendrier de file d\'attente

D\'abord, indiquez au systeme quand vous souhaitez que le contenu soit publie. Cet exemple configure trois creneaux par jour, du lundi au vendredi, dans le fuseau horaire de New York :

curl -X POST https://api.upload-post.com/api/uploadposts/queue/settings \
  -H "Autorisation : Apikey votre-clé-api-ici" \
  -H "Content-Type: application/json" \
  -d '{
    "timezone": "America/New_York",
    "slots": [
      { "hour": 8, "minute": 0 },
      { "hour": 12, "minute": 30 },
      { "hour": 18, "minute": 0 }
    ],
    "days": [0, 1, 2, 3, 4]
  }'

Cela vous donne 15 creneaux TikTok par semaine : 8 h 00, 12 h 30 et 18 h 00, du lundi au vendredi. Vous pouvez definir jusqu\'a 24 creneaux par jour et inclure les week-ends en ajoutant les jours 5 et 6.

Ajouter du contenu à la file d\'attente

Maintenant, au lieu de passer un scheduled_date, definissez add_to_queue=true. Le systeme remplit automatiquement le prochain creneau disponible :

curl -X POST https://api.upload-post.com/api/upload \
  -H "Autorisation : Apikey votre-clé-api-ici" \
  -F "[email protected]" \
  -F "user=mybrand" \
  -F "title=POV: you finally automated your TikTok posting #devlife" \
  -F "platform[]=tiktok" \
  -F "add_to_queue=true" \
  -F "privacy_level=PUBLIC"

S\'il est mercredi a 14 h, cette video sera placee au creneau de 18 h 00 le meme jour. Si tous les creneaux du mercredi sont pleins, elle passera au jeudi a 8 h 00. Vous pouvez previsualiser les prochains creneaux disponibles avant d\'ajouter du contenu :

curl https://api.upload-post.com/api/uploadposts/queue/preview?count=10 \
  -H "Autorisation : Apikey votre-clé-api-ici"

Cela renvoie les 10 prochains creneaux disponibles avec leurs dates et heures exactes, pour que vous sachiez precisement quand chaque publication en file d\'attente sera mise en ligne.

Paramètres spécifiques à TikTok à connaître

L\'API de TikTok expose plusieurs parametres que les autres plateformes n\'ont pas. Certains sont optionnels, mais quelques-uns sont legalement requis dans certaines situations. Voici la reference complete :

Paramètre Valeurs Description
privacy_level "PUBLIC", "FRIENDS", "PRIVATE" Contrôle qui peut voir la vidéo. Par défaut, utilise les paramètres de votre compte TikTok si omis.
disable_duet vrai / faux Empêche les autres utilisateurs de créer des duos avec votre vidéo.
disable_comment vrai / faux Désactive les commentaires sur la vidéo.
disable_stitch vrai / faux Empêche les autres utilisateurs d\'assembler votre vidéo dans la leur.
brand_content_toggle vrai / faux Marquez la vidéo comme un partenariat payé. Requis par la FTC et les réglementations de l\'L\'L\'UE lorsque vous faites la promotion d\'une marque pour laquelle vous êtes payé.
brand_organic_toggle vrai / faux Marquez la vidéo comme faisant la promotion de votre propre entreprise. Utilisez ceci lorsque le contenu concerne votre propre produit ou service, pas un parrainage tiers.
is_aigc vrai / faux Indique que le contenu a été généré ou significativement modifié par l\'IA. TikTok peut l\''étiqueter en conséquence pour les spectateurs.
tiktok_title string Titre/legende specifique a la plateforme. Utile lorsque votre legende TikTok differe du champ title principal envoye aux autres plateformes.
cover_timestamp integer (ms) Sélectionnez l\'image de la vidéo à cette milliseconde pour l\'utiliser comme miniature. Par exemple, 5000 choisit l\'image à la marque des 5 secondes.
post_mode "DRAFT", "PUBLISH" Défini sur "DRAFT" pour télécharger la vidéo comme brouillon dans TikTok (vous pouvez la revoir et la publier manuellement plus tard). Par défaut "PUBLISH".

Une note sur le contenu de marque : si vous creez du contenu sponsorise, vous devez definir brand_content_toggle=true. Ce n\'est pas optionnel. La FTC aux Etats-Unis et les reglementations equivalentes de l\'L\'UE exige une divulgation claire des partenariats payés. TikTok l\'applique egalement de son cote, donc ne pas le signaler correctement peut entrainer la suppression du contenu. Si vous faites la promotion de votre propre entreprise (pas une marque tierce), utilisez brand_organic_toggle=true a la place.

Pour le contenu genere par l\'IA, definir is_aigc=true ajoute une etiquette de divulgation visible par les spectateurs. A mesure que les reglementations sur le contenu IA evoluent, signaler cela de maniere proactive est une bonne pratique.

Planifiez des publications TikTok avec Python

Le guide d\'automatisation Python couvre le SDK en detail. Voici un exemple pratique pour TikTok : planifier en lot chaque video d\'un dossier, chacune a une heure d\'intervalle, a partir de demain matin.

pip install upload-post
import os
import glob
from datetime import datetime, timedelta
from upload_post import UploadPostClient

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

video_folder = "/path/to/tiktok-videos"
videos = sorted(glob.glob(os.path.join(video_folder, "*.mp4")))

# Start scheduling from tomorrow at 9 AM Eastern
base_time = (datetime.now() + timedelta(days=1)).replace(
    hour=9, minute=0, second=0, microsecond=0
)

print(f"Found {len(videos)} videos to schedule")

for i, video_path in enumerate(videos):
    publish_time = base_time + timedelta(hours=i)
    filename = os.path.basename(video_path)
    title = filename.replace(".mp4", "").replace("-", " ").replace("_", " ")

    try:
        response = client.upload_video(
            video_path=video_path,
            title=title,
            user="mybrand",
            platforms=["tiktok"],
            scheduled_date=publish_time.isoformat(),
            timezone="America/New_York",
            privacy_level="PUBLIC",
            disable_duet=False,
            disable_comment=False,
            cover_timestamp=3000,
            async_upload=True
        )
        job_id = response.get("job_id", "pending")
        print(f"[{i+1}/{len(videos)}] Scheduled {filename} for {publish_time} (Job: {job_id})")
    except Exception as e:
        print(f"[{i+1}/{len(videos)}] Failed: {filename} - {e}")

print("Toutes les vidéos programmées !")

Ce script espace chaque video d\'une heure. Vous pouvez ajuster le timedelta pour correspondre a votre cadence preferee. N\'oubliez pas que TikTok impose une limite quotidienne de 15 uploads par fenetre glissante de 24 heures par compte. Si vous avez plus de 15 videos, repartissez-les sur plusieurs jours ou utilisez le systeme de file d\'attente, qui gere les limites automatiquement.

Vous pouvez egalement combiner cela avec l'API FFmpeg pour redimensionner ou decouper les videos avant la planification, ou utiliser le calendrier des evenements reseaux sociaux pour aligner vos dates de publication avec les sujets tendance.

Sans code : planifier des publications TikTok avec n8n

Si vous preferez l\'automatisation visuelle a l\'ecriture de code, n8n est une excellente option. La configuration utilise le noeud HTTP Request pour appeler l\'API Upload-Post, and you can trigger it from Google Sheets, Google Drive, Airtable, or a manual button.

The basic flow looks like this:

  1. Trigger Node: se déclenche selon un planning, une nouvelle ligne dans un tableur ou un nouveau fichier dans un dossier cloud.
  2. Nœud de Requête HTTP: sends a POST multipart/form-data to https://api.upload-post.com/api/upload avec votre clé API, le fichier vidéo, le titre, platform[]=tiktok, and add_to_queue=true.
  3. Optionnel: a Slack or email notification when the\'upload reussit ou echoue.

Nous avons un template d\'upload TikTok pour n8n pret a l\'emploi que vous pouvez importer en un clic. Parcourez tous les templates n8n disponibles pour plus d\'idees d\'automatisation. Vous pouvez egalement configurer cela avec Make.com si c\'est votre plateforme d\'automatisation preferee.

Exigences vidéo TikTok

Avant de planifier, assurez-vous que vos videos respectent les specifications de TikTok. Telecharger un fichier qui ne repond pas a ces exigences entrainera un echec de publication.

Exigence Spécification
Taille maximale du fichier 4 Go
Formats supportés MP4, WebM, MOV
Ratio d\'aspect recommandé 9:16 (vertical). 1:1 et 16:9 sont acceptes mais peuvent s\'afficher avec des bandes noires.
Résolution 1080x1920 recommandee. Minimum 720p.
Durée 1 seconde a 10 minutes
Codec H.264 recommandé. H.265 (HEVC) est également supporté.
Limite quotidienne. de téléchargement. 15 videos par fenetre glissante de 24 heures par compte

Si vos videos sources sont dans le mauvais format ou ratio d\'aspect, l'API FFmpeg peut gerer la conversion dans le cloud avant la publication. Vous pouvez egalement reutiliser des videos YouTube en TikTok automatiquement.

Questions fréquemment posées

Puis-je programmer des posts TikTok gratuitement ?

Oui. Upload-Post inclut une offre gratuite avec 10 uploads par mois, et la planification est disponible sur tous les plans, y compris le gratuit. Vous pouvez planifier des publications avec des dates exactes ou utiliser le systeme de file d\'attente sans frais. Si vous avez besoin de plus de volume, les plans payants commencent a un tarif abordable sans engagement a long terme.

Que se passe-t-il si TikTok est en panne au moment de mon post programmé ?

Upload-Post retente automatiquement les uploads echoues. Si l\'TikTok API is temporarily unavailable at the\'heure planifiee, le systeme tentera de publier a nouveau dans les minutes suivantes. Si le probleme persiste, vous recevrez une notification via les webhooks (si configures) ou vous pourrez verifier le statut en utilisant l\'endpoint GET /api/uploadposts/status?job_id=your_job_id. Votre contenu n\'est jamais perdu.

Puis-je programmer sur TikTok et Instagram en même temps ?

Absolument. Passez simplement plusieurs plateformes dans la meme requete : platform[]=tiktok et platform[]=instagram. La meme video, le meme titre et la meme date planifiee s\'appliquent a toutes les plateformes. Si vous avez besoin de legendes differentes par plateforme, utilisez le parametre tiktok_title pour le texte specifique a TikTok tandis que le champ principal title est envoye aux autres plateformes. Consultez notre guide sur comment telecharger des videos en masse sur plusieurs plateformes pour des workflows multi-plateformes plus avances.

Combien de temps à l\'avance puis-je planifier des publications TikTok ?

Jusqu\'a 365 jours. Le parametre scheduled_date accepte n\'importe quelle date dans l\'annee a venir. Combine avec le systeme de file d\'attente, vous pourriez theoriquement remplir une annee entiere de contenu en une seule session de lot. La plupart des utilisateurs planifient d\'une a quatre semaines a l\'avance, ce qui est un bon equilibre entre planification et flexibilite. Notre calendrier des evenements reseaux sociaux peut vous aider a planifier du contenu autour des dates cles tout au long de l\'annee.

Commencez à planifier vos publications TikTok dès aujourd\'hui

Planifiez en lot une semaine de contenu TikTok en quelques minutes. Configurez votre file d\'attente, telechargez vos videos, et l\'API s\'occupe du reste. Plus de publication manuelle a des heures improbables.

Aucune carte de crédit requise. 10 téléchargements gratuits inclus.