पुश नोटिफ़िकेशन

इस दस्तावेज़ में, पुश नोटिफ़िकेशन का इस्तेमाल करने का तरीका बताया गया है. इनसे किसी संसाधन में बदलाव होने पर, आपके ऐप्लिकेशन को सूचना मिलती है.

खास जानकारी

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

पुश नोटिफ़िकेशन का इस्तेमाल करने के लिए, आपको दो काम करने होंगे:

  • कॉलबैक पाने के लिए यूआरएल या "वेबहुक" सेट अप करें.

    यह एचटीटीपीएस सर्वर है, जो एपीआई के उन सूचना मैसेज को मैनेज करता है जो किसी संसाधन में बदलाव होने पर ट्रिगर होते हैं.

  • आपको जिस संसाधन एंडपॉइंट को देखना है उसके लिए, (सूचना चैनल) सेट अप करें.

    चैनल, सूचना के लिए रूटिंग की जानकारी तय करता है मैसेज. चैनल सेट अप करने के दौरान, आपको उस यूआरएल की जानकारी देनी होगी जहां आपको सूचनाएं चाहिए. जब भी किसी चैनल के संसाधन में बदलाव होता है, Admin SDK API, POST के तौर पर सूचना का मैसेज भेजता है उस यूआरएल के लिए अनुरोध भेज सकते हैं.

फ़िलहाल, एडमिन SDK API, गतिविधियों के संसाधन में हुए बदलावों के बारे में सूचनाएं देने की सुविधा देता है.

सूचना के चैनल बनाना

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

स्मार्टवॉच को ऐक्सेस करने का अनुरोध करें

देखे जा सकने वाले हर Admin SDK API संसाधन से watch तरीका नीचे दिए गए फ़ॉर्म के यूआरआई में:

https://www.googleapis.com/API_NAME/API_VERSION/RESOURCE_PATH/watch

सूचनाओं का चैनल सेट अप करने के लिए, करते हैं, तो एक POST अनुरोध संसाधन के लिए watch तरीका.

हर सूचना चैनल, किसी खास उपयोगकर्ता और किसी खास संसाधन (या संसाधनों के सेट) से जुड़ा होता है. watch अनुरोध तब तक पूरा नहीं किया जा सकेगा, जब तक मौजूदा उपयोगकर्ता या सेवा खाते के पास इस संसाधन का मालिकाना हक या उसे ऐक्सेस करने की अनुमति न हो.

उदाहरण

गतिविधियां संसाधन के लिए वीडियो देखने के सभी अनुरोधों का सामान्य रूप यह होता है:

POST https://admin.googleapis.com/admin/reports/v1/activity/users/userKey or all/applications/applicationName/watch
Authorization: Bearer auth_token_for_current_user
Content-Type: application/json

{
  "id": "01234567-89ab-cdef-0123456789ab", // Your channel ID.
  "type": "web_hook",
  "address": "https://mydomain.com/notifications", // Your receiving URL.
  ...
  "token": "target=myApp-myFilesChannelDest", // (Optional) Your channel token.
  "payload": true, // (Optional) Whether to include the payload (message body) in notifications.
  "expiration": 3600 // (Optional) Your requested channel expiration time.
}

userKey, applicationName, eventName, और filters पैरामीटर का इस्तेमाल करके, सिर्फ़ चुनिंदा इवेंट, उपयोगकर्ताओं या ऐप्लिकेशन के लिए सूचनाएं पाने की सुविधा चालू की जा सकती है.

ध्यान दें: यहां दिए गए उदाहरणों में, साफ़ तौर पर समझाने के लिए अनुरोध बॉडी को शामिल नहीं किया गया है.

एडमिन की सभी गतिविधियों पर नज़र रखें:

POST https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/admin/watch

दस्तावेज़ से जुड़ी सभी गतिविधियां देखें:

POST https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/docs/watch

किसी उपयोगकर्ता की एडमिन गतिविधि पर नज़र रखने के लिए:

