रीयल-टाइम रिपोर्टिंग API - अनुमति देना

इस गाइड में बताया गया है कि कोई ऐप्लिकेशन, रीयल-टाइम रिपोर्टिंग एपीआई को किए गए अनुरोधों को कैसे अनुमति देता है.

अनुरोधों को अनुमति देना

इससे पहले कि उपयोगकर्ता Google Analytics की वेब साइट पर अपनी खाता जानकारी देख सकें, उन्हें पहले अपने Google खाते में लॉग इन करना होगा. इसी तरह, जब उपयोगकर्ता पहली बार आपके ऐप्लिकेशन को ऐक्सेस करते हैं, तो उन्हें आपके ऐप्लिकेशन को डेटा ऐक्सेस करने की अनुमति देनी होती है.

आपका ऐप्लिकेशन, Analytics एपीआई को जो भी अनुरोध भेजता है उसमें अनुमति वाला टोकन होना ज़रूरी है. इस टोकन से Google आपके ऐप्लिकेशन की पहचान भी करता है.

अनुमति देने के प्रोटोकॉल के बारे में जानकारी

अनुरोधों को अनुमति देने के लिए, आपके ऐप्लिकेशन में OAuth 2.0 का इस्तेमाल किया जाना चाहिए. अनुमति देने वाले दूसरे प्रोटोकॉल इस्तेमाल नहीं किए जा सकते. अगर आपका ऐप्लिकेशन Google से साइन इन करने की सुविधा इस्तेमाल करता है, तो अनुमति देने से जुड़े कुछ पहलुओं को Google आपके लिए खुद मैनेज करता है.

OAuth 2.0 से अनुरोधों को अनुमति देना

Analytics API के सभी अनुरोधों को किसी पुष्टि किए गए उपयोगकर्ता की अनुमति मिली होनी चाहिए.

OAuth 2.0 के लिए अनुमति देने की प्रक्रिया या "तरीका" अलग-अलग हो सकता है. यह इस बात पर निर्भर करता है कि ऐप्लिकेशन किस तरह का है. सभी तरह के ऐप्लिकेशन के लिए नीचे दी गई सामान्य प्रक्रिया लागू होती है:

  1. ऐप्लिकेशन बनाने के बाद, उसे Google API (एपीआई) कंसोल का इस्तेमाल करके, रजिस्टर किया जाता है. इसके बाद, Google आपको क्लाइंट आईडी और क्लाइंट सीक्रेट जैसी जानकारी देगा. इस जानकारी की ज़रूरत आपको बाद में पड़ेगी.
  2. Google API (एपीआई) कंसोल में Analytics API को चालू करें. (अगर एपीआई को 'API कंसोल' की सूची में नहीं जोड़ा गया है, तो यह चरण छोड़ दें.)
  3. जब आपके ऐप्लिकेशन को उपयोगकर्ता के डेटा को ऐक्सेस करने की ज़रूरत होती है, तब वह Google से, डेटा के खास लिंक का अनुरोध करता है.
  4. Google, उपयोगकर्ता को सहमति वाली स्क्रीन दिखाता है, जिसमें उनसे आपके ऐप्लिकेशन को उनके कुछ डेटा को ऐक्सेस करने की अनुमति मांगी जाती है.
  5. अगर उपयोगकर्ता इसकी अनुमति दे देता है, तो Google आपके ऐप्लिकेशन को कुछ समय के लिए इस्तेमाल किए जा सकने वाला ऐक्सेस टोकन देता है.
  6. आपका ऐप्लिकेशन, ऐक्सेस टोकन से उपयोगकर्ता के डेटा को ऐक्सेस करने का अनुरोध करता है.
  7. अगर Google को पता चलता है कि आपका अनुरोध और टोकन मान्य है, तो वह आपके ऐप्लिकेशन को अनुरोध किए गए डेटा का ऐक्सेस दे देता है.

कुछ तरीकों में दूसरे चरण भी शामिल हो सकते हैं, जैसे कि रिफ़्रेश टोकन इस्तेमाल करके, नया ऐक्सेस टोकन पाना. अलग-अलग तरह के ऐप्लिकेशन के लिए डेटा ऐक्सेस करने के तरीकों के बारे में ज़्यादा जानकारी पाने के लिए, Google का OAuth 2.0 दस्तावेज़ पढ़ें.

