Planifier un transfert Facebook Ads

Le service de transfert de données BigQuery pour les annonces Facebook vous permet de planifier et de gérer automatiquement les tâches de chargement récurrentes des annonces Facebook dans BigQuery.

Limites

Les transferts d'annonces Facebook sont soumis aux limitations suivantes :

  • L'intervalle minimum entre deux transferts récurrents de Facebook Ads est de 15 minutes. L'intervalle par défaut entre transferts récurrents est de 24 heures.
  • Le service de transfert de données BigQuery pour Facebook Ads n'accepte qu'un ensemble fixe de tables. Les rapports personnalisés ne sont pas acceptés.
  • La durée maximale des transferts d'annonces Facebook est de six heures. Un transfert échoue si sa durée dépasse cette durée maximale.
  • Les transferts incrémentiels ne sont pas acceptés.
  • Le service de transfert de données BigQuery permet le transfert de données datant au maximum d'un jour (hier) vers les tables AdInsights et AdInsightsActions.

Avant de commencer

Les sections suivantes décrivent la procédure à suivre avant de créer un transfert Facebook Ads.

Conditions préalables à l'utilisation des annonces Facebook

Vérifiez que vous disposez des informations Facebook Ads suivantes lorsque vous créez un transfert d'annonces Facebook.

Paramètres de Facebook Ads Description
clientID Nom d'ID d'application pour le client OAuth 2.0.
clientSecret Code secret de l'application pour le client OAuth 2.0.
refreshToken Jeton d'accès utilisateur de longue durée, également appelé jeton d'actualisation.

Pour obtenir un clientID et un clientSecret, procédez comme suit :

  1. Créez une application de développeur Facebook avec le type d'application Business.
  2. Dans le tableau de bord des applications Facebook, cliquez sur Paramètres de l'application > Basic, puis recherchez l'ID de l'application. et le code secret de l'application correspondant à l'application.

Pour obtenir un jeton d'accès utilisateur de longue durée, également appelé jeton d'actualisation, procédez comme suit :

  1. Dans la console Google Cloud, suivez les étapes permettant de créer un transfert Facebook Ads.

  2. Dans la section Détails de la source de données, copiez l'URI de redirection répertorié après le champ Jeton d'actualisation.

    Copier l'URI de redirection

  3. Cliquez sur le tableau de bord des applications Facebook, puis sur Configurer dans la section Facebook Login for Business.

    Configurer les paramètres de Facebook Login for Business

  4. Sur la page Paramètres, saisissez l'URL de redirection dans le champ URI de redirection OAuth valides, puis cliquez sur Enregistrer.

  5. Revenez à la console Google Cloud. Dans la section Détails de la source de données, cliquez sur Autoriser. Vous allez être redirigé vers une page d'authentification Facebook.

    Générer un jeton d'accès utilisateur de longue durée

  6. Sélectionnez l'application de développeur Facebook pour autoriser le compte qui se connecte au service de transfert de données BigQuery.

  7. Une fois l'opération terminée, cliquez sur OK pour revenir à la console Google Cloud. Le jeton d'accès de longue durée est désormais renseigné dans la configuration de transfert.

Vous pouvez également générer un jeton d'accès utilisateur de longue durée à l'aide de l'API Graph. Les autorisations ads_management, ads_read et business_management sont requises pour un jeton valide pour le transfert.

Les jetons d'accès utilisateur de longue durée expirent au bout de 60 jours.

Prérequis pour BigQuery

Rôles BigQuery requis

Pour obtenir les autorisations nécessaires pour créer un transfert, demandez à votre administrateur de vous accorder le rôle IAM Administrateur BigQuery (roles/bigquery.admin). Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Ce rôle prédéfini contient les autorisations requises pour créer un transfert. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour créer un transfert :

  • bigquery.transfers.update sur l'utilisateur
  • bigquery.datasets.get sur l'ensemble de données cible
  • bigquery.datasets.update sur l'ensemble de données cible

Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.

Créer un transfert de données Facebook Ads

Sélectionnez l'une des options suivantes :

