Titres, tags, confidentialité et Shorts : upload YouTube video through API

Un seul POST authentifié suffit pour upload YouTube video through API avec un titre, jusqu'à 20 tags, un statut de confidentialité et l'id d'une playlist existante. Ici, YouTube se limite à la vidéo - pas de posts Communauté, pas de posts image ou texte - la charge utile est donc réduite et les règles strictes.

Une charge utile POST /social-posts avec un objet youtubeConfigs contenant videoTitle, tags, privacyStatus et playlistId

Toutes les options spécifiques à YouTube tiennent dans un seul objet

youtubeConfigs porte postType, videoTitle, tags, categoryId, privacyStatus, playlistId ainsi que les drapeaux notify/embed/kids/license, et il voyage dans la même requête POST /social-posts qui référence le fichier uploadé.

Gérer

Publiez sur toutes vos plateformes en un clic

Partagez sur Instagram, TikTok, YouTube, X et plus en un clic. Chaque post s'adapte automatiquement.

Planifier

Calendrier de contenu visuel

Le calendrier AdaptlyPost affiche chaque brouillon, publication programmée et publication parue, jour par jour, pour que vos créneaux restent remplis.

Mesurer

Toutes vos statistiques réseaux sociaux au même endroit

AdaptlyPost suit les vues, likes, partages et l'engagement de chaque compte connecté dans un seul tableau de bord d'analyse.

Intégrer

Accès API et skill OpenClaw

Connectez via API ou laissez votre agent OpenClaw gérer les publications. Automatisez les réseaux sociaux avec des commandes en langage naturel.

Générer

Générateur d'images IA pour les réseaux sociaux

Créez des images captivantes en quelques secondes. Décrivez votre vision et laissez l'IA la concrétiser.

Créer

Générateur de légendes IA pour chaque plateforme

Le copilote IA d'AdaptlyPost rédige les légendes, les réécrit pour chaque plateforme et ajoute les hashtags à partir d'un seul prompt.

Organiser

Planificateur de contenu pour réseaux sociaux

AdaptlyPost regroupe brouillons, posts programmés et contenus publiés dans une seule file, pour que vous sachiez ce qui part et quand.

La Confiance des Créateurs et des Équipes

Découvrez comment créateurs, marketeurs, agences et petites entreprises utilisent AdaptlyPost pour rester réguliers et gagner des heures chaque semaine.

Enfin un outil de programmation qui fait les choses bien

De toutes les applis de programmation de posts que j'ai essayées, c'est celle-ci qui décroche mes 5 tacos. L'interface est excellente. Taras, le fondateur, répond incroyablement vite. J'ai fait deux demandes hier pour améliorer l'expérience, et il les a mises en place en moins de 15 minutes. Je recommande cet outil à 100 %.

Vans.GoVans.Go

Enfin un meilleur gestionnaire de réseaux sociaux

Adaptly est SIMPLE : connectez vos réseaux sociaux, collez votre clé API et laissez l'IA s'en charger. Parfait pour tous ceux qui utilisent l'IA comme interface pour tout. Qu'il puisse aussi créer des images, c'est la cerise sur le gâteau.

SelvenSelven

Juste WOW !!

Vraiment impressionné par la simplicité de la configuration, de la connexion, de l'utilisation et de la publication. Publier 1 vidéo sur plusieurs plateformes m'aurait pris une heure. Publié sur 4 plateformes en moins de 10 minutes. Très satisfait de cet achat.

cftrader01cftrader01

excellent outil de publication (prometteur)

Le processus de publication est pratique et intuitif. Avec d'autres outils, j'abandonnais après un seul essai de création de post, alors qu'ici j'ai pu aller au bout et programmer une publication dans le calendrier. Il propose aussi de meilleures options pour YouTube, avec la possibilité de vérifier les réglages et d'ajouter des tags. Et il prend en charge MCP et les webhooks.

EgerboniEgerboni

L'interface est épurée, la publication est fiable et ça nous a déjà fait gagner beaucoup de temps

