Publications

Ce guide explique comment créer, ajouter et modifier une publication et répondre à une publication sur votre Page Facebook au nom de la Page, et supprimer une publication à l’aide de l’API Pages de Meta.

Avant de commencer

This guide assumes you have read the Overview

For a person who can perform tasks on the page, you will need to implement Facebook Login to ask for the following permissions and receive a Page access token:

  • pages_manage_engagement
  • pages_manage_posts
  • pages_read_engagement
  • pages_read_user_engagement
  • publish_video permission, if you are publishing a video to the Page

Your app user must be able to perform the CREATE_CONTENT, MANAGE, and MODERATE tasks on the Page in the API requests.

If your app users do not own or manage the Page in the API requests, your app will need a User access token and the following features:

  • Page Public Content Access

Recommandations

Lorsque vous testez un appel d’API, vous pouvez inclure le paramètre access_token, défini sur votre token d’accès. En revanche, lorsque vous effectuez des appels sécurisés depuis votre application, utilisez la classe de token d’accès.

Ajout de publications

Pour ajouter une publication sur une Page, envoyez une requête POST au point de terminaison /page_id/feedpage_id correspond à l’ID de votre Page, avec les paramètres suivants :

  • message défini sur le texte de votre publication
  • lien défini sur votre URL si vous voulez publier un lien
  • published défini sur true pour ajouter la publication immédiatement (par défaut) ou false pour l’ajouter ultérieurement
    • Si vous choisissez la valeur false, ajoutez scheduled_publish_time avec la date dans l’un des formats suivants :
      • Un nombre entier au format UNIX [en secondes] (par exemple 1530432000)
      • Une chaîne ISO 8061 (par exemple 2018-09-01T10:15:30+01:00)
      • N’importe quelle chaîne qui peut être traitée par le strtotime() de PHP (par exemple +2 weeks, tomorrow)

Remarques sur les publications programmées

  • La date de publication doit être comprise entre 10 minutes et 30 jours après la date de la requête API.
  • Si vous utilisez les chaînes de date relatives de strtotime(), vous pouvez configurer la lecture après écriture du paramètre scheduled_publish_time de la publication créée afin de vérifier qu’il est correct.

Exemple de requête

Formaté pour plus de lisibilité. Remplacez les valeurs en gras et en italique, comme page_id, par vos propres valeurs.
curl -X POST "https://graph.facebook.com/v21.0/page_id/feed" \
     -H "Content-Type: application/json" \
     -d '{
           "message":"your_message_text",
           "link":"your_url",
           "published":"false",
           "scheduled_publish_time":"unix_time_stamp_of_a_future_date",
         }'

Si la requête aboutit, votre application reçoit la réponse JSON suivante avec l’ID de la publication :

{
  "id": "page_post_id" 
}

Ajout d’un ciblage d’audience

Pour restreindre le nombre de personnes pouvant voir une publication de Page, vous pouvez ajouter l’objet targeting.geo_locations ou le paramètre feed_targeting.geo_locations dans votre requête POST.

-d '{
      ...
      "targeting": {
        "geo_locations": {
          "countries": [
            "CA"
          ],
          "cities": [
            {
              "key": "296875",
              "name": "Toronto"
            }
          ]
        }
      },
      ...
    }'

Dépannage

Dans certains cas, l’utilisation d’un pays et d’une région dans ce pays entraîne une erreur : « Certains de vos lieux se chevauchent. Essayez d’en supprimer un. » Dans ces cas, ciblez la région ou le pays en fonction de la couverture souhaitée.

Ajout de publications sur des médias

Vous pouvez publier des photos et des vidéos sur une Page.

Publication d’une photo

Pour publier une photo sur une Page, envoyez une requête POST au point de terminaison /page_id/photospage_id correspond à l’ID de votre Page, avec le paramètre url défini sur la photo de votre publication.

Exemple de requête

Formaté pour plus de lisibilité. Remplacez les valeurs en gras et en italique, comme page_id, par vos propres valeurs.
curl -X POST "https://graph.facebook.com/v21.0/page_id/photos" \
     -H "Content-Type: application/json" \
     -d '{
           "url":"path_to_photo",

Si la requête aboutit, votre application reçoit la réponse JSON suivante avec l’ID de la photo et l’ID de la publication :

{
  "id":"photo_id",
  "post_id":"page_post_id" 
}

Publication d’une vidéo

Veuillez consulter la documentation de l’API Video pour ajouter une publication vidéo sur votre Page.

Obtention de publications

Pour obtenir une liste des publications de Page, envoyez une requête GET au point de terminaison /page_id/feed.

Exemple de requête

Formaté pour plus de lisibilité. Remplacez les valeurs en gras et en italique, comme page_id, par vos propres valeurs.
curl -i -X GET "https://graph.facebook.com/v21.0/page_id/feed"

Si la requête aboutit, votre application reçoit la réponse JSON suivante avec un ensemble d'objets comprenant l'ID de publication, l'heure de création de la publication et le contenu de la publication, pour chaque publication sur votre Page :

{
  "data": [
    {
      "created_time": "2019-01-02T18:31:28+0000",
      "message": "This is my test post on my Page.",
      "id": "page_post_id"
    }
  ],
...
}

Limites

  • Vidéos en direct : si une publication de Page contient une vidéo qui a expiré, comme une diffusion en direct, par exemple, vous pouvez récupérer certains champs de publication, mais pas les champs liés à la vidéo. La vidéo a ses propres règles de confidentialité. Si la vidéo a expiré, vous devez être admin de la page pour afficher les informations associées.
  • CTA de message : vous pouvez utiliser n’importe quel token d’accès pour demander des publications de Page partagées publiquement si votre application a été approuvée pour la fonctionnalité d’accès au contenu public de la Page. Toutefois, les publications contenant des CTA de message ne sont pas accessibles avec le token d’accès d’une autre Page, car les Pages ne peuvent pas envoyer de message à d’autres pages.

URL des publications de Page

L’URL, ou permalien, d’une publication de Page est https://www.facebook.com/page_post_id.

Modification d’une publication

Pour modifier une publication de Page, envoyez une requête POST au point de terminaison /page_post_id avec les paramètres à modifier définis sur le nouveau contenu.

Exemple de requête

Formaté pour plus de lisibilité. Remplacez les valeurs en gras et en italique, comme page_post_id, par vos propres valeurs.
curl -X POST "https://graph.facebook.com/v21.0/page_post_id" \
     -H "Content-Type: application/json" \
     -d '{
           "message":"I am updating my Page post",
         }'

Si la requête aboutit, votre application reçoit la réponse JSON suivante, avec success défini sur true :

{
  "success": true
}

Limites

Seules les publications de Page créées avec l’application peuvent être modifiées avec cette application.

Suppression d’une publication

Pour supprimer une publication de Page, envoyez une requête DELETE au point de terminaison /page_post_idpage_post_id correspond à l’ID de la publication à supprimer.

Exemple de requête

Formaté pour plus de lisibilité. Remplacez les valeurs en gras et en italique, comme page_post_id, par vos propres valeurs.
curl -i -X DELETE "https://graph.facebook.com/v21.0/page_post_id"

Si la requête aboutit, votre application reçoit la réponse JSON suivante, avec success défini sur true.

{
  "success": true
}

Étapes suivantes

Découvrez comment commenter des publications de Page et @mention une personne spécifique qui a publié sur votre page ou qui l’a commentée.