Google Ads क्वेरी लैंग्वेज

संसाधन या मेटाडेटा की जानकारी के लिए क्वेरी करना

Google Ads क्वेरी लैंग्वेज, Google Ads API से इस तरह की जानकारी के लिए क्वेरी कर सकती है:

  • GoogleAdsService Search या SearchStream का इस्तेमाल करने वाले संसाधन और उनसे जुड़े एट्रिब्यूट, सेगमेंट, और मेट्रिक: GoogleAdsService क्वेरी का नतीजा, GoogleAdsRow इंस्टेंस की एक सूची होती है. हर GoogleAdsRow एक संसाधन को दिखाता है.

    अगर किसी एट्रिब्यूट या मेट्रिक का अनुरोध किया जाता है, तो लाइन में वे फ़ील्ड भी शामिल होते हैं. अगर किसी सेगमेंट का अनुरोध किया जाता है, तो जवाब में हर सेगमेंट-संसाधन टपल के लिए एक अतिरिक्त लाइन भी दिखती है.

  • GoogleAdsFieldService में उपलब्ध फ़ील्ड और संसाधनों के बारे में मेटाडेटा: यह सेवा, क्वेरी किए जा सकने वाले फ़ील्ड का कैटलॉग उपलब्ध कराती है. इसमें उनकी संगतता और टाइप के बारे में खास जानकारी होती है.

    GoogleAdsFieldService क्वेरी का नतीजा, GoogleAdsField इंस्टेंस की सूची होती है. इसमें हर GoogleAdsField में अनुरोध किए गए फ़ील्ड के बारे में जानकारी होती है.

संसाधन एट्रिब्यूट के लिए क्वेरी करना

यहां कैंपेन रिसोर्स के एट्रिब्यूट के लिए बुनियादी क्वेरी का एक उदाहरण दिया गया है. इससे पता चलता है कि कैंपेन आईडी, नाम, और स्थिति कैसे दिखाई जाती है:

SELECT
  campaign.id,
  campaign.name,
  campaign.status
FROM campaign
ORDER BY campaign.id

इस क्वेरी में, कैंपेन आईडी के हिसाब से क्रम लगाया गया है. हर GoogleAdsRow, चुने गए फ़ील्ड से भरा हुआ campaign ऑब्जेक्ट दिखाता है. इसमें कैंपेन का resource_name भी शामिल है.

कैंपेन क्वेरी के लिए उपलब्ध अन्य फ़ील्ड के बारे में जानने के लिए, Campaign रेफ़रंस दस्तावेज़ देखें.

मेट्रिक के लिए क्वेरी करना

किसी संसाधन के लिए चुने गए एट्रिब्यूट के साथ-साथ, इससे जुड़ी मेट्रिक के लिए भी क्वेरी की जा सकती है:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
ORDER BY campaign.id

यह क्वेरी, सिर्फ़ उन कैंपेन के लिए फ़िल्टर करती है जिनका स्टेटस PAUSED है और जिन्हें 1,000 से ज़्यादा इंप्रेशन मिले हैं. साथ ही, कैंपेन आईडी के हिसाब से क्रम में लगाती है. इसके बाद, हर GoogleAdsRow में metrics फ़ील्ड में चुनी गई मेट्रिक की वैल्यू अपने-आप भर जाएगी.

क्वेरी की जा सकने वाली मेट्रिक की सूची के लिए, Metrics दस्तावेज़ पढ़ें.

सेगमेंट के लिए क्वेरी करना

किसी संसाधन के लिए चुने गए एट्रिब्यूट के साथ-साथ, इससे जुड़े सेगमेंट के लिए भी क्वेरी की जा सकती है:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions,
  segments.date,
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
  AND segments.date during LAST_30_DAYS
ORDER BY campaign.id

मेट्रिक के लिए क्वेरी करने की तरह ही, यह क्वेरी सिर्फ़ उन कैंपेन के लिए फ़िल्टर करती है जिनका स्टेटस PAUSED है और जिन्हें 1,000 से ज़्यादा इंप्रेशन मिले हैं. हालांकि, यह क्वेरी, डेटा को तारीख के हिसाब से सेगमेंट करती है. इससे हर नतीजे में GoogleAdsRow, कैंपेन और तारीख Segment का टपल दिखाता है. सेगमेंट करने से, चुनी गई मेट्रिक अलग-अलग हो जाती हैं. साथ ही, SELECT क्लॉज़ में मौजूद हर सेगमेंट के हिसाब से ग्रुप हो जाती हैं.

