Google Ads API में, एट्रिब्यूट को वापस पाने और मेट्रिक की रिपोर्टिंग के लिए एक जैसा तरीका होता है. इसकी मदद से, Google Ads क्वेरी लैंग्वेज का इस्तेमाल करके क्वेरी बनाई जा सकती हैं. इससे जटिल क्वेरी की सुविधा चालू होती है, जो अलग-अलग Google Ads खातों के बारे में काफ़ी डेटा दिखा सकती है.
Search
या SearchStream
, दोनों में से किसी भी तरीके का इस्तेमाल करके क्वेरी बनाई जा सकती हैं.
दोनों तरीके एक जैसी क्वेरी के साथ काम करते हैं और एक जैसे नतीजे दिखाते हैं. Search
तरीका, 10,000 लाइनों के तय साइज़ वाले पेजों में डेटा दिखाता है. इससे, पेजेशन का इस्तेमाल करके नतीजे के सेट को दोहराया जा सकता है. कम बैंडविड्थ या अविश्वसनीय नेटवर्क की स्थितियों में, इससे फ़ायदा मिल सकता है. उदाहरण के लिए, किसी बड़े रिज़ल्ट सेट को छोटे जवाबों में सेगमेंट करने के लिए, जिन्हें कनेक्शन टूटने पर फिर से फ़ेच किया जा सकता है. दूसरी ओर, SearchStream
वाला तरीका पूरे नतीजे के सेट को एक ही रिस्पॉन्स में वापस स्ट्रीम करता है. यह तरीका, एक साथ ज़्यादा डेटा पाने के लिए ज़्यादा असरदार हो सकता है.
Search
और SearchStream
, दोनों एक ही बेस यूआरएल का इस्तेमाल करते हैं:
https://googleads.googleapis.com/v18/customers/CUSTOMER_ID/googleAds
POST /v18/customers/CUSTOMER_ID/googleAds:search HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'" }
अगर नतीजों में 10,000 से ज़्यादा पंक्तियां हैं, तो जवाब में nextPageToken
दिखता है:
{ "results": [ // ... // ... // ... ], "nextPageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B", "fieldMask": "adGroupCriterion.keyword.text,adGroupCriterion.status" }
पिछले अनुरोध की वैल्यू के साथ pageToken
जोड़कर, उसी क्वेरी को दोहराने पर, नतीजों का अगला पेज फ़ेच होता है:
POST /v18/customers/CUSTOMER_ID/googleAds:search HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'", "pageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B" }
SearchStream
तरीके का इस्तेमाल करने के लिए, यूआरएल में सेवा के तरीके को searchStream
पर बदलें. इससे सभी नतीजे, स्ट्रीम किए गए एक ही रिस्पॉन्स में दिखेंगे. SearchStream
के लिए pageToken
की ज़रूरत नहीं है:
POST /v18/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'" }