REST Resource: subscriptions

संसाधन: सदस्यता

Google Workspace संसाधन के बारे में इवेंट पाने के लिए सदस्यता. सदस्यताओं के बारे में ज़्यादा जानने के लिए, Google Workspace Events API की खास जानकारी देखें.

JSON के काेड में दिखाना
{
  "name": string,
  "uid": string,
  "targetResource": string,
  "eventTypes": [
    string
  ],
  "payloadOptions": {
    object (PayloadOptions)
  },
  "notificationEndpoint": {
    object (NotificationEndpoint)
  },
  "state": enum (State),
  "suspensionReason": enum (ErrorType),
  "authority": string,
  "createTime": string,
  "updateTime": string,
  "reconciling": boolean,
  "etag": string,

  // Union field subscription_options can be only one of the following:
  "driveOptions": {
    object (DriveOptions)
  }
  // End of list of possible types for union field subscription_options.

  // Union field authority_info can be only one of the following:
  "userAuthority": string,
  "serviceAccountAuthority": string
  // End of list of possible types for union field authority_info.

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
}
फ़ील्ड
name

string

आइडेंटिफ़ायर. सदस्यता के संसाधन का नाम.

फ़ॉर्मैट: subscriptions/{subscription}

uid

string

सिर्फ़ आउटपुट के लिए. सिस्टम की ओर से असाइन किया गया सदस्यता का यूनीक आइडेंटिफ़ायर.

targetResource

string

ज़रूरी है. इम्यूटेबल. Google Workspace का वह संसाधन जिसे इवेंट के लिए मॉनिटर किया जाता है. इसे पूरे संसाधन के नाम के तौर पर फ़ॉर्मैट किया जाता है. टारगेट किए जा सकने वाले संसाधनों और उनसे जुड़े इवेंट के बारे में जानने के लिए, Google Workspace के साथ काम करने वाले इवेंट लेख पढ़ें.

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

eventTypes[]

string

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

सदस्यता के टारगेट संसाधन के हिसाब से, इवेंट के टाइप तय होते हैं. ज़्यादा जानकारी के लिए, Google Workspace के ऐसे इवेंट जिन पर यह सुविधा काम करती है लेख पढ़ें.

डिफ़ॉल्ट रूप से, आपको सदस्यता के लाइफ़साइकल से जुड़े इवेंट भी मिलते हैं. आपको इस फ़ील्ड के लिए लाइफ़साइकल इवेंट तय करने की ज़रूरत नहीं है.

अगर आपने ऐसा इवेंट टाइप तय किया है जो टारगेट रिसॉर्स के लिए मौजूद नहीं है, तो अनुरोध पर एचटीटीपी 400 Bad Request स्टेटस कोड मिलता है.

payloadOptions

object (PayloadOptions)

ज़रूरी नहीं. इवेंट पेलोड में कौनसा डेटा शामिल करना है, इसके बारे में विकल्प. यह सुविधा सिर्फ़ Google Chat और Google Drive के इवेंट के लिए उपलब्ध है.

notificationEndpoint

object (NotificationEndpoint)

ज़रूरी है. इम्यूटेबल. वह एंडपॉइंट जहां सदस्यता, इवेंट डिलीवर करती है. जैसे, Pub/Sub विषय.

state

enum (State)

सिर्फ़ आउटपुट के लिए. सदस्यता की स्थिति. इससे यह तय होता है कि सदस्यता को इवेंट मिल सकते हैं या नहीं. साथ ही, यह भी तय होता है कि उन्हें सूचना के एंडपॉइंट तक पहुंचाया जा सकता है या नहीं.

suspensionReason

enum (ErrorType)

सिर्फ़ आउटपुट के लिए. वह गड़बड़ी जिसकी वजह से सदस्यता निलंबित की गई है.

सदस्यता को फिर से चालू करने के लिए, गड़बड़ी को ठीक करें और subscriptions.reactivate तरीके को कॉल करें.

authority

string

सिर्फ़ आउटपुट के लिए. वह उपयोगकर्ता जिसने सदस्यता बनाने की अनुमति दी है.

