GoogleAdsService
, Google Ads API की यूनिफ़ाइड ऑब्जेक्ट रिकवरी और रिपोर्टिंग सेवा है. सेवा में ऐसे तरीके हैं जो:
- ऑब्जेक्ट की खास विशेषताएं वापस पाएं.
- तारीख की सीमा के आधार पर ऑब्जेक्ट के लिए परफ़ॉर्मेंस मेट्रिक पाएं.
- चीज़ों को उनकी विशेषताओं के आधार पर क्रम से लगाना.
- यह बताने के लिए शर्तों का इस्तेमाल करें कि रिस्पॉन्स में कौनसे ऑब्जेक्ट दिखाए जाने हैं.
- लौटाए गए ऑब्जेक्ट की संख्या सीमित करें.
GoogleAdsService
दो तरीकों से नतीजे दिखा सकता है:
GoogleAdsService.SearchStream
, सभी लाइनों को एक ही स्ट्रीमिंग रिस्पॉन्स में दिखाता है. इससे बड़े (10,000 से ज़्यादा लाइनों वाले) नतीजों के सेट को बेहतर तरीके से किया जा सकता है. यह तरीका तब ज़्यादा सही हो सकता है, जब आपका बैच ऐप्लिकेशन ज़्यादा से ज़्यादा डेटा डाउनलोड करना चाहता हो.GoogleAdsService.Search
बड़े रिस्पॉन्स को, नतीजों के मैनेज किए जा सकने वाले पेजों में बांटता है. यह तब ज़्यादा सही हो सकता है, जब आपका इंटरैक्टिव ऐप्लिकेशन एक ही समय में नतीजों का पेज दिखाता हो.
पेजिंग बनाम स्ट्रीमिंग के बारे में ज़्यादा जानें.
अनुरोध करें
खोज के तरीके के लिए
SearchGoogleAdsRequest
की ज़रूरत होती है, जिसमें ये एट्रिब्यूट शामिल होते हैं:
- एक
customer_id
- Google Ads क्वेरी लैंग्वेज
query
, जिससे पता चलता है कि किस रिसॉर्स के लिए क्वेरी करनी है, एट्रिब्यूट, सेगमेंट, और मेट्रिक को फिर से हासिल करना है. साथ ही, यह भी पता चलता है कि कौनसे ऑब्जेक्ट को सीमित करने के लिए इस्तेमाल की शर्तों को पूरा करना है - (सिर्फ़
GoogleAdsService.Search
के लिए) Apage_size
से यह पता चलता है कि पेजिंग का इस्तेमाल करने पर, एक जवाब में कितने ऑब्जेक्ट वापस करने हैं. - (सिर्फ़
GoogleAdsService.Search
) पेजिंग का इस्तेमाल करते समय, नतीजों का अगला बैच पाने के लिए,page_token
ज़रूरी नहीं है.
Google Ads क्वेरी भाषा के बारे में ज़्यादा जानकारी के लिए, Google Ads क्वेरी भाषा गाइड देखें.
जवाब को प्रोसेस करना
GoogleAdsService
, GoogleAdsRow
ऑब्जेक्ट की सूची दिखाता है.
हर GoogleAdsRow
, क्वेरी से मिले एक ऑब्जेक्ट को दिखाता है. इसमें एट्रिब्यूट का एक ऐसा सेट होता है जिसे SELECT
क्लॉज़ में अनुरोध किए गए फ़ील्ड के आधार पर पॉप्युलेट किया जाता है. SELECT
क्लॉज़ में शामिल नहीं किए गए एट्रिब्यूट, रिस्पॉन्स में मौजूद GoogleAdsRow
ऑब्जेक्ट में अपने-आप नहीं भरे जाते.
उदाहरण के लिए, भले ही ad_group_criterion
में status
एट्रिब्यूट हो, लेकिन उस क्वेरी के जवाब में, पंक्ति के ad_group_criterion
एट्रिब्यूट के status
फ़ील्ड में जानकारी अपने-आप नहीं भरती, जिसमें SELECT
क्लॉज़ में ad_group_criterion.status
शामिल नहीं है. इसी तरह, अगर SELECT
क्लॉज़ में campaign
रिसॉर्स का कोई भी फ़ील्ड शामिल नहीं है, तो लाइन का campaign
एट्रिब्यूट अपने-आप नहीं भरता.
हर GoogleAdsRow
में, एक ही नतीजे के सेट की किसी दूसरी पंक्ति में मौजूद एट्रिब्यूट और मेट्रिक अलग-अलग हो सकती हैं. इसलिए, पंक्तियों को टेबल की तय की गई पंक्तियों के बजाय, ऑब्जेक्ट के तौर पर देखा जाना चाहिए.
अज्ञात इनम टाइप
UNKNOWN
के टाइप के साथ दिए गए संसाधन, एपीआई के उस वर्शन में पूरी तरह से काम नहीं करते. हो सकता है कि ये संसाधन Google Ads यूज़र इंटरफ़ेस (यूआई) जैसे
अन्य इंटरफ़ेस से बनाए गए हों. अगर किसी संसाधन का टाइप UNKNOWN
है, तो आपके पास मेट्रिक चुनने का विकल्प है. हालांकि, एपीआई से संसाधन में बदलाव नहीं किया जा सकता. इसका एक उदाहरण
यूआई में दिखाया जा रहा कोई नया कैंपेन या विज्ञापन होगा, लेकिन
यह क्वेरी किए जा रहे एपीआई वर्शन में काम नहीं करता.
इन बातों का ध्यान रखें:
UNKNOWN
टाइप वाले संसाधन को बाद में इस्तेमाल किया जा सकता है याUNKNOWN
में अनिश्चित समय तक इस्तेमाल किया जा सकता है.UNKNOWN
टाइप वाले नए ऑब्जेक्ट किसी भी समय दिख सकते हैं. ये ऑब्जेक्ट, पुराने सिस्टम के साथ काम करते हैं, क्योंकि enum वैल्यू पहले से ही उपलब्ध होती है. इस बदलाव के साथ संसाधन भी उपलब्ध कराए जाते हैं, ताकि आपको अपने खाते के बारे में सही जानकारी मिल सके.UNKNOWN
संसाधन, दूसरे इंटरफ़ेस से आपके खाते में नई गतिविधियों की वजह से या किसी संसाधन के काम न करने पर दिख सकता है.UNKNOWN
संसाधनों में, ज़्यादा जानकारी वाली ऐसी मेट्रिक जुड़ी हो सकती हैं जिनके बारे में क्वेरी की जा सकती है.UNKNOWN
संसाधन आम तौर पर, Google Ads यूज़र इंटरफ़ेस (यूआई) में पूरी तरह दिखते हैं.- आम तौर पर,
UNKNOWN
संसाधनों में बदलाव नहीं किया जा सकता.
सेगमेंट करने की सुविधा
जवाब में, नीचे दी गई चीज़ों के हर कॉम्बिनेशन के लिए एक GoogleAdsRow
होगा:
FROM
क्लॉज़ में बताए गए मुख्य संसाधन का इंस्टेंस- चुने गए हर
segment
फ़ील्ड की वैल्यू
उदाहरण के लिए, ऐसी क्वेरी के जवाब जो FROM campaign
को चुनता है और जिसमें
SELECT
क्लॉज़ में segments.ad_network_type
और segments.date
शामिल हैं, उनमें इन चीज़ों के हर कॉम्बिनेशन के लिए एक लाइन होगी:
campaign
segments.ad_network_type
segments.date
नतीजों को मुख्य रिसॉर्स के हर इंस्टेंस के हिसाब से बांटा जाता है, न कि चुने गए अलग-अलग फ़ील्ड की वैल्यू के हिसाब से. उदाहरण के लिए,
SELECT campaign.status, metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
हर कैंपेन के लिए एक पंक्ति मिलती है, न कि campaign.status
फ़ील्ड की हर अलग वैल्यू के लिए एक पंक्ति.