Metadati delle risorse

Puoi utilizzare GoogleAdsFieldService per richiedere dinamicamente il catalogo di risorse, campi delle risorse, chiavi di segmentazione e metriche disponibili nei GoogleAdsService Search e SearchStream metodi. Il catalogo fornisce metadati che possono essere utilizzati dai client dell'API Google Ads per la convalida e la creazione di istruzioni Google Ads Query Language.

Esempio di richiesta e risposta HTTP

La richiesta è costituita da un HTTP GET al server dell'API Google Ads al seguente URL:

https://googleads.googleapis.com/v25/googleAdsFields/{resource_or_field}

L'esempio seguente mostra una richiesta seguita dalla risposta restituita da GoogleAdsFieldService per la risorsa ad_group:

Richiesta

https://googleads.googleapis.com/v25/googleAdsFields/ad_group

Risposta

{
  "resourceName": "googleAdsFields/ad_group",
  "name": "ad_group",
  "category": "RESOURCE",
  "selectable": false,
  "filterable": false,
  "sortable": false,
  "selectableWith": [
    "campaign",
    "customer",
    "metrics.average_cpc",
    "segments.device",
    ...
  ],
  "attributeResources": [
    "customer",
    "campaign"
  ],

  "metrics": [
    "metrics.conversions",
    "metrics.search_budget_lost_impression_share",
    "metrics.average_cost",
    "metrics.clicks",
    ...
  ],
  "segments": [
    "segments.date",
    "segments.ad_network_type",
    "segments.device",
    ...
  ]
}

Per questo esempio, gli array importanti sono:

attributeResources
Risorse a cui è possibile eseguire un join implicito alla risorsa nella clausola FROM.
metrics
Metriche che possono essere selezionate con la risorsa nella clausola FROM. Popolato solo per i campi in cui category è RESOURCE.
segments
Chiavi di segmento che possono essere selezionate con la risorsa nella clausola FROM. Questi segmenti specificano le metriche nella query. Popolato solo per i campi in cui category è RESOURCE.
selectableWith

L'attributo selectableWith in un campo di risorsa o segmento specifica altre risorse, segmenti o metriche che possono essere selezionati nella stessa query GAQL. Questo attributo è fondamentale quando vuoi includere campi di una risorsa o di un segmento non specificato nella clausola FROM.

Quando crei una query GAQL:

  1. La risorsa nella clausola FROM è l'entità principale. Puoi sempre selezionare i campi di questa risorsa.
  2. Puoi anche selezionare metriche e segmenti compatibili disponibili con l'entità principale.
  3. Se includi campi di una risorsa o di un segmento al di fuori della clausola FROM, devi assicurarti che questa risorsa o questo segmento non FROM sia compatibile con tutti gli altri campi, segmenti e metriche selezionati nella query.

L'elenco selectableWith per una risorsa specifica (chiamiamola Risorsa A) contiene tutte le altre risorse, i segmenti e le metriche che possono essere selezionati insieme ai campi della Risorsa A quando la Risorsa A non è l'entità principale.

Esempio:

Considera questa query di esempio: SELECT ad_group.id, segments.date, campaign.name FROM ad_group

  • La clausola FROM specifica ad_group.

  • Questa query seleziona ad_group.id (dalla risorsa FROM), segments.date e campaign.name.

  • Poiché campaign.name è selezionato, ma campaign non è nella clausola FROM, devi verificarne la compatibilità con gli altri elementi selezionati.

  • Per assicurarti che questa query sia valida, la risorsa campaign deve essere compatibile con segments.date (un altro campo selezionato). Pertanto, devi controllare l'attributo selectableWith per la risorsa campaign. Se segments.date è presente nell'elenco selectableWith di campaign, la query è valida.

Se selezioni i campi di una risorsa che non si trova nella clausola FROM, l'elenco selectableWith della risorsa deve includere tutti gli altri segmenti e risorse presenti nella clausola SELECT.

Dettagli metadati

Puoi richiedere il catalogo utilizzando GoogleAdsFieldService a questi livelli:

Risorsa
Ad esempio, googleAdsFields/campaign.
Campo della risorsa
Ad esempio, googleAdsFields/campaign.name.
Campo di segmentazione
Ad esempio, googleAdsFields/segments.ad_network_type.
Metrica
Ad esempio, googleAdsFields/metrics.clicks.