Platforms

Configurations par plateforme

Options de configuration spécifiques par plateforme pour publier finement sur YouTube, TikTok, Pinterest, Instagram, Facebook, LinkedIn et la fiche d'établissement Google.

Chaque plateforme possède des fonctionnalités et des paramètres uniques. Utilisez les objets de configuration ci-dessous lors de la création de publications pour personnaliser le comportement par plateforme.

TikTok

ParamètreTaperDescription
connectionIdREQUISstringL'id du compte de /social-accounts auquel cette configuration s'applique
titlestringTitre de la vidéo (90 caractères max.)
captionstringTexte de description de la vidéo (2200 caractères max.)
privacyLevelREQUISstringPUBLIC_TO_EVERYONE, MUTUAL_FOLLOW_FRIENDS, FOLLOWER_OF_CREATOR, SELF_ONLY
allowCommentsbooleanAutoriser les commentaires sur la vidéo
allowDuetbooleanAutoriser les duos
allowStitchbooleanAutoriser les assemblages
sendAsDraftbooleanEnvoyer comme brouillon vers l'application TikTok
aiGeneratedbooleanMarquer comme contenu généré par IA
autoAddMusicbooleanAjouter automatiquement de la musique à la vidéo
brandedContentbooleanMarquer comme contenu de marque
brandedContentOwnBrandbooleanMarquer comme promotion de votre propre marque
Exemple
{
  "tiktokConfigs": [{
    "connectionId": "conn_tiktok_001",
    "title": "Product Demo",
    "privacyLevel": "PUBLIC_TO_EVERYONE",
    "allowComments": true,
    "allowDuet": false,
    "aiGenerated": false
  }]
}

YouTube

ParamètreTaperDescription
connectionIdREQUISstringL'id du compte de /social-accounts auquel cette configuration s'applique
postTypestringVIDEO ou SHORTS
videoTitlestringTitre de la vidéo (100 caractères max.)
tagsstring[]Tags de la vidéo pour la découverte (20 max.)
privacyStatusstringpublic, unlisted ou private
categoryIdstringIdentifiant de catégorie YouTube
playlistIdstringAjouter à une playlist après l'envoi
notifySubscribersbooleanNotifier les abonnés (par défaut true)
allowEmbeddingbooleanAutoriser l'intégration sur d'autres sites
madeForKidsbooleanMarquer comme destiné aux enfants
aiGeneratedbooleanDéclare un contenu modifié ou synthétique, comme une voix IA, un avatar IA ou des images réalistes générées ou retouchées. YouTube affiche le libellé "Contenu modifié ou synthétique" sur la vidéo. Définit status.containsSyntheticMedia. Fonctionne sur les vidéos et les Shorts. Omettez-le ou envoyez false pour ne pas afficher de libellé.
licensestringyoutube ou creativeCommon
Exemple
{
  "youtubeConfigs": [{
    "connectionId": "conn_yt_001",
    "postType": "VIDEO",
    "videoTitle": "Weekly Product Update",
    "tags": ["product", "update", "tech"],
    "privacyStatus": "PUBLIC",
    "notifySubscribers": true,
    "allowEmbedding": true,
    "madeForKids": false
  }]
}

Pinterest

Choisissez le tableau avec boardId ou boardName. GET /api/v1/social-accounts/:id/pinterest-boards (voir Comptes sociaux) liste l'id et le nom de chaque tableau. Un tableau appartient à un seul compte Pinterest, listez donc les tableaux de chaque compte sur lequel vous publiez. Un boardName est recherché parmi les tableaux du compte de cette configuration au traitement de la requête, et la publication enregistre l'id du tableau trouvé ; le nom lui-même n'est ni enregistré ni renvoyé. Un nom qui ne correspond à aucun tableau, ou à plusieurs, renvoie une 400, et l'épingle ne part jamais sur un autre tableau à la place. Dans une requête groupée, seul cet élément échoue. Sans boardId ni boardName, l'épingle va sur un tableau public nommé AdaptlyPost, qu'AdaptlyPost crée sur le compte Pinterest la première fois qu'il en a besoin.

ParamètreTaperDescription
connectionIdREQUISstringL'id du compte de /social-accounts auquel cette configuration s'applique
boardIdstringIdentifiant du tableau Pinterest où épingler. Passez boardId ou boardName, pas les deux. Sans aucun des deux, l'épingle va sur un tableau public nommé AdaptlyPost
boardNamestringNom du tableau où épingler, à la place de boardId. 180 caractères au maximum. Une correspondance exacte l'emporte ; à défaut, une correspondance unique sans tenir compte de la casse est utilisée. Un nom qui ne correspond à aucun tableau ou à plusieurs renvoie une 400
titlestringTitre de l'épingle (100 caractères max.)
linkstringURL de destination lors du clic sur l'épingle
Exemple
{
  "pinterestConfigs": [{
    "connectionId": "conn_pin_001",
    "boardId": "board_123",
    "title": "Summer Collection 2026",
    "link": "https://example.com/summer-collection"
  }]
}