POST https://admin.googleapis.com/admin/reports/v1/activity/users/liz@example.com/applications/admin/watch

किसी खास इवेंट को देखें, जैसे कि उपयोगकर्ता का पासवर्ड बदलना:

POST https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/admin/watch?eventName=CHANGE_PASSWORD

किसी खास दस्तावेज़ में हुए बदलावों को देखना:

POST https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/docs/watch?eventName=EDIT&filters==doc_id=123456abcdef

ज़रूरी प्रॉपर्टी

हर watch अनुरोध के साथ, आपको ये फ़ील्ड देने होंगे:

  • एक id प्रॉपर्टी स्ट्रिंग, जो इसकी खास तौर पर पहचान करती है आपके प्रोजेक्ट में किसी नए सूचना चैनल को लिंक करें. हमारा सुझाव है कि आप यूनिवर्सल यूनीक आइडेंटिफ़ायर (यूयूआईडी) या ऐसी ही किसी यूनीक स्ट्रिंग का इस्तेमाल करें. ज़्यादा से ज़्यादा 64 वर्ण इस्तेमाल किए जा सकते हैं.

    आपने जो आईडी वैल्यू सेट की है वह हर सूचना का X-Goog-Channel-Id एचटीटीपी हेडर मैसेज मिलेगा जो आपको इस चैनल के लिए मिला है.

  • type प्रॉपर्टी स्ट्रिंग, जो वैल्यू पर सेट की गई है web_hook.

  • उस यूआरएल पर सेट की गई address प्रॉपर्टी स्ट्रिंग जो सुनता है और इस सूचना चैनल से जुड़ी सूचनाओं का जवाब देता है. यह है वेबहुक कॉलबैक यूआरएल है और इसे एचटीटीपीएस का इस्तेमाल करना चाहिए.

    ध्यान दें कि Admin SDK API, इस एचटीटीपीएस पते पर सिर्फ़ तब सूचनाएं भेज सकता है, जब आपके वेब सर्वर पर मान्य एसएसएल सर्टिफ़िकेट इंस्टॉल हो. अमान्य सर्टिफ़िकेट में ये शामिल हैं:

    • खुद हस्ताक्षर किए हुए सर्टिफ़िकेट.
    • किसी गैर-भरोसेमंद सोर्स के हस्ताक्षर किए हुए सर्टिफ़िकेट.
    • वे सर्टिफ़िकेट जो निरस्त कर दिए गए हैं.
    • ऐसे सर्टिफ़िकेट जिनका विषय, टारगेट होस्टनेम से मेल नहीं खाता.

वैकल्पिक प्रॉपर्टी

अपने watch अनुरोध के साथ, ये वैकल्पिक फ़ील्ड भी दिए जा सकते हैं:

  • ऐसी token प्रॉपर्टी जिसमें आर्बिट्ररी स्ट्रिंग शामिल की जाती है चैनल टोकन के रूप में इस्तेमाल करने के लिए मान. सूचना वाले चैनल का इस्तेमाल किया जा सकता है अलग-अलग मकसद के लिए टोकन जनरेट किए जा सकते हैं. उदाहरण के लिए, आप ताकि पुष्टि हो सके कि हर आने वाला मैसेज उस चैनल के लिए है जिसे आपने ऐप्लिकेशन बनाया गया—ताकि यह सुनिश्चित किया जा सके कि सूचना स्पूफ़ किया गया—या संदेश को उसके अंदर सही गंतव्य पर रूट करने के लिए इस चैनल के उद्देश्य के आधार पर आपका आवेदन. ज़्यादा से ज़्यादा लंबाई: 256 वर्ण.

    टोकन इसमें शामिल है हर सूचना में X-Goog-Channel-Token एचटीटीपी हेडर मैसेज मिलेगा जो आपके ऐप्लिकेशन को इस चैनल के लिए मिलता है.

    अगर सूचना चैनल के टोकन का इस्तेमाल किया जाता है, तो हमारा सुझाव है कि:

    • ऐसे एन्कोडिंग फ़ॉर्मैट का इस्तेमाल करें जिसे बढ़ाया जा सके. जैसे, यूआरएल क्वेरी पैरामीटर. उदाहरण: forwardTo=hr&createdBy=mobile

    • OAuth टोकन जैसी संवेदनशील जानकारी शामिल न करें.

  • expiration प्रॉपर्टी स्ट्रिंग, यूनिक्स टाइमस्टैंप वह तारीख और समय (मिलीसेकंड में), जब आपको Admin SDK API से इस सूचना चैनल के लिए मैसेज भेजना बंद करें.

    अगर किसी चैनल के लिए खत्म होने का समय तय किया गया है, तो उसे X-Goog-Channel-Expiration एचटीटीपी हेडर की वैल्यू के तौर पर शामिल किया जाता है. यह वैल्यू, मनुष्य के पढ़ने लायक फ़ॉर्मैट में होती है. यह वैल्यू, आपके ऐप्लिकेशन को इस चैनल के लिए मिलने वाली हर सूचना के मैसेज में शामिल होती है.

