Workflow d’approbation
Si votre workflow de publication nécessite une approbation avant l’envoi d’une publication, définissez le champrequiresApproval sur true.
Cela revient à mettre la publication en pause jusqu’à ce que le paramètre approved soit défini sur true.
Exemple de workflow d’approbation
La publication aura le statut « awaiting approval » (en attente d’approbation) jusqu’à ce que le paramètreapproved soit défini sur true via le point de terminaison PATCH /post.
Publier avec des paramètres
Publiez votre publication à l’aide du point de terminaison /post avec le champ
requiresApproval
défini sur true. Vous pouvez également inclure des paramètres standards comme scheduleDate.Le statut est « en attente d'approbation »
La publication sera au statut « awaiting approval » et sera retenue jusqu’à ce que l’approbation soit accordée.
Approuver la publication
Mettez à jour la publication avec l’opération PATCH /post en définissant le champ
approved
sur true. La publication sera alors envoyée à la date planifiée.Publish the Post with Approval
Vidéo du workflow d’approbation
Consultez la vidéo ci-dessous pour un exemple de workflow d’approbation.Auto Hashtags
Ajoutez les hashtags les plus pertinents à votre publication.autoHashtag est un objet, ou un booléen — voir ci-dessous —, avec les paramètres suivants :
max: (facultatif) nombre entier de hashtags à ajouter, entre 1 et 10. 2 par défaut.position: (facultatif) chaîne « auto » ou « end ». « auto » insère les hashtags dans la publication ou à la fin. « end » ajoute les hashtags uniquement à la fin.
true au lieu d’un objet.
Auto Repost
Republie automatiquement votre contenu plusieurs fois à intervalles réguliers, créant un contenu evergreen qui reste frais et visible auprès de votre audience. Un plan payant est requis. Paramètres :repeat: (obligatoire) nombre de fois où republier le contenu. Doit être compris entre 1 et 10.days: (obligatoire) nombre de jours entre chaque republication. Minimum 2 jours.startDate: (facultatif) date de début de la planification des republications, au format UTC ISO-8601. Si non spécifié, la première publication est diffusée immédiatement. Utilisez le paramètrestartDateà la place du paramètrescheduleDatede premier niveau.
Auto Repost
autoRepostId pour chacune.
Auto Repost Response
autoRepostId est attribué pour suivre cette série de publications.
Vous pouvez récupérer toutes les republications automatiques d’une publication avec l’appel History et l’autoRepostId.
Si vous devez supprimer une republication, utilisez l’appel DELETE avec l’ID de la publication.
Premier commentaire
Ajoutez automatiquement un premier commentaire, avec un média, après la publication. Pour TikTok, le commentaire est différé jusqu’à ce que la vidéo ait fini d’être traitée (voir Délai de traitement du premier commentaire). Publier le premier commentaire sur votre propre publication peut aider à amorcer l’engagement et à donner le ton de la discussion qui suit.Délai de traitement du premier commentaire
Pour la plupart des réseaux sociaux, la réponse de l’API est retardée car notre système doit (1) attendre que la publication d’origine soit entièrement diffusée, puis (2) ajouter le commentaire à cette publication. Ce processus séquentiel ajoute un délai d’environ 20 secondes. TikTok est géré différemment. TikTok traite les vidéos de manière asynchrone : l’id de la publication reste "pending" jusqu’à ce que le webhook post.publish.publicly_available de TikTok résolve l’ID réel de la vidéo (voir Traitement TikTok). La réponse /post renvoie donc immédiatement le premier commentaire TikTok avec status: "pending", et le commentaire est publié automatiquement une fois que TikTok a terminé le traitement et que le webhook Scheduled Action tikTokPublished est déclenché. TikTok ne garantit pas de délai de traitement, il n’y a donc pas de délai fixe.
Remarque importante concernant TikTok : pour que les premiers commentaires fonctionnent correctement sur TikTok, le paramètre visibility de la publication doit être défini sur public. Une vidéo non publique ne reçoit jamais le webhook publicly_available, donc son premier commentaire ne peut pas être publié ; dans ce cas, Ayrshare renvoie une erreur de commentaire au lieu de le laisser en attente.
Publications idempotentes
L’idempotence est une fonctionnalité facultative qui garantit qu’une requête n’est exécutée qu’une seule fois, même si elle est envoyée plusieurs fois par erreur. Lorsque vous publiez du contenu via l’API, vous pouvez inclure un paramètre facultatifidempotencyKey dans le corps de la requête pour identifier l’opération de manière unique. Cela permet de réessayer la requête de publication en toute sécurité, sans risque de créer des publications en double.
Pour utiliser l’idempotence, ajoutez le paramètre idempotencyKey dans le corps JSON de la requête POST /post :
Idempotency Key
idempotencyKey doit être une chaîne unique par User Profile. Si une requête est effectuée avec la même idempotencyKey pour un User Profile donné, quel que soit l’état de la publication (success, error, pending ou supprimée), une erreur sera renvoyée indiquant qu’une clé en double a été trouvée.
L’idempotence contribue à éviter la création accidentelle de publications en double lorsque vous relancez des requêtes ayant échoué ou gérez des problèmes réseau. Cependant, il est toujours recommandé de mettre en place une gestion appropriée des erreurs et des mécanismes de nouvelle tentative dans votre application afin de gérer les défaillances éventuelles avec élégance.
Exigences relatives aux images et vidéos
La publication d’images et de vidéos comporte des exigences différentes selon chaque réseau, mais pas d’inquiétude : notre système vérifie votre publication avant l’envoi, et vous recevrez une réponse d’erreur si quelque chose ne va pas. Consultez le lien ci-dessous pour connaître les détails sur les recommandations en matière d’images et de vidéos.Recommandations pour les images et vidéos
URL valide
Assurez-vous que vos URL de médias sont valides et permettent un accès direct au média. Un premier test consiste à ouvrir l’URL dans un navigateur. Si l’image ne se charge pas ou ne peut pas être téléchargée dans un navigateur, elle échouera probablement. Par exemple, une URL DropBox qui ouvre l’application web DropBox ne fonctionnera pas. Nous vérifions l’URL du média en effectuant une requêteHEAD.
Assurez-vous que l’hébergeur ne bloque pas la requête HEAD, sans quoi la publication échouera avec une erreur 403.
Par exemple, voici une requête HEAD vers l’URL d’un média :
Fetch HEAD Request
Protection automatisée des médias
Ayrshare intègre une protection des médias intégrée capable de détecter et de résoudre certains problèmes de diffusion de médias lors de la publication. Lorsqu’une publication réussit mais qu’un problème de contenu a été détecté et résolu, chaque entrée concernée danspostIds[] inclut un objet facultatif contentIssues afin que vous puissiez identifier et corriger le problème sous-jacent :
originMediaHostFailed dans vos réponses, vérifiez la configuration de l’hébergement de vos médias. Consultez Meta Media Crawler Blocked pour connaître les causes et solutions les plus courantes.
Espaces et caractères spéciaux
Nous vous recommandons d’éviter les éléments suivants dans vos URL de médias :- Les espaces dans l’URL.
- Les espaces encodés dans l’URL.
- Les caractères spéciaux dans l’URL, même s’ils sont encodés, tels que les accents « é ».
test .webp. Nous déconseillons également l’utilisation d’espaces encodés dans l’URL, tels que %20 — cela peut également causer des problèmes avec certains réseaux sociaux.
Et cette image Unsplash :
Assainir les noms de fichiers et les URL
Vous pouvez assainir vos noms de fichiers à l’aide d’une expression régulière telle que/[^a-z0-9\/\.]/gi.
Informations complémentaires
- Si vous auto-hébergez, assurez-vous que l’URL est accessible depuis l’extérieur et ne nécessite pas d’autorisations spéciales.
- Voyez ci-dessous comment gérer les vidéos avec des extensions inconnues, souvent des URL signées comme AWS S3.
- Si vous utilisez une URL signée, comme S3, nous recommandons de définir l’expiration de l’URL à au moins 7 jours. Cela permet à notre équipe de vous assister pour toute question sur la publication.
- Vérifiez l’existence de l’URL du média avec nos outils de vérification de média.
Vitesse de téléchargement
Assurez-vous que votre hébergement de médias dispose d’une connexion rapide, notamment en vitesse de téléchargement. Vous pouvez tester les performances de votre hébergement sur pingdom. Nous recommandons au moins une note B.Extension vidéo
Si votre URL ne se termine pas par une extension vidéo connue telle quemp4, vous pouvez utiliser le champ isVideo: true dans la publication pour spécifier que le mediaUrl est une vidéo. Ayrshare tentera de déterminer le type de fichier, par exemple MOV. Cependant, nous recommandons de terminer explicitement votre fichier vidéo par une extension connue telle que mp4, car cela offre un taux de réussite plus élevé auprès des réseaux sociaux.
Image ou vidéo uniquement
Quelques réseaux sociaux prennent en charge l’envoi de médias sans texte de publication. Si vous ne souhaitez pas inclure de texte, envoyez une chaîne vide :post: ""
Les réseaux sociaux suivants prennent en charge les publications sans texte : Facebook, Instagram, LinkedIn, Threads, TikTok et X/Twitter.
Tester les images et vidéos
Envisagez d’utiliser générer du texte aléatoire et une image ou vidéo aléatoire pour accélérer vos tests. Arrêtez d’essayer de trouver quelque chose de différent pour chacune de vos publications de test !Sauts de ligne
Si vous souhaitez insérer des sauts de ligne (nouvelles lignes) dans une publication, utilisez le saut de ligne invisible
\u2063\n. Par exemple, This is a new\u2063\nline.Nous recommandons également d’essayer dans Postman pour voir comment le nouveau saut de ligne est traduit dans votre langage. Par exemple, PHP n’utilise souvent qu’un \n.Certains réseaux sociaux ne prennent actuellement pas en charge les sauts de ligne dans le texte de la publication.Publications et médias multi-plateformes
Cette fonctionnalité vous permet de personnaliser le contenu et les médias de votre publication pour différents réseaux sociaux au sein d’un seul appel API. Vous pouvez spécifier du texte et/ou des images uniques pour chaque plateforme en utilisant des objets pour les champspost et mediaUrls.
- Utilisez une structure d’objet pour les champs
postet/oumediaUrls. - Spécifiez le contenu propre à chaque plateforme en utilisant les noms des plateformes comme clés.
- Incluez une clé
defaultpour le contenu à utiliser sur les plateformes qui ne sont pas explicitement spécifiées.
- Instagram utilisera son texte et son URL d’image spécifiques.
- Facebook utilisera son texte spécifique et l’URL d’image par défaut.
- LinkedIn utilisera le texte par défaut et son URL d’image spécifique.
Si vous devez publier plusieurs images sur différentes plateformes, créez des publications distinctes pour chaque
plateforme au lieu d’utiliser cette structure multi-plateformes.
Profile Keys
Publiez pour le compte d’un utilisateur en fournissant les Profile Keys des utilisateurs comme paramètre de corps et les données supplémentaires dans la réponse. Business Plan ou Enterprise Plan requis.Profiles
Publications en texte enrichi
Vous pouvez ajouter du texte enrichi comme « 𝓗𝓮𝓵𝓵𝓸, how about a little 𝗯𝗼𝗹𝗱 𝘁𝗲𝘅𝘁 and 𝘪𝘵𝘢𝘭𝘪𝘤𝘴 𝘵𝘦𝘹𝘵 and an x₂ ? ». Vous pouvez utiliser le texte enrichi sur des réseaux tels que Twitter, Facebook, LinkedIn, Telegram et Instagram. Si vous publiez sur Reddit, utilisez le formatage Markdown propre à Reddit. Des éléments HTML sont utilisés pour spécifier le type de texte enrichi, qui est converti en unicode. Par exemple :Éléments HTML
| HTML | Exemple |
|---|---|
| <b>Nice One!</b> | Nice One! |
| <strong>Hello, world!</strong> | Hello, world! |
| <em>World</em> | World |
| normal <i>italics <b>bold italics</b></i> | normal italics bold italics |
| `<b>Hello</b>, world!` | Hello, world! |
| `<b>Hello</b>, world!` | Hello, world! |
| <samp>123</samp> | 𝟷𝟸𝟹 |
| <var>Hello</var> | 𝓗𝓮𝓵𝓵𝓸 |
| x<sub>2</sub> | x₂ |
| x<sup>2</sup> | x² |
Codes CSS
| Code | Exemple | Résultat |
|---|---|---|
| \u00B0 | It’s 25\u00B0C today! | It’s 25°C today! |
| \u2063\n | This is a new\u2063\nline. | This is a new line. |
Planifier des publications
Créer des publications planifiées
Vous pouvez planifier des publications futures en spécifiant le paramètrescheduleDate avec la date et l’heure au format Zulu/UTC. L’heure Zulu, également appelée temps universel coordonné (UTC), est la norme mondiale pour l’heure.
Par exemple, utilisez le format YYYY-MM-DDThh:mm:ssZ et envoyez 2026-07-08T12:30:00Z.
Consultez utctime pour plus d’exemples.
Si un
mediaUrl est inclus avec une publication planifiée, le média doit être disponible au moment de la
publication planifiée. Par exemple, si la publication est planifiée pour le 5 mars 2026, le
média doit être disponible le 5 mars 2026.Vérifier le statut d’une publication planifiée
Vous pouvez vérifier le statut d’une publication planifiée de plusieurs manières :- Configurez le Webhook Scheduled Action pour recevoir automatiquement le statut de la publication planifiée. Disponible pour le Business Plan, c’est la méthode recommandée.
- Récupérez le statut d’une publication planifiée avec l’appel GET et l’ID de la publication.
- Vérifiez le statut dans le tableau de bord Ayrshare. Basculez d’abord vers le User Profile sous lequel la publication a été publiée, puis rendez-vous sur la page « Posts » et effectuez une recherche à l’aide de l’Ayrshare Post ID.
Mettre en pause des publications planifiées
Vous pouvez mettre en pause des publications planifiées qui n’ont pas encore été diffusées. Mettre une publication planifiée en pause l’empêche d’être diffusée jusqu’à sa reprise. Utilisez l’appel PATCH pour mettre en pause ou reprendre la publication planifiée. Notez que si une publication est reprise et quescheduleDate est dans le passé, la publication sera diffusée immédiatement. Envisagez de mettre à jour scheduleDate avant de reprendre la publication.
Raccourcir les liens
Les liens d’une publication peuvent être raccourcis à l’aide du raccourcisseur de liens d’Ayrshare. Vous pouvez activer le raccourcissement automatique des liens avec le paramètreshortenLinks lors de l’envoi d’une publication. Max Pack requis.
Images Unsplash
Les champs suivants sont disponibles pour le paramètreunsplash du corps :
- Image aléatoire :
randomrenvoie une image Unsplash aléatoire. - Image basée sur une recherche : valeur String contenant un terme de recherche ; par ex.
moneysélectionnera une image aléatoire liée à l’argent. - IDs d’images : valeur Array d’IDs ; par ex. [“HubtZZb2fCM”] correspondant à l’image https://unsplash.com/photos/HubtZZb2fCM
Si vous copiez une URL Unsplash pour la publier dans
mediaUrls, veillez à copier l’adresse de l’image et
pas uniquement l’URL. Consultez cet
exemple pour plus d’informations.