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