अनुरोध के बारे में ज़्यादा जानकारी के लिए, एपीआई रेफ़रंस में गतिविधियां संसाधन के लिए watch तरीका देखें.

जवाब देखना

अगर watch अनुरोध सही तरीके से सूचना बनाता है चैनल है, तो यह एक एचटीटीपी 200 OK स्टेटस कोड दिखाता है.

स्मार्टवॉच पर मिले जवाब के मैसेज में, आपके बनाए गए सूचना चैनल के बारे में जानकारी दी जाती है. इसकी जानकारी नीचे दिए गए उदाहरण में दी गई है.

{
  "kind": "api#channel",
  "id": "reportsApiId", // ID you specified for this channel.
  "resourceId": "o3hgv1538sdjfh", // ID of the watched resource.
  "resourceUri": "https://admin.googleapis.com/admin/reports/v1/activity/userKey/applications/applicationName", // Version-specific ID of the watched resource.
  "token": "target=myApp-myFilesChannelDest", // Present only if one was provided.
  "expiration": 3600, // Actual expiration time as Unix timestamp (in ms), if applicable.
}

अनुरोध के हिस्से के तौर पर भेजी गई प्रॉपर्टी के अलावा, रिटर्न की गई जानकारी में resourceId और resourceUri भी शामिल होते हैं. इनसे, इस सूचना चैनल पर देखे जा रहे संसाधन की पहचान की जाती है.

दिखाई गई जानकारी को सूचना देने वाले किसी अन्य चैनल पर भेजा जा सकता है ऑपरेशन, जैसे कि जब आपको रिसीविंग के लिए कोई कार्रवाई नहीं करनी हो सूचनाएं पर टैप करें.

रिस्पॉन्स के बारे में ज़्यादा जानकारी के लिए, एपीआई रेफ़रंस में गतिविधियों के संसाधन के लिए watch तरीका देखें.

मैसेज सिंक करना

किसी संसाधन को देखने के लिए सूचना चैनल बनाने के बाद, Admin SDK API एक sync मैसेज भेजता है. इससे पता चलता है कि सूचनाएं भेजना शुरू हो गया है. इन मैसेज के लिए X-Goog-Resource-State एचटीटीपी हेडर की वैल्यू sync है. नेटवर्क के समय से जुड़ी समस्याओं की वजह से, हो सकता है कि watch तरीके का जवाब मिलने से पहले ही, आपको sync मैसेज मिल जाए.

sync सूचना को अनदेखा किया जा सकता है. हालांकि, इसका इस्तेमाल भी किया जा सकता है. उदाहरण के लिए, अगर आपको चैनल को बनाए रखना नहीं है, तो सूचनाएं पाने की सुविधा बंद करने के लिए, कॉल में X-Goog-Channel-ID और X-Goog-Resource-ID वैल्यू का इस्तेमाल किया जा सकता है. बाद में होने वाले इवेंट के लिए तैयारी करने के लिए, sync सूचना का इस्तेमाल भी किया जा सकता है.

