Google Ads API के लिए OAuth 2.0 की इंटरनल जानकारी

यह सेक्शन उन लोगों के लिए है जो OAuth 2.0 स्पेसिफ़िकेशन के बारे में पहले से जानते हैं. साथ ही, उन्हें Google APIs के साथ OAuth 2.0 इस्तेमाल करने का तरीका पता है.

दायरा

एक ऐक्सेस टोकन से, कई एपीआई को अलग-अलग लेवल का ऐक्सेस दिया जा सकता है. scope नाम का एक वैरिएबल पैरामीटर, संसाधनों और कार्रवाइयों के उस सेट को कंट्रोल करता है जिनकी अनुमति ऐक्सेस टोकन देता है. ऐक्सेस टोकन के अनुरोध के दौरान, आपका ऐप्लिकेशन scope पैरामीटर में एक या उससे ज़्यादा वैल्यू भेजता है.

Google Ads API का दायरा यह है:

https://www.googleapis.com/auth/adwords

बिना इंटरनेट के इस्तेमाल और टोकन की लाइफ़टाइम

Google Ads API क्लाइंट ऐप्लिकेशन के लिए, ऑफ़लाइन ऐक्सेस का अनुरोध करना आम बात है. उदाहरण के लिए, हो सकता है कि आपका ऐप्लिकेशन बैच जॉब तब चलाना चाहे, जब उपयोगकर्ता आपकी वेबसाइट ब्राउज़ न कर रहा हो. ऐक्सेस टोकन की अवधि 3,600 सेकंड (एक घंटा) होती है. इसके बाद, आपके ऐप्लिकेशन को नए ऐक्सेस टोकन के लिए रीफ़्रेश टोकन बदलना होगा.

वेब ऐप्लिकेशन के लिए ऑफ़लाइन ऐक्सेस का अनुरोध करने के लिए, पक्का करें कि आपने access_type पैरामीटर को offline पर सेट किया हो. ज़्यादा जानकारी के लिए, Google की OAuth 2.0 गाइड पढ़ें.

डेस्कटॉप ऐप्लिकेशन के लिए, ऑफ़लाइन ऐक्सेस की सुविधा डिफ़ॉल्ट रूप से चालू होती है. इसके लिए, आपको अलग से अनुरोध करने की ज़रूरत नहीं होती.

अनुरोध के हेडर

Google Ads API को किए गए सभी अनुरोधों में, अनुरोध के हेडर में OAuth 2.0 ऐक्सेस टोकन शामिल होना चाहिए. यहां दिए गए सेक्शन में, gRPC और REST का इस्तेमाल करके इन क्रेडेंशियल को पास करने का तरीका बताया गया है.

gRPC हेडर

gRPC API का इस्तेमाल करते समय, हर अनुरोध में ऐक्सेस टोकन शामिल करें. Credential को Channel से बाइंड किया जा सकता है, ताकि उस चैनल पर किए जाने वाले सभी अनुरोधों के लिए इसका इस्तेमाल किया जा सके. आपके पास हर कॉल के लिए, पसंद के मुताबिक क्रेडेंशियल भेजने का विकल्प भी होता है. gRPC की अनुमति से जुड़ी गाइड में, अनुमति को मैनेज करने के बारे में ज़्यादा जानकारी दी गई है.

REST हेडर

REST API का इस्तेमाल करते समय, एचटीटीपी हेडर Authorization: Bearer <ACCESS_TOKEN> के ज़रिए ऐक्सेस टोकन पास करें. यहां एचटीटीपी अनुरोध का एक उदाहरण दिया गया है:

# Returns the resource names of customers directly accessible by the user
# authenticating the call.
#
# Variables:
#   API_VERSION,
#   OAUTH2_ACCESS_TOKEN:
#     See https://developers.google.com/google-ads/api/rest/auth#request_headers
#     for details.
#
curl -f --request GET \
"https://googleads.googleapis.com/v${API_VERSION}/customers:listAccessibleCustomers" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${OAUTH2_ACCESS_TOKEN}" \