Pianificare un trasferimento di Facebook Ads

Il connettore BigQuery Data Transfer Service per Facebook Ads ti consente di pianificare e gestire automaticamente i job di caricamento ricorrenti da Facebook Ads in BigQuery.

Limitazioni

I trasferimenti di dati di Facebook Ads sono soggetti alle seguenti limitazioni:

  • L'intervallo di tempo minimo tra i trasferimenti ricorrenti dei dati di Facebook Ads è di 24 ore. L'intervallo predefinito per un trasferimento di dati ricorrente è 24 ore.
  • BigQuery Data Transfer Service per Facebook Ads supporta solo un insieme fisso di tabelle. I report personalizzati non sono supportati.
  • I trasferimenti di dati relativi agli annunci di Facebook hanno una durata massima di sei ore. Un trasferimento non va a buon fine se richiede più tempo di questa durata massima.
  • I trasferimenti incrementali non sono supportati per le tabelle AdInsights e AdInsightsActions. Quando crei un trasferimento di dati che include AdInsights e AdInsightsActions e hai specificato una data in Opzioni di pianificazione: tutti i dati disponibili per quella data sono trasferito.
  • BigQuery Data Transfer Service supporta una finestra di aggiornamento di un giorno per le tabelle AdInsights e AdInsightsActions. La finestra di aggiornamento si riferisce al numero di giorni da cui un trasferimento dei dati recupererà i dati di origine. Quando esegui un trasferimento dati per la prima volta, questo recupera tutti i dati di origine disponibili all'interno della finestra di aggiornamento.
  • Il token di accesso utente a lungo termine richiesto per i trasferimenti di Facebook Ads scade dopo 60 giorni.

    Se il token di accesso utente a lungo termine è scaduto, puoi ottenerne uno nuovo accedendo ai dettagli del trasferimento dei dati e facendo clic su Modifica. Nella pagina di modifica del trasferimento, segui gli stessi passaggi descritti in Prerequisiti di Facebook Ads per generare un nuovo token di accesso utente a lungo termine.

Importazione dati da trasferimenti di Facebook Ads

Quando trasferisci i dati da Facebook Ads a BigQuery, questi vengono caricati nelle tabelle BigQuery partizionate per data. La partizione della tabella in cui vengono caricati i dati corrisponde alla data da l'origine dati. Se pianifichi più trasferimenti per la stessa data, BigQuery Data Transfer Service sovrascrive la partizione per quella data specifica con i dati più recenti. Più trasferimenti nello stesso giorno o backfill in esecuzione non generano dati duplicati e le partizioni per altre date non sono interessate.

Per le tabelle AdInsights e AdInsightsAction, la partizione della tabella in cui vengono caricati i dati corrisponde alla data dell'origine dati.

Per le tabelle AdAccounts, gli snapshot vengono acquisiti una volta al giorno e archiviati nella partizione della data dell'ultima esecuzione del trasferimento. La finestra di aggiornamento non si applica alla tabella AdAccounts.

Prima di iniziare

Le sezioni seguenti descrivono i passaggi da seguire prima di creare un trasferimento di dati di Facebook Ads.

Prerequisiti di Facebook Ads

Assicurati di disporre delle seguenti informazioni di Facebook Ads quando crei un trasferimento di dati di Facebook Ads.

Parametri di Facebook Ads Descrizione
clientID Il nome dell'ID app del client OAuth 2.0.
clientSecret Il secret dell'app per il client OAuth 2.0.
refreshToken Il token di accesso dell'utente di lunga durata, noto anche come token di aggiornamento.

Per ottenere clientID e clientSecret, segui questi passaggi:

  1. Creare un'app per sviluppatori Facebook con il tipo di app Business.
  2. Nella dashboard dell'app Facebook, fai clic su Impostazioni app > Di base e individua l'ID app e il segreto dell'app corrispondenti all'app.

Per ottenere un token di accesso utente a lungo termine, noto anche come token di aggiornamento, svolgi i seguenti passaggi:

  1. Nella console Google Cloud, segui i passaggi per creare un trasferimento da Facebook Ads.

  2. Nella sezione Dettagli origine dati, copia l'URI di reindirizzamento elencato dopo nel campo Refresh Token (Aggiorna token).

    Copia l'URI di reindirizzamento

  3. Fai clic sulla dashboard dell'app Facebook, quindi fai clic su Set up (Configura) nella sezione Facebook Login for Business.

    Configura le impostazioni per Facebook Login for Business

  4. Nella pagina Impostazioni, inserisci l'URL di reindirizzamento nel campo URI di reindirizzamento OAuth validi e fai clic su Salva.

  5. Torna alla console Google Cloud. Nella sezione Dettagli origine dati, fai clic su Autorizza. Si aprirà una pagina di autenticazione di Facebook.

    Genera un token di accesso utente a lungo termine

  6. Seleziona l'app per sviluppatori Facebook per autorizzare l'account che si connette a BigQuery Data Transfer Service.

  7. Al termine, fai clic su Ok per tornare alla console Google Cloud. La Il token di accesso dell'utente di lunga durata è ora compilato nella configurazione di trasferimento.