Admin SDK API, sync मैसेज को भेजता है आपका पाने वाला यूआरएल नीचे दिखाया गया है.

POST https://mydomain.com/notifications // Your receiving URL.
X-Goog-Channel-ID: channel-ID-value
X-Goog-Channel-Token: channel-token-value
X-Goog-Channel-Expiration: expiration-date-and-time // In human-readable format. Present only if the channel expires.
X-Goog-Resource-ID: identifier-for-the-watched-resource
X-Goog-Resource-URI: version-specific-URI-of-the-watched-resource
X-Goog-Resource-State: sync
X-Goog-Message-Number: 1

सिंक किए गए मैसेज में हमेशा एक X-Goog-Message-Number एचटीटीपी होता है 1 की हेडर वैल्यू. इस चैनल के लिए आने वाली हर सूचना में कोई ऐसा मैसेज नंबर जो पिछले मैसेज से बड़ा हो, हालांकि संख्याएं क्रम में नहीं होंगी.

सूचना चैनलों को रिन्यू करें

सूचना वाले चैनल के लिए, समयसीमा खत्म होने की तारीख और वैल्यू हो सकती है आपके अनुरोध या किसी Admin SDK API की इंटरनल सीमाओं से तय की गई अनुमति या डिफ़ॉल्ट (ज़्यादा पाबंदी वाली वैल्यू का इस्तेमाल किया जाता है). अगर चैनल के लिए, समयसीमा खत्म होने की कोई तारीख तय की गई है, तो watch तरीके से मिली जानकारी में, चैनल के खत्म होने का समय यूनिक्स टाइमस्टैंप (मिलीसेकंड में) के तौर पर शामिल किया जाता है. इसके अलावा, X-Goog-Channel-Expiration एचटीटीपी हेडर में, आपके ऐप्लिकेशन को इस चैनल के लिए मिलने वाले हर सूचना मैसेज में, समयसीमा खत्म होने की तारीख और समय (मानव-पढ़ने लायक फ़ॉर्मैट में) शामिल होता है.

फ़िलहाल, सूचना देने वाले किसी चैनल को अपने-आप रिन्यू करने का कोई तरीका नहीं है. टास्क कब शुरू होगा चैनल की समयसीमा खत्म होने वाली है. इसके लिए, आपको इस नंबर पर कॉल करके, चैनल की जगह नया चैनल इस्तेमाल करना होगा watch तरीका. हमेशा की तरह, आपको नए चैनल की id प्रॉपर्टी. ध्यान दें कि एक ही संसाधन के लिए, सूचना देने वाले दो चैनल चालू होने पर, "ओवरलैप" की अवधि हो सकती है.

सूचनाएं पाएं

जब भी कोई देखा गया संसाधन बदलता है, तो आपके ऐप्लिकेशन को बदलाव के बारे में जानकारी देने वाला सूचना मैसेज. Admin SDK API, इन मैसेज को एचटीटीपीएस POST अनुरोधों के तौर पर उस यूआरएल पर भेजता है जिसे आपने इस सूचना चैनल के लिए address प्रॉपर्टी के तौर पर चुना है.

सूचना मैसेज के फ़ॉर्मैट को समझना

सूचना वाले सभी मैसेज में, एचटीटीपी हेडर का एक सेट होता है. कुछ तरह की सूचनाओं में मैसेज का मुख्य हिस्सा भी शामिल हो सकता है.

हेडर

Admin SDK API से पोस्ट किए गए सूचना वाले मैसेज यूआरएल में नीचे दिए गए एचटीटीपी हेडर शामिल हैं:

