Version API du graphe

Fil de Page

Utilisez ce point de terminaison pour accéder à une Page et publier sur cette Page. Le Fil de Page regroupe toutes les interactions avec la Page Facebook : publications et liens publiés par cette Page, personnes ayant visité la Page et publications publiques dans lesquelles la Page a été identifiée.

Voir aussi

Lecture

Les publications d'une Page Facebook.

Nouvelle expérience de Page

Cette API est compatible avec la nouvelle version des Pages.

Conditions requises

La personne qui demande le token d’accès doit être en mesure d’effectuer l’une des tâches suivantes sur la Page :

  • CREATE_CONTENT : publier du contenu sur la Page au nom de la Page
  • MANAGE : affecter et gérer les tâches de la Page
  • MODERATE
    • Répondre à des commentaires sur les publications de Page au nom de la Page
    • Supprimer des commentaires sur les publications de Page
    • Lorsqu’un compte Instagram est connecté à la Page, publier du contenu sur Instagram depuis Facebook, répondre à des commentaires et en supprimer, envoyer des messages directs, synchroniser les coordonnées de l’entreprise et créer des publicités.

Cette personne doit également avoir accordé les autorisations suivantes à l’application :

Si vous n’êtes pas propriétaire de la Page ou ne la gérez pas, vous aurez besoin de ce qui suit :

Lorsque vous utilisez la fonctionnalité d’accès au contenu public de la Page, utilisez un token d’accès utilisateur système pour éviter les problèmes de plafond.

Exemple de requête