यहां Analytics API के लिए OAuth 2.0 के दायरे की जानकारी दी गई है:

अनुमति देने का लिंक
https://www.googleapis.com/auth/analytics.readonly Analytics API का रीड ओनली ऐक्सेस.

OAuth 2.0 का इस्तेमाल करके, डेटा ऐक्सेस करने का अनुरोध करने के लिए, आपके ऐप्लिकेशन को अनुरोध के तरीके की जानकारी देनी होगी. साथ ही, वह जानकारी भी देनी होगी जो आपको ऐप्लिकेशन रजिस्टर करते समय, Google से मिली थी, जैसे कि क्लाइंट आईडी और क्लाइंट सीक्रेट.

सलाह: Google API की क्लाइंट लाइब्रेरी आपके लिए अनुमति देने की कुछ प्रक्रियाएं खुद कर सकती है. ये लाइब्रेरी कई प्रोग्रामिंग भाषाओं के लिए उपलब्ध होती हैं. ज़्यादा जानकारी के लिए लाइब्रेरी और नमूनों वाला पेज देखें.

सामान्य OAuth 2.0 फ़्लो

नीचे, OAuth 2.0 फ़्लो के सामान्य इस्तेमाल के उदाहरण दिए गए हैं:

वेब सर्वर

यह फ़्लो, उपयोगकर्ता के Google Analytics डेटा के ऑटोमेटेड, ऑफ़लाइन या शेड्यूल किए गए ऐक्सेस के लिए अच्छा है.

उदाहरण:

  • Google Analytics के नए डेटा से, उपयोगकर्ता के डैशबोर्ड अपने-आप अपडेट होते हैं.

क्लाइंट-साइड

यह फ़्लो उन ऐप्लिकेशन के लिए सबसे सही है जब उपयोगकर्ता, ब्राउज़र में अपने Google Analytics डेटा को ऐक्सेस करने के लिए सीधे ऐप्लिकेशन से इंटरैक्ट करते हैं. इससे सर्वर-साइड क्षमताओं की ज़रूरत नहीं होती, लेकिन अपने-आप होने वाली, ऑफ़लाइन या शेड्यूल की गई रिपोर्टिंग मुश्किल से होती है.

उदाहरण:

इंस्टॉल किए गए ऐप्लिकेशन

यह फ़्लो उन ऐप्लिकेशन के लिए है जिन्हें पैकेज के तौर पर डिस्ट्रिब्यूट किया गया है और जिन्हें उपयोगकर्ता ने इंस्टॉल किया है. इस फ़्लो के लिए यह ज़रूरी है कि ऐप्लिकेशन या उपयोगकर्ता के पास पुष्टि करने के फ़्लो को पूरा करने के लिए, ब्राउज़र का ऐक्सेस हो.

उदाहरण:

  • पीसी या Mac पर डेस्कटॉप विजेट.
  • कॉन्टेंट मैनेजमेंट सिस्टम के लिए प्लग इन — वेब सर्वर या क्लाइंट-साइड की तुलना में इस फ़्लो का फ़ायदा यह है कि आपके ऐप्लिकेशन के लिए एक ही एपीआई कंसोल प्रोजेक्ट का इस्तेमाल किया जा सकता है. इससे सभी को रिपोर्ट करने की सुविधा मिलती है. साथ ही, उपयोगकर्ताओं को ऐप्लिकेशन इंस्टॉल करने में आसानी होती है.

सेवा खाते

सेवा खाते, आपके खाते के Google Analytics डेटा के ऑटोमेटेड, ऑफ़लाइन या शेड्यूल किए गए ऐक्सेस के लिए उपयोगी हैं. उदाहरण के लिए, अपने Google Analytics डेटा का लाइव डैशबोर्ड बनाने और उसे दूसरे उपयोगकर्ताओं के साथ शेयर करने के लिए.

Analytics API का इस्तेमाल शुरू करने से पहले सेट अप टूल इस्तेमाल करना ज़रूरी है. इससे आपको Google API (एपीआई) कंसोल में प्रोजेक्ट बनाने, एपीआई की सुविधा चालू करने, और क्रेडेंशियल बनाने की जानकारी मिलती है.

