Anda dapat menggunakan GoogleAdsFieldService
(melalui GetGoogleAdsField atau SearchGoogleAdsFields) untuk meminta
katalog resource, kolom resource, kunci segmentasi, dan metrik
yang tersedia secara dinamis dalam metode GoogleAdsService Search
dan SearchStream. Katalog ini menyediakan metadata yang dapat digunakan oleh klien Google Ads API untuk validasi dan pembuatan pernyataan Bahasa Kueri Google Ads.
Contoh permintaan dan respons HTTP
Permintaan ini terdiri dari HTTP GET ke server Google Ads API di URL
berikut:
https://googleads.googleapis.com/v26/googleAdsFields/{resource_or_field}
Contoh berikut menunjukkan permintaan yang diikuti dengan respons yang ditampilkan dari
GoogleAdsFieldService untuk resource ad_group:
Permintaan
https://googleads.googleapis.com/v26/googleAdsFields/ad_group
Respons
{
"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"
]
}
Untuk contoh ini, array yang penting adalah:
attributeResources- Resource yang dapat digabungkan secara implisit ke resource dalam klausa
FROMtanpa metrik segmentasi. Hanya diisi untuk kolom yangcategory-nya adalahRESOURCE. metrics- Metrik yang dapat dipilih dengan resource dalam klausa
FROM. Hanya diisi untuk kolom yangcategory-nya adalahRESOURCE. segments- Kunci segmen (kolom
segments.*dan resource segmentasi) yang dapat dipilih dengan resource dalam klausaFROM. Kolom ini menyegmentasikan metrik yang ditentukan dalam kueri. Hanya diisi untuk kolom yangcategory-nya adalahRESOURCE. selectableWith- Referensi, segmen, atau metrik yang dapat dipilih dalam kueri Bahasa Kueri Google Ads yang sama jika referensi atau segmen ini bukan referensi utama dalam klausa
FROM.
Kompatibilitas kueri dengan selectableWith
Atribut selectableWith pada kolom resource atau segmen menentukan resource, segmen, atau metrik lain yang dapat dipilih dalam kueri Bahasa Kueri Google Ads yang sama.
Atribut ini sangat penting jika Anda ingin menyertakan kolom dari resource atau
segmen yang tidak ditentukan dalam klausa FROM.
Saat membuat kueri Bahasa Kueri Google Ads:
- Resource dalam klausa
FROMadalah entity utama. Anda selalu dapat memilih kolom dari resource ini. - Anda juga dapat memilih metrik dan segmen yang kompatibel yang tersedia dengan entitas utama.
- Jika Anda menyertakan kolom dari resource atau segmen apa pun di luar klausa
FROM, Anda harus memastikan bahwa resource atau segmen non-FROMini kompatibel dengan semua kolom, segmen, dan metrik lain yang dipilih dalam kueri.
Daftar selectableWith untuk resource tertentu (Resource A) berisi semua
resource, segmen, dan metrik lain yang dapat dipilih bersama kolom
dari Resource A jika Resource A bukan entitas utama.
Contoh
Perhatikan contoh kueri ini:
SELECT ad_group.id, segments.date, campaign.name FROM ad_group
- Klausa
FROMmenentukanad_group. - Kueri ini memilih
ad_group.id(dari resourceFROM),segments.date, dancampaign.name. - Karena
campaign.namedipilih, tetapicampaigntidak ada dalam klausaFROM, Anda harus memverifikasi kompatibilitasnya dengan elemen lain yang dipilih. - Untuk memastikan kueri ini valid, resource
campaignharus kompatibel dengansegments.date(kolom lain yang dipilih). Oleh karena itu, Anda harus memeriksa atributselectableWithuntuk resourcecampaign. Jikasegments.dateada dalam daftarselectableWithcampaign, kueri tersebut valid.
Jika Anda memilih kolom dari resource yang tidak ada dalam klausa FROM, daftar selectableWith resource tersebut harus menyertakan semua segmen dan resource lain yang ada dalam klausa SELECT.
Detail metadata
Anda dapat meminta katalog menggunakan GoogleAdsFieldService (baik berdasarkan nama resource dengan GetGoogleAdsField atau dengan membuat kueri dengan SearchGoogleAdsFields) pada tingkat GoogleAdsFieldCategory ini:
- Resource (
RESOURCE) - Misalnya,
googleAdsFields/campaign. - Atribut resource (
ATTRIBUTE) - Misalnya,
googleAdsFields/campaign.name. - Kolom segmentasi (
SEGMENT) - Misalnya,
googleAdsFields/segments.ad_network_type. - Metrik (
METRIC) - Misalnya,
googleAdsFields/metrics.clicks.