Pianificare un trasferimento di Facebook Ads
Il connettore BigQuery Data Transfer Service for Facebook Ads consente di pianificare e gestire automaticamente i job di caricamento ricorrenti dagli annunci Facebook a BigQuery.
Limitazioni
I trasferimenti di Inserzioni di Facebook sono soggetti alle seguenti limitazioni:
- L'intervallo minimo tra i trasferimenti ricorrenti di Facebook Ads è di 24 ore. L'intervallo predefinito per un bonifico periodico è di 24 ore.
- BigQuery Data Transfer Service for Facebook Ads supporta solo un insieme fisso di tabelle. I report personalizzati non sono supportati.
- I trasferimenti di annunci di Facebook hanno una durata massima di sei ore. Un trasferimento non va a buon fine se richiede più tempo rispetto a questa durata massima.
- I trasferimenti incrementali non sono supportati per le tabelle
AdInsights
eAdInsightsActions
. Quando crei un trasferimento di dati che include le tabelleAdInsights
eAdInsightsActions
e hai specificato una data in Opzioni di pianificazione, vengono trasferiti tutti i dati disponibili per quella data. - BigQuery Data Transfer Service supporta una finestra di aggiornamento di un giorno per le tabelle
AdInsights
eAdInsightsActions
. La finestra di aggiornamento si riferisce al numero di giorni da cui un trasferimento di dati recupererà i dati di origine. Quando esegui un trasferimento di dati per la prima volta, il trasferimento di dati recupera tutti i dati di origine disponibili all'interno della finestra di aggiornamento. Il token di accesso dell'utente di lunga durata richiesto per i trasferimenti di annunci di Facebook scade dopo 60 giorni.
Se il token di accesso dell'utente di lunga durata è scaduto, puoi ottenerne uno nuovo accedendo ai dettagli del trasferimento e facendo clic su Modifica. Nella pagina di modifica del trasferimento, segui gli stessi passaggi nei prerequisiti di Facebook Ads per generare un nuovo token di accesso utente di lunga durata.
Importazione dati da trasferimenti di Facebook Ads
Quando trasferisci i dati da Facebook Ads a BigQuery, questi vengono caricati in tabelle BigQuery partizionate per data. La partizione della tabella in cui vengono caricati i dati corrisponde alla data dell'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'ultimo trasferimento. La finestra di aggiornamento non si applica alla
tabella AdAccounts
.
Prima di iniziare
Le seguenti sezioni descrivono i passaggi da seguire prima di creare un trasferimento di Facebook Ads.
Prerequisiti per Facebook Ads
Quando crei un trasferimento di Facebook Ads, assicurati di disporre delle seguenti informazioni sulle Inserzioni di Facebook.
Parametri Inserzioni di Facebook | 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 un clientID
e un clientSecret
, segui questi passaggi:
- Crea un'app per sviluppatori Facebook
con il tipo di app
Business
. - Nella dashboard dell'app di Facebook, fai clic su Impostazioni app > Base e trova l'ID e il secret dell'app corrispondenti all'app.
Per ottenere un token di accesso dell'utente di lunga durata, noto anche come token di aggiornamento, esegui i seguenti passaggi:
Nella console Google Cloud, segui i passaggi per creare un trasferimento di Facebook Ads.
Nella sezione Dettagli origine dati, copia l'URI di reindirizzamento elencato dopo il campo Aggiorna token.
Fai clic sulla dashboard dell'app di Facebook, quindi fai clic su Configura nella sezione Facebook Login for Business.
Nella pagina Impostazioni, inserisci l'URL di reindirizzamento nel campo URI di reindirizzamento OAuth validi e fai clic su Salva.
Torna alla console Google Cloud. Nella sezione Dettagli origine dati, fai clic su Autorizza. Si aprirà una pagina di autenticazione di Facebook.
Seleziona l'app per sviluppatori di Facebook per autorizzare l'account che si connette a BigQuery Data Transfer Service.
Al termine, fai clic su Ok per tornare alla console Google Cloud. Il token di accesso dell'utente di lunga durata viene ora compilato nella configurazione di trasferimento.
I token di accesso degli utenti di lunga durata scadono dopo 60 giorni. Per informazioni su come 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 ottenuto uno utilizzando uno dei seguenti metodi:
- Generare un token di accesso utente di lunga durata utilizzando l'API Graph.
Sono necessarie le autorizzazioni
ads_management
,ads_read
ebusiness_management
per avere un token valido per il trasferimento. - Genera un token utente di sistema. Un token utente di sistema ti consente di aggiungere manualmente asset, come gli account inserzionista, da includere nel trasferimento dei dati. Se un token utente di sistema è scaduto, devi aggiornare manualmente la configurazione di trasferimento con le nuove credenziali. Puoi anche creare un token che non scade quando crei un token utente di sistema. Per maggiori informazioni, vedi Token di accesso supportati.
Prerequisiti di BigQuery
- Verifica di aver completato tutte le azioni necessarie per abilitare BigQuery Data Transfer Service.
- Crea un set di dati BigQuery per archiviare i tuoi dati.
- Se intendi configurare le notifiche di esecuzione del trasferimento per Pub/Sub, assicurati di disporre dell'autorizzazione Identity and Access Management (IAM) di
pubsub.topics.setIamPolicy
. Se configuri solo le notifiche via email, le autorizzazioni Pub/Sub non sono necessarie. Per ulteriori informazioni, consulta Notifiche di esecuzione di BigQuery Data Transfer Service.
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.
Questo ruolo predefinito contiene le autorizzazioni necessarie per creare un trasferimento. Per visualizzare esattamente le autorizzazioni necessarie, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare un trasferimento sono necessarie le seguenti autorizzazioni:
-
bigquery.transfers.update
sull'utente -
bigquery.datasets.get
sul set di dati di destinazione -
bigquery.datasets.update
sul set di dati di destinazione
Potresti anche riuscire a ottenere queste autorizzazioni con i ruoli personalizzati o altri ruoli predefiniti.
Creare un trasferimento di dati Facebook Ads
Seleziona una delle seguenti opzioni:
Console
Nella console Google Cloud, vai alla pagina BigQuery Studio.
Fai clic su Trasferimenti di dati > Crea un trasferimento.
Nella sezione Tipo di origine, per Origine, seleziona Inserzioni di Facebook.
Nella sezione Nome configurazione di trasferimento, in Nome visualizzato, inserisci un nome per il trasferimento.
Nella sezione Opzioni di pianificazione, segui questi passaggi:
Nell'elenco Frequenza di ripetizione, seleziona un'opzione per specificare la frequenza di esecuzione di questo trasferimento. Per specificare una frequenza di ripetizione personalizzata, seleziona Personalizzata. Se selezioni On demand, questo trasferimento viene eseguito quando attivi manualmente il trasferimento.
Se applicabile, seleziona Inizia ora o Inizia all'ora impostata e fornisci una data di inizio e un'ora di esecuzione.
Nella sezione Impostazioni destinazione, per Set di dati, seleziona il set di dati creato per archiviare i dati.
Nella sezione Dettagli origine dati:
- In Client ID, inserisci l'ID app.
- In Client secret, inserisci il secret dell'app.
In Aggiorna token, inserisci l'ID token di accesso dell'utente di lunga durata facendo clic su Autorizza. In alternativa, se disponi già di un token di aggiornamento o di un token utente di sistema, puoi inserire il token di aggiornamento direttamente in questo campo.
Per informazioni sul recupero di un token di accesso utente di lunga durata, consulta i prerequisiti di Facebook Ads.
(Facoltativo) Nel menu Account di servizio, seleziona un account di servizio dagli account di servizio associati al tuo progetto Google Cloud. Per eseguire questo trasferimento, l'account di servizio selezionato deve disporre dei ruoli richiesti.
Se hai eseguito l'accesso con un'identità federata, sarà necessario un account di servizio per creare un trasferimento. Se hai eseguito l'accesso con un Account Google, un account di servizio per il trasferimento è facoltativo.
Per ulteriori informazioni sull'utilizzo degli account di servizio con i trasferimenti di dati, vedi Utilizzare gli account di servizio.
(Facoltativo) Nella sezione Opzioni di notifica, procedi nel seguente modo:
- Per attivare le notifiche via email, fai clic sul pulsante di attivazione/disattivazione Notifica via email. Se abiliti questa opzione, l'amministratore dei trasferimenti riceve una notifica via email quando un trasferimento non va a buon fine.
- Per abilitare le notifiche di esecuzione del trasferimento Pub/Sub per questo trasferimento, fai clic sull'opzione di attivazione/disattivazione Notifiche Pub/Sub. Puoi selezionare il nome dell'argomento o fare clic su Crea un argomento per crearne uno.
Fai clic su Salva.
Quando viene eseguito questo trasferimento, 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 sulle azioni delle informazioni sugli annunci per tutti gli account inserzionista. |
bq
Inserisci il comando bq mk
e fornisci 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 esempio
facebook-ads
). - DISPLAY_NAME: il nome visualizzato della configurazione di trasferimento. Il nome del trasferimento può essere qualsiasi valore che ti consenta di identificare il trasferimento, se necessario.
- DATASET: il set di dati di destinazione per la configurazione del trasferimento.
- PARAMETERS: i parametri per la configurazione di trasferimento
creata in formato JSON. Ad esempio:
--params='{"param":"param_value"}'
. Di seguito sono riportati i parametri per un trasferimento di Facebook Ads:connector.authentication.oauth.clientId
: il nome dell'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 Facebook Ads nel 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 il metodo projects.locations.transferConfigs.create
e fornisci un'istanza della risorsa TransferConfig
.
Risolvere i problemi di configurazione del trasferimento
Se riscontri problemi durante la configurazione di un trasferimento di Facebook Ads, prova a seguire questi passaggi per la risoluzione dei problemi:
- Controlla se il token di accesso utente è scaduto utilizzando Facebook Access Token Debugger. I token di accesso degli utenti di lunga durata scadono dopo 60 giorni. Se il token di accesso dell'utente di lunga durata è scaduto, accedi ai dettagli del trasferimento e fai clic su Modifica per modificare la configurazione di trasferimento. Nella pagina di modifica del trasferimento, segui gli stessi passaggi descritti nei prerequisiti di Facebook Ads per generarne uno nuovo.
- Verifica che il token di accesso dell'utente di lunga durata venga generato con le autorizzazioni
richieste:
ads_management
,ads_read
ebusiness_management
. In caso contrario, segui i passaggi nei prerequisiti di Facebook Ads per generare un nuovo token di accesso utente di lunga durata. - Controlla la scheda Azioni richieste nella dashboard dell'app Facebook per verificare la presenza di eventuali elementi che richiedono attenzione.
Potresti visualizzare i seguenti messaggi di errore relativi agli errori del limite di frequenza dell'API Meta:
- Errore:
There have been too many calls from this ad-account. Wait a bit and try again.
- Soluzione: controlla che non esistano flussi di lavoro paralleli che utilizzano le stesse app o credenziali. Se questi errori persistono, prova a eseguire l'upgrade delle autorizzazioni ad accesso avanzato per aumentare la quota per la limitazione di frequenza. Per ulteriori informazioni, consulta la sezione Limitazione di frequenza dell'API di 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. La seguente tabella elenca alcuni
messaggi ERROR_CODE
comuni per i trasferimenti 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 |
DEADLINE_EXCEEDED |
Il trasferimento non è stato completato entro la durata massima di sei ore |
NOT_FOUND |
Impossibile trovare una risorsa richiesta |
INTERNAL |
Un altro problema 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
- Scopri di più su BigQuery Data Transfer Service.
- Scopri di più sull'utilizzo dei trasferimenti, ad esempio sulla visualizzazione delle configurazioni e della cronologia delle esecuzioni.
- Scopri come caricare i dati con operazioni cross-cloud.