Google के अन्य एपीआई की तरह, Google Ads API भी पुष्टि करने और अनुमति देने के लिए OAuth 2.0 प्रोटोकॉल का इस्तेमाल करता है. OAuth 2.0 की मदद से, आपका Google Ads API क्लाइंट ऐप्लिकेशन, किसी उपयोगकर्ता के Google Ads खाते को ऐक्सेस कर सकता है. इसके लिए, उसे उपयोगकर्ता की लॉगिन जानकारी को मैनेज या सेव करने की ज़रूरत नहीं होती.
Google Ads के ऐक्सेस मॉडल के बारे में जानकारी
Google Ads API का असरदार तरीके से इस्तेमाल करने के लिए, आपको Google Ads के ऐक्सेस मॉडल के काम करने का तरीका समझना चाहिए. हमारा सुझाव है कि आप Google Ads के ऐक्सेस मॉडल की गाइड पढ़ें.
OAuth वर्कफ़्लो
Google Ads API का इस्तेमाल करते समय, तीन सामान्य वर्कफ़्लो का इस्तेमाल किया जाता है.
सेवा खाते का फ़्लो
अगर आपके वर्कफ़्लो में किसी व्यक्ति के इंटरैक्शन की ज़रूरत नहीं है, तो हमारा सुझाव है कि आप इस वर्कफ़्लो का इस्तेमाल करें. इस वर्कफ़्लो के लिए कॉन्फ़िगरेशन का एक चरण ज़रूरी है. इसमें उपयोगकर्ता को अपने Google Ads खाते में सेवा खाता जोड़ना होता है. इसके बाद, ऐप्लिकेशन सेवा खाते के क्रेडेंशियल का इस्तेमाल करके, उपयोगकर्ता के Google Ads खाते को मैनेज कर सकता है. PHP लाइब्रेरी को इस तरह कॉन्फ़िगर किया जा सकता है:
$oAuth2Credential = (new OAuth2TokenBuilder())
->withJsonKeyFilePath('PATH_TO_CREDENTIALS_JSON')
->withScopes('https://www.googleapis.com/auth/adwords')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
->build();
ज़्यादा जानने के लिए, सेवा खाते के वर्कफ़्लो की गाइड देखें.
एक उपयोगकर्ता के लिए पुष्टि करने की प्रोसेस
अगर सेवा खातों का इस्तेमाल नहीं किया जा सकता, तो इस वर्कफ़्लो का इस्तेमाल किया जा सकता है. इस वर्कफ़्लो के लिए, कॉन्फ़िगरेशन के दो चरण ज़रूरी हैं:
- Google Ads API का इस्तेमाल करके मैनेज किए जाने वाले सभी खातों का ऐक्सेस, एक ही उपयोगकर्ता को दें. आम तौर पर, उपयोगकर्ता को Google Ads API मैनेजर खाते का ऐक्सेस दिया जाता है. साथ ही, उस मैनेजर खाते से सभी Google Ads खातों को लिंक किया जाता है.
इसके बाद, वह उपयोगकर्ता
GenerateUserCredentialsजैसे कमांड-लाइन टूल का इस्तेमाल करता हैताकि आपका ऐप्लिकेशन, उनकी ओर से उनके सभी Google Ads खातों को मैनेज कर सके.
लाइब्रेरी को उपयोगकर्ता के OAuth 2.0 क्रेडेंशियल का इस्तेमाल करके, इस तरह शुरू किया जा सकता है:
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
->withClientSecret('INSERT_CLIENT_SECRET')
->withRefreshToken('INSERT_REFRESH_TOKEN')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
->withLoginCustomerId('INSERT_LOGIN_CUSTOMER_ID_HERE')
->build();
एक उपयोगकर्ता के लिए पुष्टि करने से जुड़े वर्कफ़्लो की गाइड देखें
ज़्यादा जानने के लिए.
एक से ज़्यादा उपयोगकर्ताओं के लिए पुष्टि करने की प्रोसेस
अगर आपका ऐप्लिकेशन, उपयोगकर्ताओं को साइन इन करने और उनकी ओर से उनके Google Ads खातों को मैनेज करने के लिए, आपके ऐप्लिकेशन को अनुमति देने की सुविधा देता है, तो हमारा सुझाव है कि आप इस वर्कफ़्लो का इस्तेमाल करें. आपका ऐप्लिकेशन, OAuth 2.0 के उपयोगकर्ता क्रेडेंशियल बनाता और मैनेज करता है. उपयोगकर्ता के क्रेडेंशियल का इस्तेमाल करके, लाइब्रेरी को इस तरह से शुरू किया जा सकता है:
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
->withClientSecret('INSERT_CLIENT_SECRET')
->withRefreshToken('INSERT_REFRESH_TOKEN')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
->withLoginCustomerId('INSERT_LOGIN_CUSTOMER_ID_HERE')
->build();
एक से ज़्यादा उपयोगकर्ताओं के लिए पुष्टि करने से जुड़े वर्कफ़्लो की गाइड देखें
ज़्यादा जानने के लिए.
अगर मेरा उपयोगकर्ता कई खातों को मैनेज करता है, तो क्या होगा?
ऐसा अक्सर होता है कि कोई उपयोगकर्ता एक से ज़्यादा Google Ads खातों को मैनेज करता है. इसके लिए, वह खातों को सीधे तौर पर ऐक्सेस करता है या Google Ads मैनेजर खाते का इस्तेमाल करता है. PHP क्लाइंट लाइब्रेरी में, कोड के ये उदाहरण दिए गए हैं. इनसे पता चलता है कि ऐसे मामलों को कैसे हैंडल किया जाता है.
-
कोड के इस उदाहरण में, Google Ads मैनेजर खाते से जुड़े सभी खातों की सूची पाने का तरीका बताया गया है.
-
कोड के इस उदाहरण में, उन सभी खातों की सूची पाने का तरीका बताया गया है जिन्हें उपयोगकर्ता सीधे तौर पर ऐक्सेस कर सकता है. इसके बाद, इन खातों का इस्तेमाल
loginCustomerIdसेटिंग के लिए मान्य वैल्यू के तौर पर किया जा सकता है.