जब कोई उपयोगकर्ता सदस्यता को अनुमति देता है, तब इस फ़ील्ड और userAuthority फ़ील्ड की वैल्यू एक ही होती है. इसका फ़ॉर्मैट यह होता है:

फ़ॉर्मैट: users/{user}

Google Workspace के उपयोगकर्ताओं के लिए, {user} वैल्यू, Directory API के user.id फ़ील्ड से मिलती है.

जब Chat ऐप्लिकेशन सदस्यता की पुष्टि करता है, तब सिर्फ़ serviceAccountAuthority फ़ील्ड भरता है और यह फ़ील्ड खाली रहता है.

createTime

string (Timestamp format)

सिर्फ़ आउटपुट के लिए. सदस्यता बनाने का समय.

updateTime

string (Timestamp format)

सिर्फ़ आउटपुट के लिए. सदस्यता को पिछली बार अपडेट किए जाने का समय.

reconciling

boolean

सिर्फ़ आउटपुट के लिए. अगर true है, तो इसका मतलब है कि सदस्यता को अपडेट किया जा रहा है.

etag

string

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

यूनियन फ़ील्ड subscription_options. Google Workspace की सदस्यताओं के लिए, टारगेट किए गए कुछ संसाधनों के लिए सदस्यता के अतिरिक्त विकल्प उपलब्ध हैं. subscription_options इनमें से सिर्फ़ एक हो सकता है:
driveOptions

object (DriveOptions)

ज़रूरी नहीं. ऐसी सुविधाएं जो सिर्फ़ Drive के संसाधनों की सदस्यता के लिए उपलब्ध हैं.

यूनियन फ़ील्ड authority_info. वह पहचान जिसने सदस्यता बनाने की अनुमति दी है. authority_info इनमें से सिर्फ़ एक हो सकता है:
userAuthority

string

सिर्फ़ आउटपुट के लिए. वह उपयोगकर्ता जिसने सदस्यता बनाने की अनुमति दी है. उपयोगकर्ता को targetResource दिखना चाहिए.

Google Workspace के उपयोगकर्ताओं के लिए, {user} वैल्यू, Directory API के user.id फ़ील्ड से मिलती है.

फ़ॉर्मैट: users/{user}

serviceAccountAuthority

string

सिर्फ़ आउटपुट के लिए. वह सेवा खाता जिसका इस्तेमाल सदस्यता बनाने की अनुमति देने के लिए किया गया था. इस सेवा खाते का मालिकाना हक उसी Google Cloud प्रोजेक्ट के पास होना चाहिए जहां आपने यह सदस्यता बनाई है.

फ़ॉर्मैट: projects/{projectId}/serviceAccounts/{service_account_id}

यूनियन फ़ील्ड expiration. सदस्यता खत्म होने का समय.

सदस्यता खत्म होने की ज़्यादा से ज़्यादा समयावधि इस बात पर निर्भर करती है कि आपकी सदस्यता में इवेंट पेलोड में संसाधन डेटा शामिल है या नहीं. यह डेटा PayloadOptions फ़ील्ड में दिया गया होता है:

  • अगर पेलोड में संसाधन का डेटा शामिल नहीं है, तो सात दिनों तक.
  • अगर पेलोड में संसाधन का डेटा शामिल है, तो चार घंटे तक. अगर आपका Google Workspace संगठन, डोमेन-वाइड डेलिगेशन के ज़रिए संसाधन का ऐक्सेस देता है, तो सदस्यता की समयसीमा को 24 घंटे तक बढ़ाया जा सकता है.

सदस्यता की समयसीमा खत्म होने के बाद, उसे अपने-आप मिटा दिया जाता है. आपको सदस्यता खत्म होने से notification_endpoint 12 घंटे और एक घंटे पहले, लाइफ़साइकल इवेंट मिलते हैं. ज़्यादा जानकारी के लिए, लाइफ़साइकल इवेंट पाना और उनका जवाब देना लेख पढ़ें.