हेडर ब्यौरा
हमेशा मौजूद रहें
X-Goog-Channel-ID इस सूचना चैनल की पहचान करने के लिए, आपने जो यूयूआईडी या दूसरी यूनीक स्ट्रिंग दी है.
X-Goog-Message-Number वह पूर्णांक जो इस सूचना के लिए इस मैसेज की पहचान करता है चैनल. sync मैसेज के लिए यह वैल्यू हमेशा 1 होती है. चैनल पर हर मैसेज के बाद, मैसेज की संख्या बढ़ती है. हालांकि, ये संख्याएं एक क्रम में नहीं होतीं.
X-Goog-Resource-ID देखे गए संसाधन की पहचान करने वाली ओपेक वैल्यू. यह आईडी है सभी एपीआई वर्शन में अच्छी तरह से काम करता है.
X-Goog-Resource-State सूचना को ट्रिगर करने वाले संसाधन की नई स्थिति. वैल्यू, इनमें से कोई हो सकती है: sync या इवेंट का नाम.
X-Goog-Resource-URI देखे गए संसाधन के लिए एपीआई वर्शन के हिसाब से खास आइडेंटिफ़ायर.
कभी-कभी मौजूद होता है
X-Goog-Channel-Expiration सूचना चैनल की समयसीमा खत्म होने की तारीख और समय, जिसे ऐसे फ़ॉर्मैट में दिखाया गया हो जिसे कोई भी व्यक्ति आसानी से पढ़ सके. तय होने पर ही मौजूद होता है.
X-Goog-Channel-Token सूचना चैनल टोकन, जिसे आपके ऐप्लिकेशन ने सेट किया है, और जिसकी मदद से सूचना के सोर्स की पुष्टि की जा सकती है. सिर्फ़ तब मौजूद होता है, जब इसकी वैल्यू दी गई हो.

गतिविधियों की सूचना वाले मैसेज में, अनुरोध के मुख्य हिस्से में यह जानकारी शामिल होती है:

प्रॉपर्टी ब्यौरा
kind इसकी पहचान गतिविधि संसाधन के रूप में करता है. वैल्यू: तय की गई स्ट्रिंग "admin#reports#activity".
id गतिविधि रिकॉर्ड का यूनीक आइडेंटिफ़ायर.
id.time गतिविधि होने का समय. मान इसमें है ISO 8601 तारीख और समय का फ़ॉर्मैट. समय, YYYY-MM-DDThh:mm:ssTZD फ़ॉर्मैट में पूरी तारीख के साथ घंटे, मिनट, और सेकंड होता है. उदाहरण के लिए, 2010-04-05T17:30:04+01:00.
id.uniqueQualifier अगर एक से ज़्यादा इवेंट एक ही समय पर होते हैं, तो यूनीक क्वालिफ़ायर.
id.applicationName उस ऐप्लिकेशन का नाम जिससे इवेंट जुड़ा है. ये वैल्यू हो सकती हैं:
id.customerId Google Workspace खाते का यूनीक आइडेंटिफ़ायर.
actor कार्रवाई करने वाला उपयोगकर्ता.
actor.callerType रिपोर्ट में बताई गई गतिविधि को करने वाले लेखक का टाइप. एपीआई के इस वर्शन में, callerType, USER या OAuth 2LO इकाई का अनुरोध है, जिसने रिपोर्ट में बताई गई कार्रवाई की है .
actor.email उस उपयोगकर्ता का मुख्य ईमेल पता जिसकी गतिविधियों की शिकायत की जा रही है.
actor.profileId उपयोगकर्ता का यूनीक Google Workspace प्रोफ़ाइल आईडी.
ownerDomain Admin console या Docs ऐप्लिकेशन के दस्तावेज़ के मालिक का डोमेन. यह वह डोमेन है जिस पर रिपोर्ट के इवेंट का असर पड़ा है.
ipAddress कार्रवाई करने वाले उपयोगकर्ता का आईपी पता. यह Google Workspace में लॉग इन करते समय, उपयोगकर्ता का इंटरनेट प्रोटोकॉल (आईपी) पता होता है. इसमें उपयोगकर्ता की जगह की जानकारी हो भी सकती है और नहीं भी. उदाहरण के लिए, आईपी पता, उपयोगकर्ता के प्रॉक्सी सर्वर का पता या वर्चुअल प्राइवेट नेटवर्क (वीपीएन) पता हो सकता है. यह एपीआई, IPv4 और IPv6 के साथ काम करता है.
events[] रिपोर्ट में गतिविधि से जुड़े इवेंट.
events[].type इवेंट का टाइप. Google Workspace की उस सेवा या सुविधा की पहचान type प्रॉपर्टी में की जाती है जिसे एडमिन बदल देता है. प्रॉपर्टी, eventName प्रॉपर्टी का इस्तेमाल करके किसी इवेंट की पहचान करती है.
events[].name इवेंट का नाम. गतिविधि का यह नाम एपीआई की मदद से रिपोर्ट किया जाता है. साथ ही, हर eventName किसी खास Google Workspace सेवा या सुविधा से जुड़ा होता है, जिसे एपीआई अलग-अलग इवेंट के हिसाब से व्यवस्थित करता है.
आम तौर पर eventName अनुरोध पैरामीटर के लिए:
  • अगर कोई eventName नहीं दिया गया है, तो रिपोर्ट eventName के सभी संभावित इंस्टेंस दिखाती है.
  • किसी eventName का अनुरोध करने पर, एपीआई के जवाब में वे सभी गतिविधियां दिखती हैं जिनमें वह eventName शामिल है. ऐसा हो सकता है कि दिखाई गई गतिविधियों में, अनुरोध की गई eventName प्रॉपर्टी के अलावा, अन्य eventName प्रॉपर्टी भी शामिल हों.