Explorateur de l’API Graph
GET /v21.0/{page-id}/feed HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get(
    '/{page-id}/feed',
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/{page-id}/feed",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{page-id}/feed",
    null,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{page-id}/feed"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

Exemple de réponse JSON

{
  "data": [
    {
      "created_time": "2019-05-17T16:24:04+0000",
      "message": "Become a Facebook developer!",
      "id": "{page-id}_2191966997525824"
    },
    {
      "created_time": "2019-02-26T21:35:42+0000",
      "message": "Hello world!",
      "id": "{page-id}_2072371269485398"
    },
...
    {
      "created_time": "2018-01-26T20:57:22+0000",
      "message": "Friday Funday!",
      "id": "{page-id}_1569752556413941"
    }
  ],
  "paging": {
    "cursors": {
      "before": "Q2c4U1pXNT...",
      "after": "Q2c4U1pXNT..."
    },
    "next": "https://graph.facebook.com/vX.X/{page-id}/feed?access_token={your-page-access-token}&pretty=0&limit=25&after=Q2c4U1pXNT..."
  }
}

Limites

  • Publications expirées : si une publication a expiré, vous ne pourrez plus en afficher le contenu à l'aide de l’API Graph.
  • Maximum de publications
    • L’API renverra environ 600 publications publiées et classées par an.
    • Vous pouvez uniquement lire un maximum de 100 publications de fil avec le champ limit. Si vous essayez de lire un nombre supérieur de publications, un message d’erreur vous informe que la limite est de 100.
  • CTA sous forme de message : il est impossible d’accéder aux publications comportant des call-to-action sous forme de message et utilisant le token d’accès d’une autre Page, car les Pages ne peuvent s’envoyer de messages entre elles.
  • Informations identifiables publiquement : les informations utilisateur ne figureront pas dans les réponses, sauf si la demande a été effectuée avec un token d’accès de Page.
  • Publications publiées : les publications publiées et non publiées seront retournées lors de la demande du point de terminaison « /{page-id}/feed ». Utilisez le champ « is_published » pour retourner uniquement les publications publiées.
  • Publications partagées : une publication de Page qui partage la publication d’une autre Page ou d’une autre personne peut ne pas être visible si la publication originale n’est pas visible avec le token d’accès utilisé.
  • Publications identifiées : lorsque vous utilisez /{page-id}/tagged pour afficher les publications qui identifient cette Page, les résultats n’incluent les publications d’autres Pages que si ces dernières sont authentiques.
  • Agents utilisateur : les agents utilisateur disponibles et autorisés pour ces appels d’API Graph sont soumis à des modifications sans préavis. Si vous rencontrez des difficultés, il vous faudra peut-être passer à une version plus récente de votre agent utilisateur.
  • Publications vidéo : pour obtenir une liste de publications vidéo, la personne qui fait la demande doit être l’admin de la Page.
  • Reels : pour obtenir une liste des reels publiés sur votre Page, utilisez l’arête Page VideoReels.

Limites : toutes les publications (publiées et non publiées) seront extraites vers le point de terminaison du fil. La seule différence concerne les publications non publiées qui ne seront pas listées dans le fil physique. Cependant, il existe un champ is_published qui peut être ajouté au point de terminaison /feed pour indiquer aux équipes chargées du développement si la publication listée dans ce point de terminaison est ou non publiée.

Champs

NomTypeDescription
idstring

ID de la publication.

actionsobject

Liens d’action sur la publication, Commentaire, la mention J’aime, Partager.

admin_creatorobject

Créateur admin d’une publication de Page. Si la Page n’a qu’un admin, elle ne renvoie aucune donnée. Un token d’accès de Page est requis, ainsi que l’autorisation business_management.

idint

ID de la personne, app ou entreprise.

namestring

Nom de la personne, app ou entreprise.

allowed_advertising_objectsstring

Seuls objectifs sous lesquels cette publication peut être promue.

applicationobject

Informations relatives à l’app qui a publié cette publication.

attachmentsobject

Toutes les pièces jointes associées à la story. Consultez la référence des nœuds de story jointe pour en savoir plus sur les champs attachments.

backdated_timefloat

Heure antidatée pour la publication à antidater. Pour une publication normale, ce champ est défini sur une valeur nulle.

call_to_actionobject

Type d’appel à l’action utilisé dans toutes publications de Page pour les publicités d’interactions avec une application mobile.

contextobject

Type de call-to-action utilisé dans toutes publications de Page pour les publicités d’interactions avec une application mobile.

can_reply_privatelyboolean

Si le spectateur de la Page peut envoyer une réponse privée à cette publication. L’autorisation read_page_mailboxes est requise.

caption

Obsolète pour les publications de Page en version 3.3 et supérieures.

string

Légende du lien qui apparaît sous name dans une publication. caption doit être une URL qui représente précisément l’URL et l’entreprise ou l’annonceur visité lorsqu’une personne clique dessus.

child_attachmentsobject

Sous-partages d’une publication de partage multilien.

created_timefloat

Heure de création initiale de la publication. Pour une publication à propos d’un évènement marquant, il s’agit de la date et de l’heure dudit évènement.

description

Obsolète pour les publications de Page en version 3.3 et supérieures. Utilisez attachments{description} à la place.

string

Description d’un lien dans la publication (apparaît en dessous de la caption).

feed_targetingobject

Objet qui contrôle le ciblage du Flux pour cette publication. Il est fort probable que les personnes appartenant à ces groupes voient cette publication, cela est moins vrai pour les autres mais elles sont néanmoins susceptibles de la voir. Tous les champs de ciblage affichés ici peuvent être utilisés, mais aucun n’est obligatoire (applicable aux Pages uniquement).

age_maxint

Âge maximum

age_minint

Doit avoir 13 ans ou plus. La valeur par défaut est 0

citiesint

Valeurs des villes du ciblage. Utilisez le type de adcity pour trouver des Options de ciblage et utiliser la key renvoyée à indiquer.

college_yearsint

Tableau de nombres entiers pour l’année de promotion à l’université.

countriesstring

Valeurs de pays du ciblage. Vous pouvez indiquer jusqu’à 25 pays. Utilisez les codes au format ISO 3166.

education_statusesint

Tableau de nombres entiers pour un ciblage sur la base du niveau d’éducation. Utilisez 1 pour le niveau lycée, 2 pour les études de premier cycle et 3 pour les études supérieures (ou leur équivalent local).

gendersint

Cibler des sexes spécifiques. 1 cible les spectateurs masculins et 2 les spectatrices. Par défaut, les utilisateurs des deux sexes sont ciblés.

interested_in

Abandonné.

intIndique le ciblage en fonction du champ Intéressé(e) par du profil d’utilisateur. Vous pouvez indiquer l’entier 1 pour indiquer un homme, 2 pour indiquer une femme. Par défaut, le paramètre est défini sur tous les types. Veuillez noter que le ciblage « Intéressé(e) par » n’est pas disponible dans la plupart des pays européens et au Canada en raison de la réglementation en vigueur dans ce pays.
interestsint

Un ou plusieurs ID de pages pour cibler des fans de pages. Utilisez le type de page pour obtenir les ID possibles tels que les Options de ciblage et utilisez l’ID en retour à indiquer.

localesint

Paramètres régionaux ciblés. Utilisez le type de adlocale pour trouver des Options de ciblage et utiliser la key renvoyée à indiquer.

regionsarray

Valeurs de ciblage de régions. Utilisez le type de adregion pour trouver des Options de ciblage et utiliser la key renvoyée à indiquer.

relationship_statusesint

Tableau de nombres entiers pour un ciblage sur la base d’une situation amoureuse. Utilisez 1 pour célibataire, 2 pour « en couple », 3 pour marié(e), et 4 pour fiancé(e). Par défaut, le paramètre est défini sur tous les types.

from

object

name et id de la Page, du groupe ou de l’événement qui a créé la publication. Si vous lisez ce champ avec un token d’accès utilisateur, il ne renvoie que l’utilisateur en cours.

full_picturestring

URL pour une version taille réelle de la Photo publiée dans la Publication ou extraite d’un lien dans celle-ci. Si la dimension la plus grande de la photo dépasse 720 pixels, elle est redimensionnée, à la dimension la plus grande configurée à 720.

iconstring

Lien vers une icône correspondant au type de cette publication.

instagram_eligibilityenum{}

Si la publication peut être promue sur Instagram. Elle renvoie l’énumération eligible si elle peut être promue. Sinon, elle renvoie une énumération de la raison pour laquelle elle ne peut pas être promue :

  • ineligible_caption_mentions_not_allowed
  • ineligible_caption_too_long
  • ineligible_media_aspect_ratio
  • ineligible_media_dimension
  • ineligible_media_square_aspect_ratio
  • ineligible_media_square_dimension
  • ineligible_post_type
  • ineligible_unknown_error
  • ineligible_video_length
is_eligible_for_promotionboolean

Indique si une publication peut être promue.

is_expiredboolean

Si la publication possède un délai d’expiration dépassé.

is_hiddenboolean

Si cette publication est marquée comme masquée (s’applique uniquement aux Pages). Masquer une publication a pour effet de masquer cette dernière dans le journal d’une Page, mais elle reste visible à d’autres endroits de Facebook, par exemple, un lien.

is_instagram_eligiblestring

Si cette publication peut être promue sur Instagram.

is_popularboolean

Si la publication est populaire. Basé sur le fait que le total des actions en pourcentage de la portée dépasse un certain seuil.

is_publishedboolean

Indique si une publication programmée a été publiée (s’applique à la Publication de Page programmée, pour les publications des utilisateurs et les publications publiées instantanément, cette valeur est toujours true). Notez que cette valeur est toujours false pour les publications de Page créées dans le cadre du processus de création de publicités.

is_sphericalboolean

Si la publication est une publication vidéo sphérique.

link

Obsolète pour les publications de Page en version 3.3 et supérieures.

Utilisez attachments{unshimmed_url} à la place.

string

Lien associé à cette publication.

messagestring

Message d’état dans la publication.

message_tagsarray

Tableau de profils identifiés dans le texte du message. Si vous lisez ce champ avec un token d’accès d’utilisateur, il renvoie uniquement l’utilisateur actuel.

lengthint

Longueur du texte du tag dans les points de code unicode.

idstring

ID du profil identifié.

namestring

Texte utilisé pour identifier le profil.

offsetint

Emplacement dans les points de code unicode du premier caractère du texte du tag dans le message.

typeenum{}

Type du profil identifié, user, page ou group.

name

Obsolète pour les publications de Page en version 3.3 et supérieures.

Utilisez attachments{title} à la place.

string

Nom du link.

object_id

Obsolète pour les publications de Page en version 3.3 et supérieures.

Utilisez attachments{target{id}} à la place.

string

ID d’une photo importée ou d’une vidéo jointe à la publication.

parent_idstring

ID d’une publication parente pour cette publication, le cas échéant. Par exemple, si cette story est du type « Votre page a été mentionnée dans une publication », parent_id correspond à la publication originale où la mention a été apportée.

permalink_urlstring

URL statique permanente de la publication sur www.facebook.com. Par exemple : https://www.facebook.com/FacebookForDevelopers/posts/10153449196353553.

placestring

ID du lieu associé à cette publication.

privacyobject

Paramètres de confidentialité de la publication.

allowstring

Si value correspond à CUSTOM, il s’agit d’une liste d’ID séparés par une virgule d’utilisateurs et de listes d’amis (le cas échéant) pouvant voir la publication.

denystring

Si value correspond à CUSTOM, il s’agit d’une liste d’ID séparés par une virgule, d’utilisateurs et de listes d’amis (le cas échéant) ne pouvant pas voir la publication.

descriptionstring

Texte décrivant les paramètres de confidentialité, tels qu’ils apparaîtraient sur Facebook.

friendsenum{}

Si value correspond à CUSTOM, cela indique quel groupe d’amis peut voir la publication. Les valeurs comprennent :

  • ALL_FRIENDS
  • FRIENDS_OF_FRIENDS
  • SOME_FRIENDS
valueenum{}

Paramètres de confidentialité actifs. Les valeurs comprennent :

  • ALL_FRIENDS
  • CUSTOM
  • EVERYONE
  • FRIENDS_OF_FRIENDS
  • SELF
promotable_idstring

ID de la publication à utiliser pour la promotion des stories ne pouvant pas être promues directement.

promotion_eligibility

Abandonné. Reportez-vous à is_eligible_for_promotion.

booleanIndique si une publication peut être promue.
promotion_status

Abandonné. Reportez-vous à is_eligible_for_promotion.

stringStatut de la promotion. Nécessite des privilèges d’admin de Page. Valeurs possibles :
activeLa promotion est en cours.
draftLa promotion est toujours en mode brouillon.
extendableLa campagne de promotion est terminée mais peut être relancée.
finishedLa promotion est terminée.
inactiveAucune promotion active.
ineligible

La publication ne peut pas être boostée. Découvrez pourquoi la publication peut être inéligible.

pausedLa promotion est actuellement en pause.
pendingLa promotion est toujours en cours de révision.
rejectedLa promotion a été rejetée par le processus de contrôle.
propertiesobject

Liste de propriétés pour une vidéo jointe, par exemple, la durée de la vidéo.

namestring

Nom de la propriété.

textstring

Valeur de la propriété.

hrefstring

Tout lien associé à la propriété.

sheduled_publish_timefloat

Horodatage UNIX de l’heure de parution planifiée pour la publication.

sharesobject

Nombre de partages de cette publication. Le nombre de partages peut inclure des publications supprimées et des publications que vous ne pouvez pas voir pour des raisons de confidentialité.

source

Obsolète pour les publications de Page en version 3.3 et supérieures.

Utilisez attachments{media{source}} à la place.

string

URL vers un film Flash ou fichier vidéo joint à la publication.

status_typeenum{}

Type d’une mise à jour de statut. Les valeurs comprennent :

  • added_photos
  • added_video
  • app_created_story
  • approved_friend
  • created_event
  • created_group
  • created_note
  • mobile_status_update
  • published_story
  • shared_story
  • tagged_in_photo
  • wall_post
storystring

Texte de stories qui n’a pas été généré intentionnellement par les utilisateurs, comme le texte des stories généré lorsqu’une photo a été ajoutée. Pour récupérer ce champ, il est nécessaire que la migration « Inclure les stories d’activité récentes » soit activée.

story_tagsarray

Liste de tags dans la description de la publication.

subscribedboolean

Si un Utilisateur est abonné à la publication.

targetingobject

Objet qui limite l’audience pour ce contenu. Seules les audiences de la tranche d’âge précisée peuvent voir ce contenu. Les données démographiques s’ajoutent les unes aux autres. Chaque valeur supplémentaire ajoute son audience à l’audience ciblée cumulée. Ces valeurs ne remplacent pas les restrictions démographiques au niveau de la Page éventuellement en place.

countriesstring

Valeurs des pays du ciblage comme codes au format ISO 3166.

localesint

Paramètres régionaux ciblés. Les options de ciblage de type adlocale peuvent être renvoyées.

regionslist<int>

Valeurs pour les régions ciblées. Les options de ciblage de type adregion peuvent être renvoyées.

citieslist<int>

Valeurs pour les villes exclues. Les options de ciblage de type adcity peuvent être renvoyées.

to

object

Profils mentionnés ou ciblés dans cette publication. Si vous lisez ce champ avec un token d’accès utilisateur, il ne renvoie que l’utilisateur en cours.

type

Obsolète pour les publications de Page en version 3.3 et supérieures.

Utilisez attachments{media_type} à la place. En l’absence de attachments ou de media_type=link, la valeur est la même que type=status.

enum{}

Une chaîne indiquant le type d’objet de cette publication. Les valeurs enum incluent :

  • link
  • offer
  • photo
  • status
  • video
updated_timefloat

Heure de la dernière mise à jour de la publication, qui se produit lorsque la publication a été créée ou modifiée, ou lorsqu’un utilisateur commente une publication, exprimée sous forme d’horodatage UNIX.

video_buying_eligibilityarray

Si la publication peut être promue avec des options d’achat vidéo différentes. Elle renvoie une liste vide lorsque la vidéo est éligible. Sinon, elle renvoie une liste de raisons pour lesquelles la publication ne peut être promue.

with_tags

object

Les profils identifiés avec l’éditeur de la publication. Si vous lisez ce champ avec un token d’accès utilisateur, il ne renvoie que l’utilisateur en cours.


Ce point de terminaison sera abandonné le 30 avril 2019, à partir de la versions 3.3 de l’API Graph et l’API Marketing. Les apps ayant utilisé ce point de terminaison dans les 90 derniers jours peuvent continuer à l’utiliser avec les versions 3.2 et antérieures de l’API jusqu’au 30 juillet 2019. Les apps n’ayant pas utilisé ce point de terminaison dans les 90 derniers jours ne seront plus en mesure de le faire à compter du 30 avril 2019.

ID à promouvoir

Lors de l’identification de publications qui peuvent être boostées, des promotable_id doivent être utilisés pour créer des publicités. Dans la plupart des cas, cet ID sera identique au post_id. Ce n’est cependant pas toujours le cas. Remarque : une fois qu’une publication est boostée, vous devez avoir accès au compte publicitaire connecté pour pouvoir modifier la publication.

Exemple de requête

curl -i -X GET \
 "https://graph.facebook.com/{your-page-id}/feed
    ?fields=is_eligible_for_promotion,promotable_id
        &access_token={your-page-access-token}"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/{your-page-id}/feed",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "is_eligible_for_promotion,promotable_id");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{your-page-id}/feed"
           parameters:@{ @"fields": @"is_eligible_for_promotion,promotable_id",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{your-page-id}/feed',
  'GET',
  {"fields":"is_eligible_for_promotion,promotable_id"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/{your-page-id}/feed?fields=is_eligible_for_promotion,promotable_id',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Exemple de réponse

{
  "data": [
    {
      "is_eligible_for_promotion": true,
      "promotable_id": "1353269864728879_1943344825721377",
      "id": "1353269864728879_1943344825721377"
    },
    {
      "is_eligible_for_promotion": true,
      "promotable_id": "1353269864728879_1943313139057879",
      "id": "1353269864728879_1943378089051384"
    },
    {
      "is_eligible_for_promotion": false,
      "promotable_id": "1353269864728879_1942095249179668",
      "id": "1353269864728879_1942095249179668"
    },
...

Rendez-vous dans notre centre d’aide afin de découvrir pour quelle raison une publication pourrait ne pas être boostée.

Consultez notre page Publications : documentation de référence pour connaître tous les champs de publication disponibles.

Publication

Vous pouvez publier sur des Pages à l’aide de cette arête. Les champs link ou message doivent être fournis.

Nouvelle expérience de Page

Cette API est compatible avec la nouvelle version des Pages.

Conditions requises

Si vous pouvez effectuer la tâche CREATE_CONTENT sur la Page, vous aurez besoin de ce qui suit :

Les publications se fondront parfaitement dans la Page.

Autorisations

Remarque : si l’utilisateur·ice ou l’application ne peut pas voir l’URL de link, la publication échouera.

POST /v21.0/{page-id}/feed HTTP/1.1
Host: graph.facebook.com

message=This+is+a+test+message
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/{page-id}/feed',
    array (
      'message' => 'This is a test message',
    ),
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/{page-id}/feed",
    "POST",
    {
        "message": "This is a test message"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("message", "This is a test message");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{page-id}/feed",
    params,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
NSDictionary *params = @{
  @"message": @"This is a test message",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{page-id}/feed"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

Réponse

{"id":"post-id"}

Ce point de terminaison prend en charge la lecture après écriture et peut immédiatement renvoyer tous les champs issus des opérations de lecture.

Exemple d’outil d’explorateur de graphique

Effectuez des tests dans l’outil d’explorateur de graphique en utilisant POST {page-id}/feed :

Champs

NomTypeDescription
actionsarray

Liens d’action joints à la publication.

linkstring

URL du lien d’action proprement dit.

namestring

Nom ou étiquette du lien d’action.

backdated_timefloat

Précise une heure antérieure afin d’antidater cette publication.

backdated_time_granularityenum{year, month, day, hour, minute}

Contrôle la manière dont une publication antidatée s’affiche. Par exemple, si vous sélectionnez month, les publications afficheront 2 months ago au lieu d’une date précise.

child_attachments

objet

Utilisé pour préciser plusieurs liens dans la publication. 2 objets au minimum et 5 objets au maximum. Si vous configurez

multi_share_optimized

sur true, vous pouvez importer un maximum de 10 objets, mais Facebook n’affichera que les 5 premiers.

descriptionstring

Utilisé pour afficher un prix, une remise ou un domaine de site Web. En cas d’absence de précision, le contenu de la page reliée sera extrait et utilisé. Ce champ sera généralement tronqué après 30 caractères.

image_hashstring

Hachage de l’image d’aperçu associée au lien de votre bibliothèque d’images publicitaires (format d’image 1:1 et un minimum de 458 × 458 pixels pour un affichage optimal). Le champ picture ou image_hash doit être spécifié.

linkstring

URL d’un lien à joindre à la publication. Ce champ est obligatoire.

namestring

Titre de l’aperçu du lien. Si ce champ n’est pas précisé, le titre de la page reliée sera utilisé. Ce champ sera généralement tronqué après 35 caractères. Il est recommandé de définir un name unique, car les interfaces Facebook affichent les actions rapportées sur le champ name.

picturestring

URL qui détermine l’image d’aperçu associée au lien (format d’image 1:1 et un minimum de 458 × 458 pixels pour un affichage optimal). Le champ picture ou image_hash doit être spécifié.

feed_targetingobject

Objet qui contrôle le ciblage du fil pour ce contenu. Il est fort probable que seules les personnes appartenant à ces groupes verront ce contenu. Tous les champs de ciblage affichés ici peuvent être utilisés, mais aucun n’est obligatoire.

age_maxint

Âge maximum. Doit être de 65 ans ou moins.

age_minint

Doit être de 13 ans ou plus. La valeur par défaut est 0.

college_yearsint[]

Tableau de nombres entiers pour l’année de promotion à l’université.

education_statusesint[]

Tableau de nombres entiers pour un ciblage sur la base du niveau d’éducation. Utilisez 1 pour le niveau lycée, 2 pour les études de premier cycle et 3 pour les études supérieures (ou leur équivalent local).

genderslist<unsigned int32>

Ciblez des genres spécifiques. 1 cible les spectateurs et 2 les spectatrices. Par défaut, les utilisateur·ices des deux genres sont ciblé·es.

geo_locationsobject

Cet objet vous permet d’indiquer un certain nombre d’emplacements géographiques différents. Veuillez consulter notre guide de ciblage pour en savoir plus sur cet objet.

interestsint[]

Un ou plusieurs ID pour cibler des fans. Utilisez type=audienceinterest pour obtenir les ID possibles comme options de ciblage et utilisez l’ID renvoyé pour les spécifier.

localesint

Paramètres régionaux ciblés. Utilisez le type d’adlocale pour trouver des Options de ciblage et utiliser la key renvoyée pour les spécifier.

relationship_statuseslist<unsigned int32>

Tableau de nombres entiers pour un ciblage sur la base d’une situation amoureuse. Utilisez 1 pour célibataire, 2 pour « en couple », 3 pour marié(e), et 4 pour fiancé(e). Par défaut, le paramètre est défini sur tous les types.

linkstring

URL d’un lien à joindre à la publication. Les champs link ou message doivent être fournis. Les champs supplémentaires associés à link sont indiqués ci-dessous. Consultez la section Liens personnalisés pour connaître les restrictions.

descriptionstring

Remplace la description dans l’aperçu du lien.

namestring

Remplace le titre de l’aperçu du lien.

picturestring

Détermine l’image d’aperçu associée au lien.

thumbnailfile

Image d’aperçu associée au lien que vous avez importé.

messagestring

Texte principal de la publication. Le message peut contenir des mentions de Pages Facebook, @[page-id].

multi_share_end_cardBoolean

Si défini sur false, n’affiche pas la carte finale d’une publication de lien carrousel lorsque child_attachments est utilisé. Valeur par défaut : true.

multi_share_optimizedBoolean

Si défini sur true et uniquement lorsque la publication est utilisée dans une publicité, Facebook sélectionnera automatiquement l’ordre des liens dans child_attachments. Sinon, la commande d’origine de child_attachments est conservée. La valeur par défaut est true.

object_attachmentstring

ID Facebook d’une image figurant dans les albums photo d’une personne et devant être utilisée comme image de miniature. Cette personne doit être propriétaire de la photo et celle-ci ne peut pas faire partie d’une pièce jointe à un message.

placestring

ID de la Page d’un emplacement associé à cette publication.

publishedBoolean

Indique si une story concernant ce nouvel objet publié est affichée. Le paramètre par défaut est true, ce qui signifie que la story est affichée dans le fil. Ce champ n’est pas pris en charge (code not) lorsque le paramètre actions est précisé. Les publications non publiées peuvent être utilisées dans des publicités.

scheduled_publish_timetimestamp

Horodatage UNIX indiquant quand la publication doit être diffusée. Il doit avoir pour valeur une date comprise entre 10 minutes et 75 jours après la date de la requête d’API.

tagscsv[string]

Liste d’ID d’utilisateur séparés par des virgules, répertoriant les utilisateur·ices identifié·es dans cette publication. Vous ne pouvez pas préciser ce champ sans définir place.

targetingobject

Objet qui limite l’audience pour ce contenu. Toutes les personnes appartenant à ces tranches d’âge ne pourront voir ce contenu. Cet objet ne supplante pas les restrictions démographiques au niveau de la Page susceptibles d’être en place.

age_minint

La valeur peut être 13, 15, 18, 21 ou 25.

geo_locationsobject

Cet objet vous permet d’indiquer un certain nombre d’emplacements géographiques différents. Veuillez consulter notre guide de ciblage pour en savoir plus sur cet objet.

Ajouter un sentiment ou une activité à une publication de Page

Ajouter un sentiment ou une activité et une icône à une publication de Page. og_action_type_id et og_object_id sont nécessaires lors de la publication d’un sentiment ou d’une activité. og_icon_id est facultatif, mais s’il n’est pas utilisé, une icône sera automatiquement fournie selon l’og_object_id.

Champs

Nom Description

og_action_type_id

Action (ex. : sentiment, regarder, etc.).

og_icon_id

Icône pouvant représenter le type d’action (ex. : un visage souriant, une icône représentant le cinéma, etc.)

og_object_id

Résultat escompté de l’action (ex. : heureux, film, etc.). Il peut s’agir d’un objet prédéfini ou d’un page_id.

Exemple de publication

POST /v21.0/page-id/feed HTTP/1.1
Host: graph.facebook.com

message=This+is+a+test+activity&og_action_type_id=383634835006146&og_object_id=136050896551329&og_icon_id=609297155780549
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/page-id/feed',
    array (
      'message' => 'This is a test activity',
      'og_action_type_id' => '383634835006146',
      'og_object_id' => '136050896551329',
      'og_icon_id' => '609297155780549',
    ),
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/page-id/feed",
    "POST",
    {
        "message": "This is a test activity",
        "og_action_type_id": "383634835006146",
        "og_object_id": "136050896551329",
        "og_icon_id": "609297155780549"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("message", "This is a test activity");
params.putString("og_action_type_id", "383634835006146");
params.putString("og_object_id", "136050896551329");
params.putString("og_icon_id", "609297155780549");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/page-id/feed",
    params,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
NSDictionary *params = @{
  @"message": @"This is a test activity",
  @"og_action_type_id": @"383634835006146",
  @"og_object_id": @"136050896551329",
  @"og_icon_id": @"609297155780549",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/page-id/feed"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

La réponse sera le post_id.

Publications de Page non publiées

Nous prenons en charge les types de publications de page non publiées suivantes :

Type de publicationDescription

Lien

Une publication de Page de lien est plus efficace pour partager des liens vers votre site Web. Permet le remplacement facultatif d’une image et d’un texte supplémentaire.
Remarque : un lien vidéo YouTube constitue une publication de Page de lien.

Photo

Publication de Page de photo comportant un texte de description et un lien facultatif faisant partie de la description.

Publication

Publication de Page comportant un texte descriptif.

Vidéo

Publication de Page de vidéo comportant un texte descriptif facultatif.

Les publications de Page non publiées sont traitées comme les publications de Page publiées, sauf qu’elles ne s’affichent pas dans /feed.

Pour afficher la liste des publications de Page non publiées, interrogez le champ is_published.

curl -i -X GET \
 "https://graph.facebook.com/{page-id}/feed
 ?fields=is_published
 &access_token={your-page-access-token}"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/{page-id}/feed",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "is_published");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{page-id}/feed"
           parameters:@{ @"fields": @"is_published",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{page-id}/feed',
  'GET',
  {"fields":"is_published"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/{page-id}/feed?fields=is_published',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Pour consulter une publication sur Facebook.com, vous pouvez vous rendre sur https://www.facebook.com/{post-id} afin de voir la plupart des types de publication ou récupérer le champ actions de la publication, contenant l’URL à laquelle un utilisateur ou une utilisatrice peut aimer ou commenter la publication.

Publication de Page call-to-action

Vous pouvez améliorer vos publications de Page de lien grâce aux boutons de call-to-action. Le champ call_to_action suivant peut être ajouté aux nouvelles publications de Page de lien.

NomTypeDescription

call_to_action

object

Objet précisant un bouton d’appel à l’action. Il doit s’agir de l’action que vous voulez que les personnes fassent lorsqu’elles voient votre publication. Un clic sur ce bouton redirigera les utilisateur·ices vers le lien que vous indiquez.

type

string

Détermine le texte du bouton d’appel à l’action L’une des valeurs autorisées :

BOOK_TRAVEL. Le call-to-action s’affiche en tant que Réserver maintenant.

BUY_NOW. Le call-to-action s’affiche en tant qu’Acheter maintenant. Uniquement utilisé pour les publicités d’application de bureau pour les biens virtuels.

CALL_NOW. Le call-to-action s’affiche en tant qu’Appeler maintenant. Uniquement utilisé pour des publicités de découverte au niveau local.

DOWNLOAD. Le call-to-action s’affiche en tant que Télécharger.

GET_DIRECTIONS. Le call-to-action s’affiche en tant qu’Obtenir des instructions. Les coordonnées doivent être précisées dans le champ link. Uniquement utilisé pour des publicités de découverte au niveau local.

GET_QUOTE. Le call-to-action s’affiche en tant qu’Obtenir un devis pour la génération de prospects.

INSTALL_APP. Le call-to-action s’affiche en tant qu’Installer maintenant.

INSTALL_MOBILE_APP. Le call-to-action s’affiche en tant qu’Installer maintenant. Uniquement utilisé pour des publicités pour une application mobile.

LEARN_MORE. Le call-to-action s’affiche en tant qu’En savoir plus.

LIKE_PAGE. Le call-to-action s’affiche en tant qu’Aimer la page. Uniquement utilisé pour les publicités dont l’objectif est d’obtenir des mentions J’aime sur une Page.

LISTEN_MUSIC. Le call-to-action s’affiche en tant qu’Écouter de la musique.

MESSAGE_PAGE. Le call-to-action s’affiche en tant qu’Envoyer un message. Uniquement utilisé pour des publicités de découverte au niveau local.

NO_BUTTON. Aucun appel à l’action ne s’affiche.

OPEN_LINK. Le call-to-action s’affiche en tant qu’Ouvrir le lien. Uniquement utilisé pour les publicités dont l’objectif est d’obtenir des Clics vers le site Web.

PLAY_GAME. Le call-to-action s’affiche en tant que Jouer à un jeu. Uniquement utilisé pour des publicités pour une application mobile.

SHOP_NOW. Le call-to-action s’affiche en tant qu’Acheter maintenant. Uniquement utilisé pour les publicités dont l’objectif est d’obtenir des conversions sur un site Web.

SIGN_UP. Le call-to-action s’affiche en tant que S’inscrire.

SUBSCRIBE. Le call-to-action s’affiche en tant que S’abonner pour la génération de prospects.

USE_APP. Le call-to-action s’affiche en tant que Utiliser l’app.

USE_MOBILE_APP. Uniquement utilisé pour des publicités pour une application mobile.

WATCH_MORE. Le call-to-action s’affiche en tant que Regarder plus.

WATCH_VIDEO. Le call-to-action s’affiche en tant que Regarder la vidéo.

Image de publication de Page de lien personnalisée

Publiez un lien vers une Page comportant une image de lien personnalisé. La pièce jointe de la story rend une image récupérée à partir du lien. Il est actuellement possible d’écraser cette image en renseignant un paramètre picture facultatif avec une URL dirigeant vers une nouvelle image. Le paramètre thumbnail offre une fonctionnalité similaire, à la différence que ce paramètre accepte un fichier image local importé sur Facebook dans l’appel de l’API.

Autorisations

  • Un token d’accès de Page est requis.
  • Le lien doit appartenir à la Page qui publie.

Pour contrôler la propriété du lien, vérifiez le champ ownership_permissions{can_customize_link_posts} sur le nœud URL. Vous devez appeler ce point de terminaison avant de publier de nouveaux liens. Sans cette étape, les publications de la Page de lien personnalisées ne fonctionneront pas pour les liens non extraits. Pour en savoir plus, consultez notre Guide sur la propriété des liens. Pour les versions 2.10 et antérieures, picture, name, thumbnail et description sont obsolètes. caption est obsolète pour toutes les versions.

ParamètresTypeDescription

description

chaîne

Description du lien (apparaît sous la légende du lien). Si elle n’est pas indiquée, ce champ est automatiquement rempli avec les informations récupérées dans le lien, en général le titre de la Page.

name

chaîne

Nom de la pièce jointe du lien. Ce champ est automatiquement renseigné avec les informations récupérées dans le lien.

picture

chaîne

URL de l’image. L’image provient de l’URL fournie dans picture

thumbnail

fichier

Fichier image à importer. Formats acceptés : .jpg.jpeg.gif ou .png. L’image provient du fichier importé dans thumbnail.

Limites

  • Le paramètre thumbnail n’est disponible que pour les publications de lien sur les Pages Facebook.
  • Le paramètre thumbnail prévaut sur le paramètre picture. Si les deux sont fournis, le paramètre picture n’est pas utilisé.
  • Le paramètre thumbnail accepte des images avec l’extension .jpg, .jpeg, .gif ou .png.
  • Le paramètre thumbnail n’est pas pris en charge dans les demandes par lots.

Publication d’un lien vers une Page

Publiez un lien vers une Page en envoyant une demande POST à l’arête /page/feed. Définissez le paramètre publish sur 1 pour publier la publication immédiatement ou sur 0 pour créer une publication à publier ultérieurement.

Exemple de requête

curl -i -X POST "https://graph.facebook.com/{your-page-id}/feed
  ?message=Become%20a%20Facebook%20developer!
  &link=https%3A%2F%2Fdevelopers.facebook.com
  &published=1
  &access_token={your-page-access-token}"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/{your-page-id}/feed",
  new JSONObject("{\"message\":\"Become a Facebook developer!\",\"link\":\"https://developers.facebook.com\",\"published\":\"1\"}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{your-page-id}/feed"
           parameters:@{ @"message": @"Become a Facebook developer!",@"link": @"https://developers.facebook.com",@"published": @"1",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{your-page-id}/feed',
  'POST',
  {"message":"Become a Facebook developer!","link":"https://developers.facebook.com","published":"1"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->post(
    '/{your-page-id}/feed',
    array (
      'message' => 'Become a Facebook developer!',
      'link' => 'https://developers.facebook.com',
      'published' => '1'
    ),
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Exemple de réponse

{"id":"{post-id}"}

Association d’une publication de Page à un call-to-action

Le champ call_to_action indique l’action appropriée et le lien pertinent. Ce lien doit être le même que le paramètre link de la publication de Page. Dans cet appel, title, description, caption et picture sont facultatifs, et, s’ils ne sont pas fournis, Facebook lit les propriétés équivalentes à partir des métadonnées Open Graph du lien. Si la page web associée n’a pas de métadonnées Open Graph, Facebook essaie de deviner ces propriétés en extrayant le contenu de la page web.

Exemple de requête

curl -i -X POST "https://graph.facebook.com/{your-page-id}/feed
  ?message=Become a Facebook developer!
  &link=https://developers.facebook.com
  &call_to_action={"type":"SIGN_UP","value":{"link":"https://developers.facebook.com"}}
  &published=1
  &access_token={your-page-access-token}"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/{your-page-id}/feed",
  new JSONObject("{\"message\":\"Become a Facebook developer!\",\"link\":\"https://developers.facebook.com\",\"published\":\"1\",\"call_to_action\":\"{\\\"type\\\":\\\"SIGN_UP\\\",\\\"value\\\":{\\\"link\\\":\\\"https://developers.facebook.com\\\"}}\"}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{your-page-id}/feed"
           parameters:@{ @"message": @"Become a Facebook developer!",@"link": @"https://developers.facebook.com",@"published": @"1",@"call_to_action": @"{"type":"SIGN_UP","value":{"link":"https://developers.facebook.com"}}",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{your-page-id}/feed',
  'POST',
  {"message":"Become a Facebook developer!","link":"https://developers.facebook.com","published":"1","call_to_action":"{\"type\":\"SIGN_UP\",\"value\":{\"link\":\"https://developers.facebook.com\"}}"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->post(
    '/{your-page-id}/feed',
    array (
      'message' => 'Become a Facebook developer!',
      'link' => 'https://developers.facebook.com',
      'published' => '1',
      'call_to_action' => '{"type":"SIGN_UP","value":{"link":"https://developers.facebook.com"}}'
    ),
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Exemple de réponse

{"id":"{post-id}"}

Association d’une publication à une image importée personnalisée

Utilisation d’un fichier local :

curl -F 'link=http://www.example.com' \
     -F 'thumbnail=@/local/path/to/file/on/hard/drive/image.jpg' \
     -F 'access_token=page-access-token'\
  https://graph.facebook.com/v2.11/page-id/feed

Valeur renvoyée

{"id":"post-id"}

Utilisation d’une image via une URL :

curl -F 'link=http://www.example.com' \
     -F 'picture=https://www.example.com/path/to/image.jpg' \
     -F 'access_token=page-access-token'\
  https://graph.facebook.com/v2.11/page-id/feed

Valeur renvoyée

{"id":"post-id>"}

Publication de Page de photo

Consultez notre documentation de référence : Nœuds photo pour en savoir plus.

Publication de Page de vidéo

Consultez notre documentation de référence : Vidéos de Page pour en savoir plus.

Statistiques de publication de Page

Consultez notre documentation de référence : Statistiques de publication de Page pour en savoir plus.

Mise à jour

Vous ne pouvez pas effectuer de mise à jour à l’aide de cette arête, mais vous pouvez mettre à jour les publications via le nœud /{post-id}.

Suppression

Vous ne pouvez pas effectuer de suppression à l’aide de cette arête, mais vous pouvez supprimer des publications via le nœud /{post-id}.