La plateforme permet de gérer et de programmer facilement du contenu sur plusieurs réseaux sociaux sans jongler entre différentes applications. L'équipe a aussi été réactive aux retours pendant le pilote, ce qui en dit long sur l'entreprise. Vivement recommandé.

bigjoebigjoe

Puissant et super simple

J'en ai essayé quelques autres, mais je devais sans cesse revenir en arrière, ou une erreur d'envoi bloquait tout et était difficile à corriger et à republier. Avec le MCP, j'ai enfin le contrôle total de mes comptes.

djprophecydjprophecy

Du terminal vide à l'upload publié

Étape 1

Créez une clé, puis retrouvez la chaîne

Les clés sont délivrées dans le tableau de bord, sous Settings > API Tokens, et commencent par adaptly_. Envoyez-les en `Authorization: Bearer <key>` vers https://post.adaptlypost.com/post/api/v1. La chaîne elle-même se connecte en OAuth dans le tableau de bord - aucun endpoint ne connecte, ne déconnecte ni ne teste l'état d'une chaîne YouTube - puis `GET /social-accounts` renvoie son id, sa platform et son displayName à référencer dans le post. Un appel vise une seule chaîne YouTube : une deuxième chaîne demande un deuxième appel, et envoyer deux comptes YouTube dans une même charge utile est rejeté avec un 400.

Étape 2

Envoyez le fichier, puis POST /social-posts avec youtubeConfigs

Seuls video/mp4 et video/quicktime sont acceptés, et `POST /upload-urls` rejette d'emblée tout autre type mime : demandez-y donc des URL présignées (1 à 20 fichiers, valables une heure), envoyez le fichier en PUT, puis créez le post avec `text`, `platforms: ["YOUTUBE"]`, `timezone` (IANA, par exemple "Europe/Berlin"), `contentType: "VIDEO"` et un objet `youtubeConfigs`. La liste des types de contenu pris en charge par YouTube se réduit à VIDEO et son maximum d'images par post est de 0 : un post IMAGE ou TEXT incluant YouTube n'atteint donc jamais la chaîne. Le corps de la requête est validé de façon synchrone : un `videoTitle` dépassant 100 caractères, plus de 20 `tags`, un champ obligatoire manquant ou un type de contenu non pris en charge reviennent tous en 400 sur l'appel de création lui-même, sans qu'aucun enregistrement de post soit écrit et sans rien à relancer. `postType: "SHORTS"` exige un fichier en 9:16 de 60 secondes ou moins : vérifiez donc le format et la durée avant d'appeler. Ajoutez `scheduledAt` pour programmer au lieu de publier immédiatement.

Étape 3

Lisez platformPostId, ou corrigez et relancez

`GET /social-posts/:id/results` renvoie l'entrée YouTube avec `status`, `publishedAt`, `errorMessage` et `platformPostId` - l'id brut de la vidéo YouTube. Aucune URL de visionnage n'est jamais renvoyée : construisez vous-même le lien à partir de cet id. Cet endpoint rapporte ce que YouTube a fait après que nous avons accepté et expédié l'upload, pas si la charge utile était bien formée - les charges utiles malformées n'arrivent jamais jusque-là, puisqu'elles ont échoué avec un 400 à la création. Ce qui apparaît dans `errorMessage` vient de la chaîne : un `playlistId` qui n'existe pas sur la chaîne connectée, une autorisation OAuth révoquée par le propriétaire de la chaîne, ou un upload que YouTube a refusé ou limité pendant son propre traitement. Corrigez la cause de fond, puis appelez `POST /social-posts/:id/retry` avec les `platformIds` en échec plutôt que de recréer le post. Il n'existe aucun sandbox nulle part dans l'API : ce qui s'en approche le plus est de publier avec `privacyStatus: "PRIVATE"` et de basculer le statut ensuite dans YouTube Studio.

Tarifs simples et transparents

Choisissez le forfait parfait pour vous

-17%

Creator

Parfait pour les indépendants et solopreneurs

$19