events[].parameters[] अलग-अलग ऐप्लिकेशन के लिए पैरामीटर वैल्यू के पेयर.
events[].parameters[].name पैरामीटर का नाम.
events[].parameters[].value पैरामीटर की स्ट्रिंग वैल्यू.
events[].parameters[].intValue पैरामीटर की इंटीजर वैल्यू.
events[].parameters[].boolValue पैरामीटर की बूलियन वैल्यू.

उदाहरण

गतिविधि संसाधन इवेंट के लिए सूचना मैसेज का सामान्य फ़ॉर्मैट यह होता है:

POST https://mydomain.com/notifications // Your receiving URL.
Content-Type: application/json; utf-8
Content-Length: 0
X-Goog-Channel-ID: reportsApiId
X-Goog-Channel-Token: 398348u3tu83ut8uu38
X-Goog-Channel-Expiration: Tue, 29 Oct 2013 20:32:02 GMT
X-Goog-Resource-ID:  ret08u3rv24htgh289g
X-Goog-Resource-URI: https://admin.googleapis.com/admin/reports/v1/activity/userKey/applications/applicationName
X-Goog-Resource-State:  eventName
X-Goog-Message-Number: 10

{
  "kind": "admin#reports#activity",
  "id": {
    "time": datetime,
    "uniqueQualifier": long,
    "applicationName": string,
    "customerId": string
  },
  "actor": {
    "callerType": string,
    "email": string,
    "profileId": long
  },
  "ownerDomain": string,
  "ipAddress": string,
  "events": [
    {
      "type": string,
      "name": string,
      "parameters": [
        {
          "name": string,
          "value": string,
          "intValue": long,
          "boolValue": boolean
        }
      ]
    }
  ]
}

एडमिन गतिविधि इवेंट का उदाहरण:

POST https://mydomain.com/notifications // Your receiving URL.
Content-Type: application/json; utf-8
Content-Length: 596
X-Goog-Channel-ID: reportsApiId
X-Goog-Channel-Token: 245t1234tt83trrt333
X-Goog-Channel-Expiration: Tue, 29 Oct 2013 20:32:02 GMT
X-Goog-Resource-ID:  ret987df98743md8g
X-Goog-Resource-URI: https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/admin?alt=json
X-Goog-Resource-State:  CREATE_USER
X-Goog-Message-Number: 23