नया सेवा खाता सेट अप करने के लिए, ये काम करें:

  1. क्रेडेंशियल बनाएं और gt; सेवा खाता कुंजी पर क्लिक करें.
  2. चुनें कि सेवा खाते की सार्वजनिक/निजी कुंजी को स्टैंडर्ड P12 फ़ाइल के तौर पर डाउनलोड किया जाए या ऐसी JSON फ़ाइल के तौर पर जिसे Google API क्लाइंट लाइब्रेरी से लोड किया जा सकता है.

आपके नए सार्वजनिक/निजी पासकोड को कंप्यूटर में बनाया और डाउनलोड किया जाता है. यह पासकोड की इकलौती कॉपी होती है. इसे सुरक्षित तरीके से सेव करने की ज़िम्मेदारी आपकी है.

समस्याएं हल करना

इन स्थितियों में आपका प्राधिकरण विफल हो जाता है:

  • अगर access_token की समयसीमा खत्म हो गई है या आप एपीआई के लिए गलत दायरे का इस्तेमाल कर रहे हैं, तो आपको 401 स्टेटस कोड मिलेगा.

  • अगर अनुमति वाले उपयोगकर्ता के पास व्यू (प्रोफ़ाइल) का ऐक्सेस नहीं है, तो आपको 403 स्टेटस कोड मिलेगा. पक्का करें कि आपके पास सही उपयोगकर्ता की अनुमति हो और उन्होंने वाकई आपका व्यू (प्रोफ़ाइल) चुना हो.

OAuth 2.0 वाला प्लेग्राउंड

इस टूल की मदद से, आप वेब इंटरफ़ेस से अनुमति देने के पूरे फ़्लो को देख सकते हैं. यह टूल सभी एचटीटीपी अनुरोध हेडर भी दिखाता है, जिन्हें अनुमति वाली क्वेरी बनाने के लिए ज़रूरी किया गया है. अगर आपको अपने ऐप्लिकेशन में काम करने की अनुमति नहीं मिल सकती, तो आपको OAuth 2.0 वाले खेल के मैदान पर जाकर इसे चालू करने की कोशिश करनी चाहिए. इसके बाद, आप एचटीटीपी हेडर की तुलना कर सकते हैं और Google Play पर आपका ऐप्लिकेशन जो भेज रहा है उससे अनुरोध कर सकते हैं. अपने अनुरोधों को सही तरीके से फ़ॉर्मैट करने के लिए, यह जांच एक आसान तरीका है.

अमान्य अनुदान

रीफ़्रेश टोकन का इस्तेमाल करने पर, आपको invalid_grant गड़बड़ी मिलती है:

एक ही Google Analytics खाते को ऐक्सेस करने के लिए, ऐप्लिकेशन कई रीफ़्रेश टोकन का अनुरोध कर सकते हैं.

उदाहरण के लिए, अगर कोई उपयोगकर्ता कई मशीनों पर एक ऐप्लिकेशन इंस्टॉल करना और एक ही Google Analytics खाते को ऐक्सेस करना चाहता है, तो हर मशीन के लिए एक अलग टोकन की ज़रूरत होगी. जब रीफ़्रेश टोकन की संख्या तय सीमा से ज़्यादा हो जाती है, तब पुराने टोकन अमान्य हो जाते हैं. अगर ऐप्लिकेशन किसी अमान्य रीफ़्रेश टोकन का इस्तेमाल करने की कोशिश करता है, तो invalid_grant गड़बड़ी का रिस्पॉन्स मिलता है.

OAuth 2.0 क्लाइंट और Google Analytics खाते की हर यूनीक जोड़ी की सीमा 25 रीफ़्रेश टोकन है. अगर ऐप्लिकेशन उसी क्लाइंट/खाता की जोड़ी के लिए रीफ़्रेश टोकन का अनुरोध करना जारी रखता है, तो 26वां टोकन जारी होने के बाद, पहले जारी किया गया पहला रीफ़्रेश टोकन अमान्य हो जाएगा. रीफ़्रेश किए गए 27वें टोकन का इस्तेमाल करके, जारी किए गए दूसरे टोकन को अमान्य किया जा सकता है.