Linguaggio di query di Google Ads

Il Linguaggio di query Google Ads può interrogare l'API Google Ads per

Le risorse e i relativi attributi, segmenti e metriche utilizzando
GoogleAdsService Ricerca o SearchStream
Il risultato di una query GoogleAdsService è un elenco di istanze GoogleAdsRow, e ogni GoogleAdsRow rappresenta una risorsa. Se vengono richiesti attributi o metriche, la riga include anche questi campi. Se vengono richiesti segmenti, la risposta mostra anche una riga aggiuntiva per ogni tupla segmento-risorsa.
I metadati sui campi e le risorse disponibili in
GoogleAdsFieldService

Questo servizio fornisce un catalogo di campi interrogabili con specifiche relative a compatibilità e tipo.

Il risultato di una query GoogleAdsFieldService è un elenco di istanze GoogleAdsField, ognuna delle quali GoogleAdsField contenente i dettagli del campo richiesto.

Esecuzione di query sugli attributi di una risorsa

Di seguito è riportata una query di base per gli attributi della risorsa campagna, che illustra come restituire l'ID, il nome e lo stato della campagna:

SELECT
  campaign.id,
  campaign.name,
  campaign.status
FROM campaign
ORDER BY campaign.id

Questa query ordina per ID campagna. Ogni GoogleAdsRow risultante rappresenterebbe un oggetto campaign completato con i campi selezionati (incluso il resource_name della campagna).

Per scoprire quali altri campi sono disponibili per le query della campagna, consulta la documentazione di riferimento di Campaign.

Esecuzione di query sulle metriche

Oltre agli attributi selezionati per una determinata risorsa, puoi anche eseguire query per metriche correlate:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
ORDER BY campaign.id

Questa query filtra solo le campagne con stato PAUSED e che hanno registrato più di 1000 impressioni, ordinando per ID campagna. Ogni elemento GoogleAdsRow risultante avrà un campo metrics completato con le metriche selezionate.

Per un elenco delle metriche interrogabili, consulta la documentazione di Metrics.

Esecuzione di query per i segmenti

Oltre agli attributi selezionati di una determinata risorsa, puoi anche eseguire query su segmenti correlati:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions,
  segments.date,
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
  AND segments.date during LAST_30_DAYS
ORDER BY campaign.id

Come per le query sulle metriche, questa query filtra solo le campagne con stato PAUSED e con più di 1000 impressioni. Tuttavia, questa query segmenta i dati in base alla data. Questo genera ogni risultato GoogleAdsRow che rappresenta una tupla di una campagna e la data Segment. È importante notare che la segmentazione suddivide le metriche selezionate, raggruppando in base a ciascun segmento nella clausola SELECT.

Per un elenco dei segmenti interrogabili, consulta la documentazione di Segments.

In una query per una determinata risorsa, puoi eseguire l'unione su altre risorse correlate, se disponibili. Queste risorse correlate sono note come "risorse attribuite". Puoi eseguire l'unione in base alle risorse attribuite in modo implicito selezionando un attributo nella query.

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  bidding_strategy.name
FROM campaign
ORDER BY campaign.id

Questa query non solo seleziona gli attributi della campagna, ma recupera anche gli attributi correlati da ogni campagna selezionata. Ogni GoogleAdsRow risultante rappresenta un oggetto campaign completato con gli attributi della campagna selezionati e con l'attributo della strategia di offerta bidding_strategy.name selezionato.

Per scoprire quali risorse attribuite sono disponibili per le query sulle campagne, consulta la documentazione di riferimento di Campaign.

Modifica in base ai risultati della query

Quando esegui una query su una determinata risorsa, puoi acquisire immediatamente i risultati restituiti come oggetti, modificarli e inviarli di nuovo al metodo mutate nel servizio della risorsa. Di seguito è riportato un esempio di flusso di lavoro:

  1. Esegui una query per tutte le campagne che al momento sono PAUSED e hanno impressioni superiori a 1000.
  2. Recupera l'oggetto Campaign dal campo campaign di ogni GoogleAdsRow nella risposta.
  3. Modifica lo stato di ogni campagna da PAUSED a ENABLED.
  4. Chiama il numero CampaignService.MutateCampaigns con le campagne modificate per aggiornarle.

Metadati dei campi

Le query inviate all'indirizzo GoogleAdsFieldService vengono utilizzate per recuperare i metadati dei campi. Queste informazioni possono essere utilizzate per comprendere come i campi possono essere utilizzati insieme in una query. Poiché i dati sono disponibili dall'API e forniscono i metadati necessari per convalidare o creare una query, gli sviluppatori possono farlo in modo programmatico. Ecco una query tipica per i metadati:

SELECT
  name,
  category,
  selectable,
  filterable,
  sortable,
  selectable_with,
  data_type,
  is_repeated
WHERE name = "<INSERT_RESOURCE_OR_FIELD>"

Puoi sostituire <INSERT_RESOURCE_OR_FIELD> in questa query con una risorsa (come customer o campaign) o con un campo (ad es. campaign.id, metrics.impressions o ad_group.id).

Per un elenco dei campi interrogabili, consulta la documentazione di GoogleAdsField.

Esempi di codice

Le librerie client contengono esempi di utilizzo del linguaggio di query di Google Ads in GoogleAdsService. La cartella Operazioni di base contiene esempi come GetCampaigns, GetKeywords e SearchForGoogleAdsFields. La cartella reporting contiene un esempio GetKeywordStats.