Console

  1. Dans la console Google Cloud, accédez à la page BigQuery Studio.

    Accéder à BigQuery Studio

  2. Cliquez sur Transferts de données > Créer un transfert.

  3. Dans le champ Source de la section Type de source, sélectionnez Facebook Ads.

  4. Dans la section Nom de la configuration de transfert, sous Nom à afficher, saisissez le nom du transfert.

  5. Dans la section Options de programmation, procédez comme suit :

    • Dans la liste Fréquence de répétition, sélectionnez une option pour spécifier la fréquence d'exécution de ce transfert. Pour spécifier une fréquence de répétition personnalisée, sélectionnez Personnalisée. Si vous sélectionnez À la demande, ce transfert s'exécute lorsque vous déclenchez manuellement le transfert.

    • Le cas échéant, sélectionnez Commencer ou Commencer à l'heure définie, puis indiquez une date de début et une heure d'exécution.

  6. Dans la section Paramètres de destination, pour le champ Ensemble de données de destination, choisissez l'ensemble de données que vous avez créé pour stocker vos données.

  7. Dans la section Data source details (Détails de la source de données), procédez comme suit :

    • Dans le champ ID client, saisissez l'ID d'application.
    • Sous Code secret du client, saisissez le code secret de l'application.
    • Pour Jeton d'actualisation, saisissez l'ID du jeton d'accès utilisateur de longue durée en cliquant sur Autoriser.

    Pour en savoir plus sur la récupération de ces valeurs, consultez la section Prérequis pour les annonces Facebook.

  8. Facultatif : Dans le menu Compte de service, sélectionnez un compte de service parmi ceux associés à votre projet Google Cloud. Le compte de service sélectionné doit disposer des rôles requis pour exécuter ce transfert.

    Si vous vous êtes connecté avec une identité fédérée, vous devez disposer d'un compte de service pour créer un transfert. Si vous vous êtes connecté avec un compte Google, un compte de service pour le transfert est facultatif.

    Pour en savoir plus sur l'utilisation des comptes de service avec des transferts de données, consultez la page Utiliser des comptes de service.

  9. Facultatif : dans la section Options de notification, procédez comme suit :

    • Pour activer les notifications par e-mail, cliquez sur le bouton Notification par e-mail. Lorsque vous activez cette option, l'administrateur de transfert reçoit une notification par e-mail en cas d'échec de l'exécution du transfert.
    • Pour activer les notifications d'exécution de transfert Pub/Sub pour ce transfert, cliquez sur le bouton Notifications Pub/Sub. Vous pouvez sélectionner le nom de votre sujet ou cliquer sur Créer un sujet pour en créer un.
  10. Cliquez sur Enregistrer.

Lorsque ce transfert s'exécute, le service de transfert de données BigQuery renseigne automatiquement les tables suivantes.

Nom de la table Description
AdAccounts Comptes publicitaires disponibles pour un utilisateur.
AdInsights Rapport des insights sur les annonces pour tous les comptes publicitaires.
AdInsightsActions Rapport sur les actions des insights sur les annonces pour tous les comptes publicitaires.

bq

Saisissez la commande bq mk, puis spécifiez l'indicateur de création de transfert --transfer_config.

bq mk \
    --transfer_config \
    --project_id=PROJECT_ID \
    --data_source=DATA_SOURCE \
    --display_name=DISPLAY_NAME \
    --target_dataset=DATASET \
    --params='PARAMETERS'

Où :

  • PROJECT_ID (Facultatif) ID de votre projet Google Cloud. Si vous ne fournissez pas de --project_id afin de spécifier un projet particulier, le projet par défaut est utilisé.
  • DATA_SOURCE : source de données (par exemple, facebook-ads).
  • DISPLAY_NAME : nom à afficher de la configuration de transfert. Ce nom peut correspondre à toute valeur permettant d'identifier le transfert si vous devez le modifier ultérieurement.
  • DATASET : ensemble de données cible de la configuration de transfert.
  • PARAMETERS correspond aux paramètres de la configuration de transfert créée, au format JSON. Exemple : --params='{"param":"param_value"}'. Voici les paramètres d'un transfert Facebook Ads :
    • connector.authentication.oauth.clientId : nom d'ID de l'application pour le client OAuth 2.0.
    • connector.authentication.oauth.clientSecret : code secret de l'application pour le client OAuth 2.0.
    • connector.authentication.oauth.refreshToken : ID du jeton de longue durée.

Par exemple, la commande suivante crée un transfert Facebook Ads dans le projet par défaut avec tous les paramètres requis :

    bq mk 
--transfer_config
--target_dataset=mydataset
--data_source=facebook_ads
--display_name='My Transfer'
--params='{"connector.authentication.oauth.clientId": "1650000000", "connector.authentication.oauth.clientSecret":"TBA99550", "connector.authentication.oauth.refreshToken":"abcdef"}'

API

Utilisez la méthode projects.locations.transferConfigs.create et fournissez une instance de la ressource TransferConfig.

Résoudre les problèmes liés à la configuration d'un transfert

Si vous rencontrez des problèmes lors de la configuration d'un transfert Facebook Ads, consultez l'onglet Actions requises du tableau de bord de l'application Facebook pour rechercher tous les éléments nécessitant attention.

Tarification

Le transfert des données Facebook Ads vers BigQuery est gratuit tant que cette fonctionnalité est en version bêta.

Étapes suivantes