I token di accesso utente a lungo termine scadono dopo 60 giorni. Per informazioni su come per ottenere un nuovo token di accesso dell'utente di lunga durata, consulta Limitazioni.

Aggiorna alternative dei token

In alternativa, puoi fornire un token di aggiornamento durante la creazione di un trasferimento di dati se ne hai ottenuta una utilizzando uno dei seguenti metodi:

  • Generare un token di accesso utente di lunga durata utilizzando l'API Graph. Le autorizzazioni ads_management, ads_read e business_management sono richiesto un token valido per il trasferimento dei dati.
  • Genera un token utente di sistema. Un token utente di sistema ti consente di aggiungere manualmente gli asset, ad esempio gli account pubblicitari, da includere nel trasferimento dei dati. Se un token utente di sistema è scaduto, devi aggiornare manualmente la configurazione di trasferimento con nuove credenziali. Puoi anche scegliere di creare un token che non scade quando crei un token utente di sistema. Per maggiori informazioni, vedi Token di accesso supportati.

Prerequisiti di BigQuery

Ruoli BigQuery obbligatori

Per ottenere le autorizzazioni necessarie per creare un trasferimento, chiedi all'amministratore di concederti il ruolo IAM Amministratore BigQuery (roles/bigquery.admin). Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per creare un trasferimento. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per creare un trasferimento sono necessarie le seguenti autorizzazioni:

  • bigquery.transfers.update sull'utente
  • bigquery.datasets.get nel set di dati di destinazione
  • bigquery.datasets.update nel set di dati di destinazione

Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati altri ruoli predefiniti.

Creare un trasferimento di dati Facebook Ads

Seleziona una delle seguenti opzioni:

Console

  1. Vai alla pagina Trasferimenti di dati nella console Google Cloud.

    Vai a Trasferimenti di dati

  2. Fai clic su Crea trasferimento.

  3. Nella sezione Tipo di origine, per Origine, seleziona Inserzioni di Facebook.

  4. Nella sezione Dettagli origine dati:

    • In Client ID, inserisci l'ID app.
    • In Client secret, inserisci il secret dell'app.
    • In Token di aggiornamento, inserisci l'ID token di accesso utente a lungo termine facendo clic su Autorizza. In alternativa, se hai già un token di aggiornamento o un token utente di sistema, puoi inserire il token di aggiornamento direttamente in questo campo.

      Per informazioni su come recuperare un token di accesso utente a lungo termine, consulta Prerequisiti di Facebook Ads.

  5. Nella sezione Impostazioni destinazione, per Set di dati, seleziona il creato per archiviare i dati.

  6. Nella sezione Nome configurazione di trasferimento, per Nome visualizzato, inserisci un per il trasferimento di dati.

  7. Nella sezione Opzioni di programmazione:

    • Nell'elenco Frequenza di ripetizione, seleziona un'opzione per specificare la spesso viene eseguito questo trasferimento di dati. Per specificare una frequenza di ripetizione personalizzata, seleziona Personalizzata. Se selezioni On demand, questo trasferimento viene eseguita quando attivi manualmente il trasferimento.

    • Se applicabile, seleziona Inizia ora o Inizia all'ora impostata. e specificare una data di inizio e un'ora di esecuzione.

  8. (Facoltativo) Nel menu Account di servizio, seleziona un account di servizio dagli account di servizio associati progetto Google Cloud. Il servizio selezionato l'account deve disporre dei ruoli richiesti per eseguire questa trasferimento di dati.

    Se hai eseguito l'accesso con un'identità federata, è necessario un account di servizio per creare un trasferimento di dati. Se hai eseguito accesso con un Account Google, un service account per il trasferimento dei dati è facoltativo.

    Per ulteriori informazioni sull'utilizzo degli account di servizio con i trasferimenti di dati, consulta Utilizzare gli account di servizio.

  9. (Facoltativo) Nella sezione Opzioni di notifica, procedi nel seguente modo:

    • Per attivare le notifiche via email, fai clic sull'opzione di attivazione/disattivazione Notifica via email. Quando attivi questa opzione, l'amministratore dei trasferimenti riceve una notifica via email quando un'esecuzione del trasferimento non va a buon fine.
    • Per attivare le notifiche di esecuzione del trasferimento Pub/Sub per questo trasferimento di dati, fai clic sul pulsante di attivazione/disattivazione Notifiche Pub/Sub. Puoi selezionare il nome del tuo argomento oppure fare clic su Crea un argomento per crearne uno.
  10. Fai clic su Salva.