क्वेरी किए जा सकने वाले सेगमेंट की सूची के लिए, Segments दस्तावेज़ देखें.

किसी संसाधन के लिए की गई क्वेरी में, अगर उससे जुड़े अन्य संसाधन उपलब्ध हैं, तो आपको उनके ख़िलाफ़ शामिल किया जा सकता है. इसी तरह के संसाधनों को "एट्रिब्यूट किए गए संसाधन" कहा जाता है. क्वेरी में कोई एट्रिब्यूट चुनकर, एट्रिब्यूट किए गए संसाधनों से अपने-आप जुड़ सकते हैं.

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  bidding_strategy.name
FROM campaign
ORDER BY campaign.id

इस क्वेरी से न सिर्फ़ कैंपेन एट्रिब्यूट चुने जाते हैं, बल्कि चुने गए हर कैंपेन से जुड़े एट्रिब्यूट भी मिलते हैं. हर नतीजे में मौजूद GoogleAdsRow, चुने गए कैंपेन एट्रिब्यूट के साथ-साथ, चुनी गई बिडिंग की रणनीति के एट्रिब्यूट bidding_strategy.name से भरा हुआ campaign ऑब्जेक्ट दिखाता है.

कैंपेन क्वेरी के लिए, एट्रिब्यूट किए गए कौनसे संसाधन उपलब्ध हैं, यह जानने के लिए Campaign रेफ़रंस दस्तावेज़ पढ़ें.

क्वेरी के नतीजों के आधार पर बदलाव करना

किसी दिए गए संसाधन के लिए क्वेरी करते समय, मिले हुए नतीजों को तुरंत ऑब्जेक्ट के तौर पर इस्तेमाल किया जा सकता है. साथ ही, उनमें बदलाव करके, उन्हें उस संसाधन की सेवा में मौजूद म्यूटेट तरीके पर वापस भेजा जा सकता है. यहां एक सैंपल वर्कफ़्लो दिया गया है: 1. उन सभी कैंपेन के लिए क्वेरी चलाएं जो फ़िलहाल PAUSED हैं और जिनके इंप्रेशन 1,000 से ज़्यादा हैं. 1. जवाब में मौजूद हर GoogleAdsRow के campaign फ़ील्ड से Campaign ऑब्जेक्ट पाएं. 1. हर कैंपेन की स्थिति को PAUSED से बदलकर ENABLED करें. 1. बदले गए कैंपेन के साथ CampaignService.MutateCampaigns को कॉल करें, ताकि उन्हें अपडेट किया जा सके.

फ़ील्ड का मेटाडेटा

GoogleAdsFieldService को भेजी गई क्वेरी, फ़ील्ड मेटाडेटा को वापस पाने के लिए होती हैं. इस जानकारी का इस्तेमाल करके, यह समझा जा सकता है कि किसी क्वेरी में फ़ील्ड का एक साथ इस्तेमाल कैसे किया जा सकता है. एपीआई से डेटा उपलब्ध होता है. साथ ही, यह क्वेरी की पुष्टि करने या उसे बनाने के लिए ज़रूरी मेटाडेटा उपलब्ध कराता है. इससे डेवलपर, प्रोग्राम के हिसाब से ऐसा कर पाते हैं. मेटाडेटा के लिए यहां एक सामान्य क्वेरी दी गई है:

SELECT
  name,
  category,
  selectable,
  filterable,
  sortable,
  selectable_with,
  data_type,
  is_repeated
WHERE name = "<INSERT_RESOURCE_OR_FIELD>"

इस क्वेरी में <INSERT_RESOURCE_OR_FIELD> की जगह, किसी संसाधन (जैसे कि customer या campaign) या फ़ील्ड (जैसे कि campaign.id, metrics.impressions या ad_group.id) का इस्तेमाल किया जा सकता है.

क्वेरी किए जा सकने वाले फ़ील्ड की सूची के लिए, GoogleAdsField दस्तावेज़ देखें.

कोड के उदाहरण

क्लाइंट लाइब्रेरी में, GoogleAdsService में Google Ads Query Language इस्तेमाल करने के उदाहरण दिए गए हैं. बुनियादी कार्रवाइयां फ़ोल्डर में, GetCampaigns, GetKeywords, और SearchForGoogleAdsFields जैसे उदाहरण दिए गए हैं.