page_size वैल्यू सेट करने की कोशिश न करें, क्योंकि इससे गड़बड़ी होगी.
GoogleAdsService.Search में, पेज के तय किए गए साइज़ के हिसाब से पेजिंग की सुविधा उपलब्ध है. इसमें 10,000 पंक्तियां होती हैं. क्वेरी के नतीजे के सेट को कई जवाबों में बांटा जाता है. हर जवाब में 10,000 ऑब्जेक्ट होते हैं.
उदाहरण के लिए, इस क्वेरी पर ध्यान दें:
SELECT
ad_group.id,
ad_group_criterion.type,
ad_group_criterion.criterion_id,
ad_group_criterion.keyword.text,
ad_group_criterion.keyword.match_type
FROM ad_group_criterion
WHERE ad_group_criterion.type = KEYWORD
अगर आपके खाते में 50,000 कीवर्ड हैं, तो नतीजे के सेट में पहले जवाब में 10,000 GoogleAdsRow ऑब्जेक्ट और एक next_page_token शामिल होगा.
अगली 10,000 पंक्तियां पाने के लिए, अनुरोध को फिर से भेजें. हालांकि, अनुरोध के page_token को जवाब के next_page_token पर अपडेट करें. ध्यान दें कि next_page_token, लाइनों के आखिरी बैच वाले जवाब में नहीं दिखता.
हमारी क्लाइंट लाइब्रेरी, पेजिंग को अपने-आप मैनेज करती हैं. आपको सिर्फ़ जवाब की लाइनों को दोहराना होगा. जब मौजूदा पेज की सभी पंक्तियां वापस आ जाती हैं, तो क्लाइंट लाइब्रेरी आपकी ओर से पंक्तियों का नया पेज अपने-आप फ़ेच करती है. ऐसा तब तक होता है, जब तक पूरा डेटासेट वापस नहीं आ जाता. gRPC के बजाय REST का इस्तेमाल करने पर, आपको हर नए पेज के लिए साफ़ तौर पर अनुरोध करना होगा.
Google Ads API, पूरे डेटासेट को इंटरनल तौर पर कैश मेमोरी में सेव करता है. इसलिए, बाद के अनुरोध, शुरुआती अनुरोध की तुलना में ज़्यादा तेज़ी से पूरे होते हैं.
कैश किए गए डेटा का फ़ायदा पाने के लिए, बाद के अनुरोधों में आपकी क्वेरी बिल्कुल वैसी ही होनी चाहिए. इन अनुरोधों को आपके कोटे में नहीं गिना जाएगा. खास तौर पर, एक्सप्लोरर ऐक्सेस लेवल और बुनियादी ऐक्सेस लेवल के लिए. अगर क्वेरी अलग है और उसे एक ही पेज टोकन के साथ भेजा जाता है, तो गड़बड़ी का मैसेज दिखता है.