Quando viene eseguito questo trasferimento di dati, BigQuery Data Transfer Service compila automaticamente le seguenti tabelle.

Nome tabella Descrizione
AdAccounts Gli account inserzionista disponibili per un utente.
AdInsights Report Informazioni annunci per tutti gli account inserzionista.
AdInsightsActions Report Azioni di statistiche sugli annunci per tutti gli account pubblicitari.

bq

Inserisci il comando bq mk. e fornire il flag di creazione del trasferimento --transfer_config:

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

Dove:

  • (Facoltativo) PROJECT_ID: il tuo ID progetto Google Cloud. Se --project_id non viene fornito per specificare un particolare progetto, viene utilizzato il progetto predefinito.
  • DATA_SOURCE: l'origine dati (ad es. facebook-ads).
  • DISPLAY_NAME: il nome visualizzato per la configurazione del trasferimento di dati. Il nome del trasferimento può essere qualsiasi valore che ti consenta identificare il trasferimento se devi modificarlo in un secondo momento.
  • DATASET: il set di dati di destinazione per la configurazione del trasferimento dei dati.
  • PARAMETERS: i parametri per la configurazione del trasferimento di dati creata in formato JSON. Ad esempio: --params='{"param":"param_value"}'. Di seguito sono riportati i parametri un trasferimento di Inserzioni di Facebook:
    • connector.authentication.oauth.clientId: il nome ID app del client OAuth 2.0.
    • connector.authentication.oauth.clientSecret: il secret dell'app per il client OAuth 2.0.
    • connector.authentication.oauth.refreshToken: l'ID token di lunga durata.

Ad esempio, il seguente comando crea un trasferimento di dati di Facebook Ads nella progetto predefinito con tutti i parametri richiesti:

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

Utilizza la projects.locations.transferConfigs.create e fornisce un'istanza del metodo TransferConfig risorsa.

Risolvere i problemi di configurazione del trasferimento

Se hai problemi a configurare un trasferimento di dati di Facebook Ads, prova a svolgere i seguenti passaggi per la risoluzione dei problemi:

  • Controlla se il token di accesso utente è scaduto utilizzando lo strumento di debug dei token di accesso di Facebook. Accesso utente di lunga durata scadono dopo 60 giorni. Se il token di accesso utente a lungo termine è scaduto, vai ai dettagli del trasferimento e fai clic su Modifica per modificare la configurazione del trasferimento. Nella pagina di modifica del trasferimento, segui gli stessi passaggi nella Prerequisiti di Facebook Ads per generarne uno nuovo.
  • Verifica che il token di accesso dell'utente di lunga durata sia generato con i token richiesti autorizzazioni - ads_management, ads_read e business_management. In caso contrario, segui i passaggi descritti nella sezione Prerequisiti di Facebook Ads per generare un nuovo token di accesso utente a lungo termine.
  • Controlla la scheda Azioni richieste nella dashboard dell'app Facebook per verificare se sono presenti elementi che richiedono attenzione.

Potresti visualizzare i seguenti messaggi di errore relativi ai limiti di frequenza dell'API Meta:

Errore: There have been too many calls from this ad-account. Wait a bit and try again.
Soluzione: verifica che non siano presenti flussi di lavoro paralleli che utilizzano le stesse app o le stesse credenziali. Se questi errori persistono, prova a eseguire l'upgrade delle autorizzazioni ad accesso avanzato. per avere una quota maggiore di limitazione di frequenza. Per ulteriori informazioni, consulta Limitazione della frequenza dell'API Marketing.

Messaggi relativi alle metriche di monitoraggio comuni

Puoi anche controllare le metriche di monitoraggio di BigQuery Data Transfer Service per determinare la causa di un errore di trasferimento dei dati. La tabella seguente elenca alcuni messaggi ERROR_CODE comuni per i trasferimenti di dati di Facebook Ads.

Errore Descrizione
INVALID_ARGUMENT La configurazione fornita non è valida
PERMISSION_DENIED Le credenziali non sono valide
UNAUTHENTICATED È richiesta l'autenticazione
SERVICE_UNAVAILABLE Al momento il servizio non è in grado di gestire questo trasferimento di dati
DEADLINE_EXCEEDED Il trasferimento dei dati non è stato completato entro la durata massima di sei ore
NOT_FOUND Impossibile trovare una risorsa richiesta
INTERNAL Qualcun altro ha causato il mancato funzionamento del connettore
RESOURCE_EXHAUSTED È stata esaurita una quota o un limite dell'origine dati

Prezzi

Non è previsto alcun costo per trasferire i dati di Facebook Ads in BigQuery mentre questa funzionalità è in Anteprima.

Passaggi successivi