Instagram

ParamètreTaperDescription
connectionIdREQUISstringL'id du compte de /social-accounts auquel cette configuration s'applique
postTypestringFEED, REEL ou STORY. FEED accepte tous les types de contenu, REEL exige VIDEO, STORY exige IMAGE, VIDEO ou CAROUSEL ; une story CAROUSEL publie chaque élément comme sa propre story, dans l’ordre. Toute autre combinaison renvoie 400. Les vidéos du fil et les Reels peuvent durer jusqu’à 15 minutes
shareToStorybooleanPublie aussi les mêmes médias en story à côté de la publication FEED ou REEL. La story est une entrée à part dans platforms avec postType STORY : elle réussit, échoue et se relance seule. Elle ne reprend ni la légende, ni le premier commentaire, ni la couverture, ni les collaborateurs, ni l’essai, ni l’audio, exige IMAGE, VIDEO ou CAROUSEL, et une vidéo dure au plus 60 secondes. Ignoré quand postType vaut STORY
trialGraduationstringPublie le reel en reel d'essai, montré d'abord aux non-abonnés. MANUAL : vous le partagez avec vos abonnés dans l'app Instagram. SS_PERFORMANCE : Instagram le partage s'il fonctionne bien. Reels vidéo uniquement ; omettez-le pour un reel normal
collaboratorsstring[]Jusqu'à 3 noms d'utilisateur Instagram invités comme collaborateurs (Instagram Collab). Le @ initial est retiré. Fonctionne sur les images du fil, les carrousels et les reels, pas sur les stories ni les reels d'essai. Chaque collaborateur accepte l'invitation dans Instagram avant que la publication apparaisse sur son profil.
userTagsobject[]Jusqu'à 20 comptes Instagram publics identifiés dans le média, chacun { username, x, y }. Fonctionne sur une seule image, une seule vidéo (Reel) ou une seule story, pas sur les carrousels. x et y vont de 0 à 1 sur l'image, depuis le coin supérieur gauche, et chaque identification sur une image du fil a besoin des deux. Une story peut les omettre, et une vidéo les ignore, car la personne est identifiée sur toute la vidéo. Le @ initial est retiré. Si Instagram refuse une identification parce que le compte est privé ou n'existe pas, la publication part sans identifications et instagramUntaggedUsernames liste les noms refusés.
aiGeneratedbooleanIndique que la publication a été créée ou modifiée avec l'IA. Instagram affiche le libellé "Infos IA" sur la publication. Fonctionne sur les images, les carrousels, les reels et les stories, et la story créée avec shareToStory porte aussi le libellé.
audioInstagramAudioUne musique ou un son original ajouté au Reel. Exige contentType VIDEO, un postType autre que STORY et un compte avec supportsInstagramAudio: true. Consultez Audio Instagram ci-dessous
Exemple
{
  "contentType": "VIDEO",
  "instagramConfigs": [{
    "connectionId": "conn_ig_001",
    "postType": "REEL",
    "shareToStory": true,
    "collaborators": ["@partnerbrand"],
    "audio": {
      "audioId": "1234567890123456",
      "title": "Summer Nights",
      "artist": "The Example Band",
      "audioVolume": 60,
      "videoVolume": 100
    }
  }]
}

Audio Instagram

Trouvez un audioId avec GET /api/v1/social-accounts/:id/instagram-audio (voir Comptes sociaux), puis passez-le dans instagramConfigs[].audio.

ParamètreTaperDescription
audioIdREQUISstringL’audioId issu de la recherche d’audio
titlestringTitre du morceau, enregistré pour l’affichage uniquement (255 caractères max.)
artiststringArtiste ou créateur, enregistré pour l’affichage uniquement (255 caractères max.)
audioVolumenumberVolume de l’audio ajouté, de 1 à 100 (100 par défaut)
videoVolumenumberVolume du son d’origine de la vidéo, de 1 à 100 (100 par défaut)

Facebook

