Puoi utilizzare GoogleAdsFieldService
per richiedere dinamicamente il catalogo per risorse, campi delle risorse,
chiavi di segmentazione e metriche disponibili nei metodi
GoogleAdsService Search e
SearchStream. 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/v22/googleAdsFields/{resource_or_field}
Il seguente esempio mostra una richiesta seguita dalla risposta restituita da
GoogleAdsFieldService per la risorsa ad_group:
Richiesta
https://googleads.googleapis.com/v22/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 che possono essere unite implicitamente alla risorsa nella clausola FROM.
- metrics
- Metriche che possono essere selezionate con la risorsa nella clausola FROM. Compilato solo per i campi in cuicategoryèRESOURCE.
- segments
- Chiavi di segmento che possono essere selezionate con la risorsa nella clausola FROM. Questi segmentano le metriche specificate nella query. Compilato solo per i campi in cuicategoryèRESOURCE.
- selectableWith
- 
  
- L'attributo - selectableWithin 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 specificati nella clausola- FROM.
- Quando crei una query GAQL: -  La risorsa nella clausola FROMè l'entità principale. Puoi sempre selezionare i campi di questa risorsa.
- Puoi anche selezionare metriche e segmenti compatibili disponibili con l'entità principale.
-  Se includi campi di risorse o segmenti al di fuori della clausola FROM, devi assicurarti che questa risorsa o questo segmento nonFROMsia compatibile con tutti gli altri campi, segmenti e metriche selezionati nella query.
 
-  La risorsa nella clausola 
- L'elenco - selectableWithper 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 - FROMspecifica- ad_group.
- Questa query seleziona - ad_group.id(dalla risorsa- FROM),- segments.datee- campaign.name.
- Poiché - campaign.nameè selezionato, ma- campaignnon è nella clausola- FROM, devi verificarne la compatibilità con gli altri elementi selezionati.
- Per garantire la validità di questa query, la risorsa - campaigndeve essere compatibile con- segments.date(un altro campo selezionato). Pertanto, devi controllare l'attributo- selectableWithper la risorsa- campaign. Se- segments.dateè presente nell'elenco- selectableWithdi- campaign, la query è valida.
 - Se selezioni campi da una risorsa che non si trova nella clausola - FROM, l'elenco- selectableWithdella 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.