Za pomocą GoogleAdsFieldService
możesz dynamicznie wysyłać zapytania o katalog zasobów, pola zasobów,
klucze segmentacji i dane dostępne w
GoogleAdsService Search i
SearchStream metodach. Katalog zawiera metadane, których klienci interfejsu Google Ads API mogą używać do weryfikacji i tworzenia instrukcji w języku zapytań Google Ads.
Przykładowe żądanie i odpowiedź HTTP
Żądanie składa się z HTTP GET do serwera interfejsu Google Ads API pod tym adresem URL:
https://googleads.googleapis.com/v25/googleAdsFields/{resource_or_field}
Poniższy przykład przedstawia żądanie i odpowiedź zwróconą przez GoogleAdsFieldService dla zasobu ad_group:
Żądanie
https://googleads.googleapis.com/v25/googleAdsFields/ad_group
Odpowiedź
{
"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",
...
]
}
W tym przykładzie ważne tablice to:
attributeResources- Zasoby, które można niejawnie połączyć z zasobem w klauzuli
FROM. metrics- Dane, które można wybrać z zasobem w klauzuli
FROM. Wypełniane tylko w przypadku pól, w którychcategorytoRESOURCE. segments- Klucze segmentów, które można wybrać z zasobem w klauzuli
FROM. Segmentują one dane określone w zapytaniu. Wypełniane tylko w przypadku pól, w którychcategorytoRESOURCE. selectableWith-
Atrybut
selectableWithw polu zasobu lub segmentu określa inne zasoby, segmenty lub dane, które można wybrać w tym samym zapytaniu GAQL. Ten atrybut jest niezbędny, gdy chcesz uwzględnić pola z zasobu lub segmentu, który nie jest określony w klauzuliFROM.Podczas tworzenia zapytania GAQL:
- Zasób w klauzuli
FROMjest głównym elementem. Zawsze możesz wybrać pola z tego zasobu. - Możesz też wybrać zgodne dane i segmenty, które są dostępne w przypadku głównego elementu.
- Jeśli uwzględnisz pola z dowolnego zasobu lub segmentu poza klauzulą
FROM, musisz się upewnić, że ten zasób lub segment niebędący częścią klauzuliFROMjest zgodny ze wszystkimi innymi polami, segmentami i danymi wybranymi w zapytaniu.
- Zasób w klauzuli
Lista
selectableWithdla określonego zasobu (nazwijmy go Zasób A) zawiera wszystkie inne zasoby, segmenty i dane, które można wybrać razem z polami z Zasobu A, gdy Zasób A nie jest głównym elementem.Przykład:
Rozważmy to przykładowe zapytanie:
SELECT ad_group.id, segments.date, campaign.name FROM ad_groupKlauzula
FROMokreślaad_group.To zapytanie wybiera
ad_group.id(z zasobuFROM),segments.dateicampaign.name.Ponieważ
campaign.namejest wybrane, alecampaignnie znajduje się w klauzuliFROM, musisz sprawdzić jego zgodność z innymi wybranymi elementami.Aby to zapytanie było prawidłowe, zasób
campaignmusi być zgodny zsegments.date(innym wybranym polem). Dlatego musisz sprawdzić atrybutselectableWithzasobucampaign. Jeślisegments.dateznajduje się na liścieselectableWithzasobucampaign, zapytanie jest prawidłowe.
Jeśli wybierzesz pola z zasobu, który nie znajduje się w klauzuli
FROM, listaselectableWithtego zasobu musi zawierać wszystkie inne segmenty i zasoby znajdujące się w klauzuliSELECT.
Szczegóły metadanych
Możesz wysłać zapytanie o katalog za pomocą GoogleAdsFieldService na tych poziomach:
- Zasób
- Na przykład
googleAdsFields/campaign. - Pole zasobu
- Na przykład
googleAdsFields/campaign.name. - Pole segmentacji
- Na przykład
googleAdsFields/segments.ad_network_type. - Dane
- Na przykład
googleAdsFields/metrics.clicks.