किसी सदस्यता को खत्म होने से रोकने के लिए, UpdateSubscription तरीके का इस्तेमाल करके उसकी समयसीमा बढ़ाई जा सकती है. ज़्यादा जानकारी के लिए, सदस्यता अपडेट करना या रिन्यू करना लेख पढ़ें. expiration इनमें से सिर्फ़ एक हो सकता है:

expireTime

string (Timestamp format)

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

ttl

string (Duration format)

सिर्फ़ इनपुट के लिए. सदस्यता के लिए टाइम-टू-लिव (टीटीएल) या अवधि. अगर इस नीति को 0 पर सेट किया जाता है या इसकी कोई वैल्यू सबमिट नहीं की जाती है, तो ज़्यादा से ज़्यादा अवधि का इस्तेमाल किया जाता है.

DriveOptions

Drive के इवेंट दिखाने के लिए, अन्य विकल्प उपलब्ध हैं.

JSON के काेड में दिखाना
{
  "includeDescendants": boolean
}
फ़ील्ड
includeDescendants

boolean

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

  • अगर false है, तो सदस्यता को सिर्फ़ उस फ़ोल्डर या शेयर की गई ड्राइव में हुए बदलावों के बारे में सूचनाएं मिलती हैं जिसे targetResource के तौर पर सेट किया गया है.
  • अगर true है, तो file संसाधन के mimeType फ़ील्ड को application/vnd.google-apps.folder पर सेट किया जाना चाहिए.

ज़्यादा जानकारी के लिए, Google Drive में होने वाली गतिविधियों के टाइप देखें.

PayloadOptions

इवेंट पेलोड में कौनसा डेटा शामिल करना है, इसके बारे में विकल्प. यह सुविधा सिर्फ़ Google Chat और Google Drive के इवेंट के लिए उपलब्ध है.

JSON के काेड में दिखाना
{
  "includeResource": boolean,
  "fieldMask": string
}
फ़ील्ड
includeResource

boolean

ज़रूरी नहीं. क्या इवेंट पेलोड में, बदले गए संसाधन के बारे में डेटा शामिल है. उदाहरण के लिए, Google Chat मैसेज बनाए जाने वाले इवेंट के लिए, पेलोड में Message संसाधन के बारे में डेटा शामिल है या नहीं. अगर यह वैल्यू false है, तो इवेंट पेलोड में सिर्फ़ बदले गए संसाधन का नाम शामिल होता है.

fieldMask

string (FieldMask format)

ज़रूरी नहीं. अगर includeResource को true पर सेट किया जाता है, तो इवेंट पेलोड में शामिल किए जाने वाले फ़ील्ड की सूची. हर फ़ील्ड को कॉमा लगाकर अलग करें. उदाहरण के लिए, Google Chat मैसेज भेजने वाले का नाम और उसे बनाने का समय शामिल करने के लिए, message.sender,message.createTime डालें. अगर इसे शामिल नहीं किया जाता है, तो पेलोड में संसाधन के सभी फ़ील्ड शामिल होते हैं.

अगर आपने किसी ऐसे फ़ील्ड के बारे में बताया है जो संसाधन के लिए मौजूद नहीं है, तो सिस्टम उस फ़ील्ड को अनदेखा कर देता है.

NotificationEndpoint

वह एंडपॉइंट जहां सदस्यता, इवेंट डिलीवर करती है.

JSON के काेड में दिखाना
{

  // Union field endpoint can be only one of the following:
  "pubsubTopic": string
  // End of list of possible types for union field endpoint.
}
फ़ील्ड

यूनियन फ़ील्ड endpoint.

endpoint इनमें से सिर्फ़ एक हो सकता है:

pubsubTopic

string

इम्यूटेबल. वह Pub/Sub विषय जो सदस्यता के लिए इवेंट पाता है.

फ़ॉर्मैट: projects/{project}/topics/{topic}

आपको उसी Google Cloud प्रोजेक्ट में विषय बनाना होगा जिसमें आपने यह सदस्यता बनाई है.

