बहुत ज़्यादा पंक्तियों वाले नतीजों के सेट को मैनेज करने के लिए, Merchant Center की क्वेरी लैंग्वेज में पेज नंबर डालने की सुविधा काम करती है. reports.search
के अनुरोध के मुख्य हिस्से में पेज का नंबर कंट्रोल करने के लिए, दो पैरामीटर उपलब्ध हैं: page_size
और page_token
. इसके अलावा, रिस्पॉन्स के मुख्य हिस्से में एक आउटपुट फ़ील्ड भी होता है:next_page_token
.
page_size
पैरामीटर से यह तय होता है कि किसी एक अनुरोध में ज़्यादा से ज़्यादा कितनी पंक्तियां वापस आ सकती हैं. अगर इसे तय नहीं किया जाता है, तो यह अपने-आप 1,000 पंक्तियों के पेज साइज़ पर सेट हो जाता है.
page_token
पैरामीटर से पता चलता है कि पेज पर किस टोकन का इस्तेमाल करना है. अगर
जानकारी नहीं है, तो पहला पेज दिखता है. बाद के किसी पेज को वापस पाने के लिए, पिछले reports.search
कॉल से next_page_token
के तौर पर मिली वैल्यू, page_token
के तौर पर दी जानी चाहिए. page_token
दिए जाने पर, कॉल के दूसरे सभी पैरामीटर, page_token
को दिखाने वाले पिछले कॉल से मैच होने चाहिए, ताकि अनचाहे व्यवहार से बचा जा सके.
उदाहरण:
SELECT
segments.offer_id,
metrics.impressions,
metrics.clicks,
metrics.ctr
FROM MerchantPerformanceView
WHERE segments.date BETWEEN '2021-12-01' AND '2021-12-31'
इस क्वेरी के लिए, मान लें कि खाते में 1,00,000 offer_ids
हैं और
page_size
को 200 पर सेट किया गया है. इसके बाद, नतीजे के सेट में next_page_token
के साथ पहले रिस्पॉन्स में 200 ReportRow
ऑब्जेक्ट होंगे.
अगली 200 लाइनें वापस पाने के लिए, उसी पेज साइज़ के साथ अनुरोध फिर से भेजें. हालांकि, इसके लिए अनुरोध के page_token
को पिछले रिस्पॉन्स के next_page_token
पर अपडेट करें.
यहां जवाब के मुख्य हिस्से का उदाहरण दिया गया है (पहले पांच नतीजों के साथ
next_page_token
):
{
"results": [
{
"segments": {
"offerId": "12345"
},
"metrics": {
"clicks": "0",
"impressions": "59",
"ctr": 0
}
},
{
"segments": {
"offerId": "12346"
},
"metrics": {
"clicks": "9625",
"impressions": "276695",
"ctr": 0.034785594246372356
}
},
{
"segments": {
"offerId": "12347"
},
"metrics": {
"clicks": "148",
"impressions": "22045",
"ctr": 0.0067135404853708325
}
},
{
"segments": {
"offerId": "12348"
},
"metrics": {
"clicks": "11",
"impressions": "1100",
"ctr": 0.01
}
},
{
"segments": {
"offerId": "12349"
},
"metrics": {
"clicks": "569",
"impressions": "62977",
"ctr": 0.0090350445400701838
}
},
...
],
"nextPageToken": "CMgB"
}