/mois

  • 30 comptes sociaux connectés

  • Posts programmés illimités

  • Collaboration en équipe

  • 1 espace de travail

  • 150 crédits IA/mois

  • Légendes IA

  • Studio d'images IA

  • API/MCP/CLI

  • Posts image, vidéo et carrousel

  • Direct Connector

  • Extensions de navigateur

Compatible avec

Plus populaire

Pro

Pour les professionnels et équipes en croissance

$39

/mois

  • 60 comptes sociaux connectés

  • Posts programmés illimités

  • 3 membres d'équipe

  • 3 espaces de travail

  • 400 crédits IA/mois

  • Légendes IA

  • Studio d'images IA

  • API/MCP/CLI

  • Posts image, vidéo et carrousel

  • Direct Connector

  • Extensions de navigateur

Compatible avec

Enterprise

Pour les agences et entreprises prêtes à grandir

$89

/mois

  • 100 comptes sociaux connectés

  • Posts programmés illimités

  • 10 membres d'équipe

  • 10 espaces de travail

  • 1000 crédits IA/mois

  • Légendes IA

  • Studio d'images IA

  • API/MCP/CLI

  • Posts image, vidéo et carrousel

  • Direct Connector

  • Extensions de navigateur

Compatible avec

Sur mesure

Limites sur mesure, marque blanche et support prioritaire

Sur mesure

  • Comptes sociaux illimités

  • Posts programmés illimités

  • Membres d'équipe illimités

  • Espaces de travail illimités

  • Crédits IA illimités

  • Légendes IA

  • Studio d'images IA

  • API/MCP/CLI

  • Posts image, vidéo et carrousel

  • Direct Connector

  • Extensions de navigateur

Compatible avec

Essai 7 jours inclus sur tous les forfaits

Vous voulez voir la comparaison complète des fonctionnalités ? Voir la page des tarifs

Ce que vous pouvez réellement définir sur un upload YouTube

Uploads longs avec métadonnées attachées

`postType: "VIDEO"` publie un upload standard. `videoTitle` définit le titre, avec un plafond de 100 caractères, `tags` accepte jusqu'à 20 chaînes, `categoryId` prend l'id numérique de catégorie YouTube, et le `text` du post accompagne la vidéo comme corps de description. Rien d'autre que cet objet n'est paramétrable : cette API n'expose aucun champ miniature, chapitre, écran de fin, sous-titres ou première.

Les Shorts sur le même endpoint

Passez `postType` à `"SHORTS"` pour publier des YouTube Shorts via l'API - même endpoint, même youtubeConfigs, même pipeline upload-urls. La contrainte décisive vient du média, pas du drapeau : un Short exige un ratio 9:16 et une durée de 60 secondes ou moins, alors validez dimensions et durée avant l'appel plutôt qu'après.

Confidentialité, notifications et désignation du public

`privacyStatus` accepte PUBLIC, UNLISTED ou PRIVATE. `notifySubscribers` décide si les abonnés de la chaîne sont notifiés, `allowEmbedding` fixe l'autorisation d'intégration, `madeForKids` porte la désignation du public, et `license` définit la licence de la vidéo. Tous ces réglages sont par post : un arriéré d'archives peut donc partir en privé et sans notification pendant qu'une vidéo de lancement passe en public et notifie.

Ajouter l'upload à une playlist existante

Renseignez `playlistId` dans youtubeConfigs et l'upload terminé est classé dans cette playlist. Elle doit déjà exister - l'API peut ajouter à une playlist, mais ne peut ni en créer, ni en renommer, ni en réordonner, ni en lister - alors copiez l'id depuis YouTube Studio (la valeur `list=` dans l'URL de la playlist) et stockez-le dans votre propre configuration. Si l'id est erroné, cela apparaît sur l'entrée YouTube renvoyée par `/results`.

Branchez votre premier upload YouTube

Créez une clé dans Settings > API Tokens, importez GET /openapi.json dans votre client HTTP, Make ou n8n, et le premier upload n'est plus qu'à un POST. Testez avec privacyStatus PRIVATE avant de passer en public.