GoogleAdsService Search और SearchStream तरीकों में उपलब्ध संसाधनों, संसाधन फ़ील्ड, सेगमेंटेशन की, और मेट्रिक के कैटलॉग का डाइनैमिक तरीके से अनुरोध करने के लिए, GoogleAdsFieldService (GetGoogleAdsField या SearchGoogleAdsFields के ज़रिए) का इस्तेमाल किया जा सकता है. कैटलॉग में मेटाडेटा होता है. इसका इस्तेमाल Google Ads API क्लाइंट, Google Ads क्वेरी लैंग्वेज स्टेटमेंट की पुष्टि करने और उन्हें बनाने के लिए कर सकते हैं.
एचटीटीपी अनुरोध और रिस्पॉन्स का सैंपल
अनुरोध में, इस यूआरएल पर Google Ads API सर्वर को भेजा गया HTTP GET शामिल होता है:
https://googleads.googleapis.com/v26/googleAdsFields/{resource_or_field}
यहां दिए गए उदाहरण में, ad_group संसाधन के लिए GoogleAdsFieldService से मिले जवाब के बाद किया गया अनुरोध दिखाया गया है:
अनुरोध
https://googleads.googleapis.com/v26/googleAdsFields/ad_group
जवाब
{
"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"
]
}
इस उदाहरण के लिए, अहम अरे ये हैं:
attributeResources- ऐसे संसाधन जिन्हें मेट्रिक को सेगमेंट किए बिना,
FROMक्लॉज़ में मौजूद संसाधन से जोड़ा जा सकता है. यह जानकारी सिर्फ़ उन फ़ील्ड के लिए अपने-आप भर जाती है जहांcategory,RESOURCEहै. metrics- वे मेट्रिक जिन्हें
FROMक्लॉज़ में संसाधन के साथ चुना जा सकता है. यह जानकारी सिर्फ़ उन फ़ील्ड के लिए अपने-आप भर जाती है जहांcategory,RESOURCEहै. segments- सेगमेंट कुंजियां (
segments.*फ़ील्ड और सेगमेंट करने वाले संसाधन), जिन्हेंFROMक्लॉज़ में संसाधन के साथ चुना जा सकता है. ये क्वेरी में बताई गई मेट्रिक को सेगमेंट में बांटते हैं. यह जानकारी सिर्फ़ उन फ़ील्ड के लिए अपने-आप भर जाती है जहांcategory,RESOURCEहै. selectableWith- ऐसे संसाधन, सेगमेंट या मेट्रिक जिन्हें Google Ads क्वेरी लैंग्वेज की उसी क्वेरी में चुना जा सकता है जिसमें यह संसाधन या सेगमेंट,
FROMक्लॉज़ में मुख्य संसाधन नहीं है.
selectableWith के साथ काम करने की सुविधा के बारे में क्वेरी करना
किसी संसाधन या सेगमेंट फ़ील्ड पर selectableWith एट्रिब्यूट, अन्य संसाधनों, सेगमेंट या मेट्रिक के बारे में बताता है. इन्हें Google Ads क्वेरी लैंग्वेज की एक ही क्वेरी में चुना जा सकता है.
यह एट्रिब्यूट तब ज़रूरी होता है, जब आपको किसी ऐसे संसाधन या सेगमेंट के फ़ील्ड शामिल करने हों जो FROM क्लॉज़ में नहीं दिया गया है.
Google Ads क्वेरी लैंग्वेज क्वेरी बनाते समय:
FROMक्लॉज़ में मौजूद संसाधन, मुख्य इकाई है. इस संसाधन से फ़ील्ड को हमेशा चुना जा सकता है.- मुख्य इकाई के साथ काम करने वाली मेट्रिक और सेगमेंट भी चुने जा सकते हैं.
- अगर
FROMक्लॉज़ के बाहर के किसी संसाधन या सेगमेंट के फ़ील्ड शामिल किए जाते हैं, तो आपको यह पक्का करना होगा कि यह नॉन-FROMसंसाधन या सेगमेंट, क्वेरी में चुने गए अन्य सभी फ़ील्ड, सेगमेंट, और मेट्रिक के साथ काम करता हो.
किसी खास संसाधन (संसाधन A) के लिए selectableWith सूची में अन्य सभी संसाधन, सेगमेंट, और मेट्रिक शामिल होती हैं. इन्हें संसाधन A के फ़ील्ड के साथ तब चुना जा सकता है, जब संसाधन A मुख्य इकाई न हो.
उदाहरण
उदाहरण के तौर पर दी गई इस क्वेरी को देखें:
SELECT ad_group.id, segments.date, campaign.name FROM ad_group
FROMक्लॉज़ मेंad_groupके बारे में बताया जाता है.- यह क्वेरी,
ad_group.id(FROMसंसाधन से),segments.date, औरcampaign.nameको चुनती है. - आपने
campaign.nameको चुना है, लेकिनcampaignकोFROMक्लॉज़ में नहीं चुना है. इसलिए, आपको यह पुष्टि करनी होगी कि यह चुने गए अन्य एलिमेंट के साथ काम करता है या नहीं. - यह पक्का करने के लिए कि यह क्वेरी मान्य है,
campaignसंसाधन कोsegments.date(चुने गए किसी अन्य फ़ील्ड) के साथ काम करना चाहिए. इसलिए, आपकोcampaignरिसॉर्स के लिएselectableWithएट्रिब्यूट की जांच करनी होगी. अगरsegments.date,campaignकीselectableWithसूची में मौजूद है, तो क्वेरी मान्य है.
अगर आपने किसी ऐसे संसाधन से फ़ील्ड चुने हैं जो FROM क्लॉज़ में नहीं है, तो उस संसाधन की selectableWith सूची में, आपके SELECT क्लॉज़ में मौजूद अन्य सभी सेगमेंट और संसाधन शामिल होने चाहिए.
मेटाडेटा की जानकारी
GoogleAdsFieldService का इस्तेमाल करके, कैटलॉग का अनुरोध किया जा सकता है. इसके लिए, GetGoogleAdsField के साथ संसाधन के नाम का इस्तेमाल करें या SearchGoogleAdsFields के साथ क्वेरी करें. ऐसा इन GoogleAdsFieldCategory लेवल पर किया जा सकता है:
- संसाधन (
RESOURCE) - उदाहरण के लिए,
googleAdsFields/campaign. - संसाधन एट्रिब्यूट (
ATTRIBUTE) - उदाहरण के लिए,
googleAdsFields/campaign.name. - सेगमेंटेशन फ़ील्ड (
SEGMENT) - उदाहरण के लिए,
googleAdsFields/segments.ad_network_type. - मेट्रिक (
METRIC) - उदाहरण के लिए,
googleAdsFields/metrics.clicks.