ध्यान दें: Google Workspace Events API, क्रम से होने वाले इवेंट के लिए ऑर्डर करने की कुंजियों का इस्तेमाल करता है. अगर Cloud Pub/Sub विषय के लिए, मैसेज स्टोरेज की नीति कॉन्फ़िगर की गई है, ताकि सबसे नज़दीकी Google Cloud क्षेत्र को शामिल न किया जाए, तो ऑर्डरिंग कुंजियों के साथ इवेंट पब्लिश नहीं किए जा सकेंगे.

जब विषय को इवेंट मिलते हैं, तो इवेंट को Pub/Sub मैसेज के तौर पर कोड में बदला जाता है. ज़्यादा जानकारी के लिए, CloudEvents के लिए Google Cloud Pub/Sub प्रोटोकॉल बाइंडिंग देखें.

स्थिति

सदस्यता की संभावित स्थितियां.

Enums
STATE_UNSPECIFIED डिफ़ॉल्ट मान. इस वैल्यू का इस्तेमाल नहीं किया गया है.
ACTIVE सदस्यता चालू है. साथ ही, यह सूचना के एंडपॉइंट पर इवेंट भेज और पा सकती है.
SUSPENDED किसी गड़बड़ी की वजह से, सदस्यता को इवेंट नहीं मिल पा रहे हैं. गड़बड़ी का पता लगाने के लिए, suspensionReason फ़ील्ड देखें.
DELETED सदस्यता मिटा दी जाती है.

ErrorType

सदस्यता से जुड़ी संभावित गड़बड़ियां.

Enums
ERROR_TYPE_UNSPECIFIED डिफ़ॉल्ट मान. इस वैल्यू का इस्तेमाल नहीं किया गया है.
USER_SCOPE_REVOKED अनुमति देने वाले उपयोगकर्ता ने एक या उससे ज़्यादा OAuth स्कोप की अनुमति रद्द कर दी है. Google Workspace के लिए अनुमति देने के बारे में ज़्यादा जानने के लिए, उस स्क्रीन को कॉन्फ़िगर करें जहां OAuth को सहमति दी जाती है लेख पढ़ें.
APP_SCOPE_REVOKED डोमेन एडमिन ने ऐप्लिकेशन के लिए, एक या उससे ज़्यादा OAuth स्कोप का ऐक्सेस वापस ले लिया है.
RESOURCE_DELETED सदस्यता के लिए टारगेट किया गया संसाधन अब मौजूद नहीं है.
USER_AUTHORIZATION_FAILURE जिस उपयोगकर्ता ने सदस्यता बनाने की अनुमति दी थी उसके पास अब सदस्यता के टारगेट रिसॉर्स का ऐक्सेस नहीं है.
APP_AUTHORIZATION_FAILURE जिस ऐप्लिकेशन ने सदस्यता बनाने की अनुमति दी थी उसके पास अब सदस्यता के टारगेट रिसॉर्स का ऐक्सेस नहीं है.
ENDPOINT_PERMISSION_DENIED Google Workspace ऐप्लिकेशन के पास, आपकी सदस्यता के सूचना एंडपॉइंट पर इवेंट डिलीवर करने का ऐक्सेस नहीं है.
ENDPOINT_NOT_FOUND सदस्यता का सूचना एंडपॉइंट मौजूद नहीं है या वह Google Cloud प्रोजेक्ट में नहीं मिल रहा है जहां आपने सदस्यता बनाई थी.
ENDPOINT_RESOURCE_EXHAUSTED कोटे के कम होने या अनुरोध भेजने की संख्या के लिए तय की गई सीमा तक पहुंचने की वजह से, सदस्यता के सूचना एंडपॉइंट को इवेंट नहीं मिले.
OTHER कोई ऐसी गड़बड़ी हुई जिसकी पहचान नहीं की जा सकी.

तरीके

create

Google Workspace की सदस्यता बनाता है.

delete

Google Workspace की सदस्यता मिटाता है.

get

Google Workspace की सदस्यता के बारे में जानकारी मिलती है.

list

Google Workspace की सदस्यताओं की सूची बनाता है.

patch

Google Workspace की सदस्यता को अपडेट या रिन्यू करता है.

reactivate

यह कुकी, निलंबित की गई Google Workspace सदस्यता को फिर से चालू करती है.