{
  "kind": "admin#reports#activity",
  "id": {
    "time": "2013-09-10T18:23:35.808Z",
    "uniqueQualifier": "-0987654321",
    "applicationName": "admin",
    "customerId": "ABCD012345"
  },
  "actor": {
    "callerType": "USER",
    "email": "admin@example.com",
    "profileId": "0123456789987654321"
  },
  "ownerDomain": "apps-reporting.example.com",
  "ipAddress": "192.0.2.0",
  "events": [
    {
      "type": "USER_SETTINGS",
      "name": "CREATE_USER",
      "parameters": [
        {
          "name": "USER_EMAIL",
          "value": "liz@example.com"
        }
      ]
    }
  ]
}

सूचनाओं का उत्तर दें

सफलता दिखाने के लिए, इनमें से कोई भी स्टेटस कोड दिखाया जा सकता है: 200, 201, 202, 204 या 102.

अगर आपकी सेवा Google की एपीआई क्लाइंट लाइब्रेरी का इस्तेमाल करती है और 500,502, 503 या 504 दिखाती है, तो Admin SDK API, एक्सपोनेंशियल बैकऑफ़ के साथ फिर से कोशिश करता है. यह माना जाता है कि सामान लौटाने की स्थिति बताने वाले दूसरे हर कोड से, मैसेज नहीं भेजा जा सका.

Admin SDK API के नोटिफ़िकेशन इवेंट को समझना

इस सेक्शन में, उन सूचना मैसेज के बारे में जानकारी दी गई है जो ये नोटिफ़िकेशन, Admin SDK API से पुश नोटिफ़िकेशन का इस्तेमाल करने पर पाएं.

Reports API की पुश सूचनाओं में दो तरह के मैसेज होते हैं: सिंक मैसेज और इवेंट की सूचनाएं. मैसेज का टाइप, X-Goog-Resource-State एचटीटीपी हेडर में दिखाया जाता है. इवेंट की सूचनाओं के लिए वैल्यू, activities.list तरीके के लिए वैल्यू जैसी ही होती हैं. हर ऐप्लिकेशन में यूनीक इवेंट होते हैं:

सूचनाएं पाने की सुविधा बंद करें

expiration प्रॉपर्टी की मदद से, यह कंट्रोल किया जा सकता है कि सूचनाएं अपने-आप कब बंद हों. किसी चैनल की सदस्यता खत्म होने से पहले, उससे जुड़ी सूचनाएं पाने की सुविधा बंद की जा सकती है. इसके लिए, यहां दिए गए यूआरआई पर जाकर, stop का इस्तेमाल करें:

https://www.googleapis.com/admin/reports_v1/channels/stop

इस तरीके के लिए आपको कम से कम चैनल का id और resourceId प्रॉपर्टी, जैसा कि उदाहरण देखें. ध्यान दें कि अगर एडमिन SDK API में कई तरह के ऐसे संसाधन हैं जिनमें watch तरीके हैं, तो सिर्फ़ एक stop तरीका है.

सिर्फ़ वे उपयोगकर्ता किसी चैनल को रोक सकते हैं जिनके पास इसके लिए अनुमति है. खास तौर पर:

  • अगर चैनल किसी सामान्य उपयोगकर्ता खाते से बनाया गया था, तो एक ही क्लाइंट का उपयोगकर्ता (जैसा कि पुष्टि करने के टोकन) से जुड़ा होता है, तो वह चैनल को रोक सकता है.
  • अगर चैनल को किसी सेवा खाते से बनाया गया है, तो उसी क्लाइंट का कोई भी उपयोगकर्ता चैनल को बंद कर सकता है.

यहां दिए गए कोड सैंपल में, सूचनाएं पाने की सुविधा बंद करने का तरीका बताया गया है:

POST https://www.googleapis.com/admin/reports_v1/channels/stop
  
Authorization: Bearer CURRENT_USER_AUTH_TOKEN
Content-Type: application/json

{
  "id": "4ba78bf0-6a47-11e2-bcfd-0800200c9a66",
  "resourceId": "ret08u3rv24htgh289g"
}