ParamètreTaperDescription
pageIdREQUISstringLa page Facebook à laquelle cette configuration s'applique, telle qu'envoyée dans pageIds
postTypestringFEED, REEL ou STORY. FEED accepte tous les types de contenu, REEL exige VIDEO, STORY exige IMAGE, VIDEO ou CAROUSEL ; une story CAROUSEL publie chaque élément comme sa propre story, dans l’ordre. Toute autre combinaison renvoie 400
shareToStorybooleanPublie aussi les mêmes médias en story à côté de la publication FEED ou REEL. La story est une entrée à part dans platforms avec postType STORY : elle réussit, échoue et se relance seule. Elle ne reprend ni la légende, ni le titre de la vidéo, ni le fond de texte, exige IMAGE, VIDEO ou CAROUSEL, et une vidéo dure au plus 60 secondes. Ignoré quand postType vaut STORY
videoTitlestringTitre pour les publications vidéo (255 caractères max.)
textFormatPresetIdstringArrière-plan Facebook d'une publication texte, sous forme d'identifiant numérique Facebook (106018623298955 est un violet uni). Publications TEXT uniquement, sans média, 130 caractères maximum ; tout le reste renvoie 400. Les liens s'affichent sans aperçu, et si Facebook refuse l'arrière-plan, la publication part en texte simple
imageLayoutstringGRID (par défaut) affiche plusieurs images en grille de photos. CAROUSEL les affiche en cartes à faire défiler, chacune avec son propre lien. Un carrousel nécessite 2 à 5 images, aucune vidéo, postType FEED et une entrée carouselCards par image ; tout autre cas renvoie 400
carouselCardsarrayUne carte par image, dans le même ordre que les médias, utilisée quand imageLayout vaut CAROUSEL. Chaque carte a link (obligatoire, http ou https), title (jusqu'à 100 caractères) et description (jusqu'à 200). Facebook n'affiche votre image et votre titre que pour les liens vers un site qui appartient à la Page ; pour tout autre lien, la publication échoue et indique pourquoi

LinkedIn

ParamètreTaperDescription
connectionIdREQUISstringL'id du compte de /social-accounts auquel cette configuration s'applique
documentTitlestringTitre affiché sur une publication DOCUMENT (100 caractères max.). Par défaut, le nom du fichier ; ignoré pour les autres types de contenu
reshareOfstringUne publication LinkedIn à partager, avec le texte de la publication comme commentaire : un URN urn:li:share: ou urn:li:ugcPost:, ou une URL de publication LinkedIn qui en contient un, comme /feed/update/urn:li:share:7123/ ou le lien d'intégration de la publication (500 caractères max.). Aucun média n'est joint sur ce compte ; les autres plateformes de la publication le reçoivent toujours. Un URN d'activité ou une URL /posts/...-activity-... renvoie 400
Exemple
{
  "contentType": "DOCUMENT",
  "mediaUrls": ["https://cdn.adaptlypost.com/.../q3-results.pdf"],
  "linkedinConnectionIds": ["conn_li_001"],
  "linkedinConfigs": [{
    "connectionId": "conn_li_001",
    "documentTitle": "Q3 results"
  }]
}

Fiche d'établissement Google

La fiche d’établissement Google accepte les publications TEXT ou IMAGE avec une image JPEG ou PNG de 5 Mo maximum et un texte de 1500 caractères maximum. Elle n’a pas de texte alternatif. Un établissement sans configuration publie une actualité STANDARD.

ParamètreTaperDescription
connectionIdREQUISstringL'id du compte de /social-accounts auquel cette configuration s'applique
topicTypeREQUISstringSTANDARD, EVENT ou OFFER. EVENT et OFFER exigent eventTitle, eventStart et eventEnd
callToActionTypestringBOOK, ORDER, SHOP, LEARN_MORE, SIGN_UP ou CALL. CALL utilise le numéro de téléphone de la fiche d'établissement
callToActionUrlstringDestination du bouton. Obligatoire pour tous les boutons sauf CALL
eventTitlestringTitre de l'événement ou de l'offre
eventStartstringDébut dans l'heure locale de l'établissement, au format YYYY-MM-DD ou YYYY-MM-DDTHH:mm, sans fuseau horaire
eventEndstringFin dans l'heure locale de l'établissement, au format YYYY-MM-DD ou YYYY-MM-DDTHH:mm, sans fuseau horaire
offerCouponCodestringCode promo affiché sur l'offre
offerRedeemUrlstringLien où les clients profitent de l'offre
offerTermsstringConditions de l'offre
Exemple
{
  "googleBusinessConfigs": [{
    "connectionId": "conn_gbp_001",
    "topicType": "EVENT",
    "eventTitle": "Live music night",
    "eventStart": "2026-10-16T19:00",
    "eventEnd": "2026-10-16T23:00",
    "callToActionType": "LEARN_MORE",
    "callToActionUrl": "https://example.com/events/live-music"
  }]
}

Tumblr

ParamètreTaperDescription
connectionIdREQUISstringL'id du compte de /social-accounts auquel cette configuration s'applique
tagsstring[]Jusqu'à 30 tags de 140 caractères maximum chacun, sans virgule. Le # initial est retiré
titlestringTitre affiché au-dessus du post, jusqu'à 4 096 caractères
sourceUrlstringLien http ou https crédité comme source, jusqu'à 2 048 caractères
Exemple
{
  "tumblrConfigs": [{
    "connectionId": "conn_tumblr_001",
    "title": "Studio notes, week 12",
    "tags": ["art process", "sketchbook"],
    "sourceUrl": "https://example.com/blog/studio-notes"
  }]
}