Webhooks Meta

Les Webhooks vous permettent de recevoir des notifications HTTP en temps réel relatives aux modifications apportées à des objets spécifiques du graphe social Meta. Par exemple, nous pouvons vous envoyer une notification quand un·e utilisateur·ice de votre application modifie son adresse e-mail ou ajoute un commentaire à votre Page Facebook. Ainsi, vous n’avez plus besoin d'interroger l'API Graph pour savoir si des modifications ont été apportées à des objets, et cela vous aider à éviter d’atteindre votre plafond.

Les étapes de configuration de Webhooks pour les paiements sont légèrement différentes de celles de Webhooks pour Messenger. Si vous configurez un Webhook pour l’un de ces produits, consultez leurs documents respectifs pour connaître la marche à suivre.

Objets, champs et valeurs

Il existe plusieurs types d’objets dans le graphe social Facebook, comme les objets Utilisateur et Page. Ainsi, chaque fois que vous configurez un Webhook, vous devez d’abord choisir un type d’objet. Puisque les objets comportent différents champs, vous devez vous abonner aux champs spécifiques du type d’objet concerné. Nous vous envoyons une notification pour chaque modification apportée à la valeur d’un champ d’objet auquel vous vous êtes abonné·e.

Les notifications vous sont envoyées sous forme de requêtes HTTP POST et contiennent une charge utile JSON décrivant la modification. Imaginons par exemple que vous avez configuré un Webhook User et que vous vous êtes abonné·e au champ Photos. Si l’un des personnes utilisant votre application importe une photo, nous vous envoyons une notification qui se présente comme suit :

Exemple de notification

{
  "entry": [
    {
      "time": 1520383571,
      "changes": [
        {
          "field": "photos",
          "value": {
            "verb": "update",
            "object_id": "10211885744794461"
          }
        }
      ],
      "id": "10210299214172187",
      "uid": "10210299214172187"
    }
  ],
  "object": "user"
}

Serveur HTTPS

Les Webhooks sont envoyés via HTTPS. Votre serveur doit donc être en mesure de recevoir et de traiter des requêtes HTTPS. Il doit également disposer d’un certificat TLS/SSL valide. Les certificats auto-signés ne sont pas pris en charge.

Contrôle app

Webhooks ne nécessite pas le processus de Contrôle app. Toutefois, pour que votre application puisse recevoir les notifications Webhooks de modification d’objets une fois qu’elle sera en mode en ligne, les autorisations nécessaires pour accéder à ces objets doivent lui être accordées au préalable. Consultez la section Autorisations ci-dessous.

Autorisations

Avant de pouvoir être mise à disposition du public, une application doit généralement passer par le processus de Contrôle app. Pendant ce processus, l’application peut demander l’approbation de certaines autorisations spécifiques, qui contrôlent les types de données auxquelles elle peut accéder via l’API Graph.

Le produit Webhooks ne nécessite pas de Contrôle app, mais il respecte les autorisations. Cela signifie que, même si vous configurez un Webhook et que vous vous abonnez aux champs spécifiques d’un type d’objet, vous ne recevrez pas les notifications des modifications apportées aux objets de ce type, sauf :

  • si votre application a reçu une approbation pour les autorisations qui correspondent à ce type de données, et ;
  • si l’objet qui détient les données a autorisé votre application à accéder à ces données (un objet Utilisateur autorisant votre application à accéder à son fil, par exemple).

Mode développement

Une application en mode développement peut uniquement recevoir les notifications de test émises via le tableau de bord de l’application ou les notifications envoyées par les personnes ayant un rôle dans l’application.

Notez que le comportement du mode développement est différent concernant les évènements Webhooks pour Messenger. Pour plus d’informations, consultez le document Webhooks pour Messenger.

Configuration

Pour utiliser Webhooks, vous devez configurer un point de terminaison sur un serveur (HTTPS) sécurisé, puis ajouter et configurer le produit Webhooks dans le tableau de bord de votre application. Le reste de ces documents détaille la procédure à suivre pour réaliser ces deux étapes.

Prêt·e ? Commençons !

En savoir plus

  • Découvrez comment recevoir des notifications lorsqu’une conversation est transmise d’une application à une autre grâce au protocole de transfert Messenger.