Qualité du catalogue et des signaux

Nous offrons deux options pour obtenir des avis sur la qualité et les performances de vos divers éléments publicitaires de catalogue Advantage+ :

Informations sur les évènements de pixel et les app events associés au catalogue

Pour identifier les problèmes relatifs à l’installation du pixel ou de l’application, vous pouvez obtenir des statistiques agrégées sur les évènements mis en correspondance ou non reçus de la part des différents pixels, applications et appareils.

Envoyez une requête à l’API Events pour obtenir des statistiques sur les évènements issus des sources associées à votre catalogue. Consultez la section API Events, Référence pour de plus amples détails.

Statistiques d’évènement

Vous pouvez obtenir ces informations au niveau du catalogue :

curl -X GET \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v19.0/<PRODUCT_CATALOG_ID>/event_stats
'use strict'; const bizSdk = require('facebook-nodejs-business-sdk'); const ProductCatalog = bizSdk.ProductCatalog; const ProductEventStat = bizSdk.ProductEventStat; const access_token = '<ACCESS_TOKEN>'; const app_secret = '<APP_SECRET>'; const app_id = '<APP_ID>'; const id = '<PRODUCT_CATALOG_ID>'; const api = bizSdk.FacebookAdsApi.init(access_token); const showDebugingInfo = true; // Setting this to true shows more debugging info. if (showDebugingInfo) { api.setDebug(true); } const logApiCallResult = (apiCallName, data) => { console.log(apiCallName); if (showDebugingInfo) { console.log('Data:' + JSON.stringify(data)); } }; let fields, params; fields = [ ]; params = { }; const event_statss = (new ProductCatalog(id)).getEventStats( fields, params ); logApiCallResult('event_statss api call complete.', event_statss);
require __DIR__ . '/vendor/autoload.php'; use FacebookAds\Object\ProductCatalog; use FacebookAds\Object\ProductEventStat; use FacebookAds\Api; use FacebookAds\Logger\CurlLogger; $access_token = '<ACCESS_TOKEN>'; $app_secret = '<APP_SECRET>'; $app_id = '<APP_ID>'; $id = '<PRODUCT_CATALOG_ID>'; $api = Api::init($app_id, $app_secret, $access_token); $api->setLogger(new CurlLogger()); $fields = array( ); $params = array( ); echo json_encode((new ProductCatalog($id))->getEventStats( $fields, $params )->getResponse()->getContent(), JSON_PRETTY_PRINT);
from facebook_business.adobjects.productcatalog import ProductCatalog from facebook_business.adobjects.producteventstat import ProductEventStat from facebook_business.api import FacebookAdsApi access_token = '<ACCESS_TOKEN>' app_secret = '<APP_SECRET>' app_id = '<APP_ID>' id = '<PRODUCT_CATALOG_ID>' FacebookAdsApi.init(access_token=access_token) fields = [ ] params = { } print ProductCatalog(id).get_event_stats( fields=fields, params=params, )
import com.facebook.ads.sdk.*; import java.io.File; import java.util.Arrays; public class SAMPLE_CODE_EXAMPLE { public static void main (String args[]) throws APIException { String access_token = \"<ACCESS_TOKEN>\"; String app_secret = \"<APP_SECRET>\"; String app_id = \"<APP_ID>\"; String id = \"<PRODUCT_CATALOG_ID>\"; APIContext context = new APIContext(access_token).enableDebug(true); new ProductCatalog(id, context).getEventStats() .execute(); } }
require 'facebook_ads' access_token = '<ACCESS_TOKEN>' app_secret = '<APP_SECRET>' app_id = '<APP_ID>' id = '<PRODUCT_CATALOG_ID>' FacebookAds.configure do |config| config.access_token = access_token config.app_secret = app_secret end product_catalog = FacebookAds::ProductCatalog.get(id) event_statss = product_catalog.event_stats({ fields: { }, })

Cette requête renvoie une matrice d’éléments, à savoir une par type d’évènement, source et date au cours du dernier mois :

{
  "data": [
    {
      "date_start": "2017-03-16",
      "date_stop": "2017-03-16",
      "event": "AddToCart",
      "event_source": {
        "id": "<PIXEL_ID>",
        "source_type": "PIXEL"
      },
      "total_matched_content_ids": 1086,
      "total_content_ids_matched_other_catalogs": 10024,
      "total_unmatched_content_ids": 13024,
      "unique_matched_content_ids": 285,
      "unique_content_ids_matched_other_catalogs": 102,
      "unique_unmatched_content_ids": 2132
    },
    {
      "date_start": "2017-03-16",
      "date_stop": "2017-03-16",
      "event": "ViewContent",
      "event_source": {
        "id": "<APP_ID>",
        "source_type": "APP"
      },
      "total_matched_content_ids": 1007,
      "total_content_ids_matched_other_catalogs": 504,
      "total_unmatched_content_ids": 20206,
      "unique_matched_content_ids": 507,
      "unique_content_ids_matched_other_catalogs": 402,
      "unique_unmatched_content_ids": 8037
    },
    ...
  ]
}

Les champs renvoyés pour chaque type d’évènement, source et date sont les suivants :

Nombre Description

total_matched_content_ids

Nombre total d’ID de contenu pour les évènements reçus qui ont été mis en correspondance avec des articles du catalogue. Ce nombre n’est pas dédupliqué sur l’ensemble des ID de contenu.

total_content_ids_matched_other_catalogs

Nombre total d’ID de contenu pour les évènements reçus qui ont été mis en correspondance avec des articles d’un autre catalogue associé au pixel ou à l’application. Ce nombre n’est pas dédupliqué sur l’ensemble des ID de contenu.

total_unmatched_content_ids

Nombre total d’ID de contenu pour les évènements reçus qui n’ont pas été mis en correspondance avec des articles du catalogue. Ce nombre n’est pas dédupliqué sur l’ensemble des ID de contenu.

unique_matched_content_ids

Nombre d’ID de contenu uniques pour les évènements reçus qui ont été mis en correspondance avec des articles du catalogue.

unique_content_ids_matched_other_catalogs

Nombre d’ID de contenu uniques pour les évènements reçus qui ont été mis en correspondance avec des articles d’un autre catalogue associé au pixel ou à l’application qui a déclenché l’évènement.

unique_unmatched_content_ids

Nombre d’ID de contenu uniques pour les évènements reçus qui n’ont pas été mis en correspondance avec des articles du catalogue.

Répartition par type d’appareil :

Décomposez les résultats en transmettant device_type :

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$data = Api::instance()->call(
  '/' . <CATALOG_ID> . '/event_stats',
  RequestInterface::METHOD_GET,
  array(
    'breakdowns' => array('device_type'),
  ))->getContent();
curl -G \
  -d 'breakdowns=["device_type"]' \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<CATALOG_ID>/event_stats

Cela renvoie des résultats regroupés par types d’appareil sur lesquels les évènements ont été déclenchés. Par exemple, desktop, mobile_iphone, mobile_android_phone etc. :

{
  "data": [
    {
      "date_start": "2017-03-10",
      "date_stop": "2017-03-10",
      "event": "AddToCart",
      "event_source": {
        "id": "<PIXEL_ID>",
        "source_type": "PIXEL"
      },
      "device_type": "desktop",
      "total_matched_content_ids": 282,
      "total_content_ids_matched_other_catalogs": 524,
      "total_unmatched_content_ids": 4965,
      "unique_matched_content_ids": 102,
      "unique_content_ids_matched_other_catalogs": 402,
      "unique_unmatched_content_ids": 1427
    },
    ...
  ]
}

Informations sur les évènements de pixel et les app events

Exemple : vous pouvez vérifier si les évènements envoyés par votre pixel présentent ou non des problèmes.

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$data = Api::instance()->call(
  '/' . <PIXEL_ID> . '/da_checks',
  RequestInterface::METHOD_GET)->getContent();
curl -G \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<PIXEL_ID>/da_checks

Exemple : réponse

{
  "data": [
    {
      "description": "Pixel hasn't sent some or any events for Advantage+ catalog ads (ex: ViewContent, AddToCart, Purchase) at least once in the last 24 hours.",
      "key": "pixel_missing_dpa_event",
      "result": "failed",
      "title": "Pixel is not sending DPA events"
    },
    {
      "description": "Pixel events might be missing parameters some or all of the time.",
      "key": "pixel_missing_param_in_events",
      "result": "passed",
      "title": "Pixel missing parameter in DPA events"
    },
    {
      "action_uri": "https://www.facebook.com/ads/manage/pixels/?pixel_id=<PIXEL_ID>&amp;m2w=1",
      "description": "The number of pixel events has dropped to less than half of the weekly average.",
      "key": "pixel_decline",
      "result": "passed",
      "title": "Decline in number of pixel events"
    }
  ]
}

Les vérifications suivantes sont disponibles :

Vérification Description

pixel_missing_dpa_event

Vérifie s’il manque des évènements pour ce pixel par rapport à la configuration des publicités de catalogue Advantage+.

pixel_missing_param_in_events

Vérifie s’il manque des paramètres obligatoires par rapport à la configuration des publicités dynamiques.

pixel_decline

Vérifie si le nombre d’évènements reçus pour ce pixel a diminué au cours des dernières 24 heures.

Pour plus de détails, consultez la section Vérification du pixel pour les publicités dynamiques, Référence.

Valeurs possibles pour le champ result :

Statut Description

passed

Votre pixel a passé cette vérification avec succès

failed

Votre pixel n’a pas passé cette vérification avec succès

unavailable

Cette vérification n’est pas disponible pour ce pixel actuellement, veuillez réessayer ultérieurement

Par défaut, nous renvoyons toutes les valeurs, mais vous pouvez spécifier les vérifications que vous souhaitez exécuter, comme suit :

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$data = Api::instance()->call(
  '/' . <PIXEL_ID> . '/da_checks',
  RequestInterface::METHOD_GET,
  array(
    'checks' => array(
      'pixel_decline',
      'pixel_missing_dpa_event',
      'pixel_missing_param_in_events',
      ),
  ))->getContent();
curl -G \
  --data-urlencode 'checks=[ 
    "pixel_decline", 
    "pixel_missing_dpa_event", 
    "pixel_missing_param_in_events" 
  ]' \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<PIXEL_ID>/da_checks

Pour les app events

Vous pouvez vérifier si les évènements envoyés par votre app présentent ou non des problèmes.

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$data = Api::instance()->call(
  '/' . <APP_ID> . '/da_checks',
  RequestInterface::METHOD_GET)->getContent();
curl -G \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<APP_ID>/da_checks

Exemple de réponse :

{
  "data": [
    {
      "description": "App hasn't sent some or any events for dynamic ads (ex: ViewContent, AddToCart, Purchase)...",
      "key": "app_missing_dpa_event",
      "result": "failed",
      "title": "App is not sending DPA events"
    },
    {
      "description": "App events might be missing parameters some or all of the time.",
      "key": "app_missing_param_in_events",
      "result": "passed",
      "title": "App missing parameter in DPA events"
    }
  ]
}
Vérification Description

app_missing_dpa_event

Vérifie s’il manque des évènements pour cette application par rapport à la configuration des publicités dynamiques.

app_missing_param_in_events

Vérifie s’il manque des paramètres obligatoires par rapport à la configuration des publicités dynamiques.

Pour plus de détails, consultez la section Vérification du pixel pour les publicités dynamiques, Référence.

Valeurs possibles renvoyées pour le champ result :

Statut Description

passed

Votre application a passé cette vérification avec succès.

failed

Votre application n’a pas passé cette vérification avec succès.

unavailable

Cette vérification n’est pas disponible pour cette application actuellement, Veuillez réessayer ultérieurement.

Vous pouvez définir des valeurs pour des vérifications spécifiques. Par défaut, nous les renvoyons toutes, mais vous pouvez spécifier les vérifications que vous souhaitez exécuter, comme suit :

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$data = Api::instance()->call(
  '/' . <APP_ID> . '/da_checks',
  RequestInterface::METHOD_GET,
  array(
    'checks' => array('app_missing_dpa_event', 'app_missing_param_in_events'),
  ))->getContent();
curl -G \
  -d 'checks=["app_missing_dpa_event","app_missing_param_in_events"]' \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<APP_ID>/da_checks