ऐप्लिकेशन को इंस्टॉल करने और लाइसेंस देने की जानकारी पाएं

इस गाइड में, Google Workspace Marketplace API के अनुरोधों और उनके जवाबों के उदाहरण दिए गए हैं. इससे, Google Workspace Marketplace से ऐप्लिकेशन इंस्टॉल करने और लाइसेंस की जानकारी पाने का तरीका पता चलता है.

ऐप्लिकेशन अब तक इंस्टॉल नहीं किया गया है

licenseNotification.list अनुरोध

यह अनुरोध, किसी खास ऐप्लिकेशन के लिए लाइसेंस की सूचनाओं की सूची पाने के लिए, licenseNotification.list तरीके को कॉल करता है.

GET /appsmarket/v2/licenseNotification/{applicationId}

curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/licenseNotification/{applicationId}

जवाब का मुख्य भाग

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

{
  "kind": "appsmarket#licenseNotificationList",
  "nextPageToken": ""
}

ऐप्लिकेशन को अलग-अलग इंस्टॉल किया जाता है

उपयोगकर्ता, user1@domain1.com ने Google Workspace Marketplace से ऐप्लिकेशन को अलग से इंस्टॉल किया है.

licenseNotification.list अनुरोध

यह अनुरोध, licenseNotification.list तरीके को कॉल करता है और उपयोगकर्ता के इंस्टॉल किए गए ऐप्लिकेशन के लिए, लाइसेंस से जुड़ी सूचनाओं की सूची को वापस लाता है.

GET /appsmarket/v2/licenseNotification/{applicationId}

curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/licenseNotification/{applicationId}

जवाब का मुख्य भाग

user1@domain1.com ने ऐप्लिकेशन इंस्टॉल किया है, इसलिए जवाब में एक लाइसेंस की सूचना शामिल है. लाइसेंस की सूचना में, प्रावधान की सूचना शामिल होती है. ऐसा इसलिए होता है, क्योंकि user1@domain1.com ने ऐप्लिकेशन इंस्टॉल करते समय नया लाइसेंस लिया था.

{
  "kind": "appsmarket#licenseNotificationList",
  "notifications": [
    {
      "kind": "appsmarket#licenseNotification",
      "id": "{LICENSE_NOTIFICATION_ID}",
      "applicationId": "{APPLICATION_ID}",
      "customerId": "user1@domain1.com",
      "timestamp": "1641318266998",
      "provisions": [
        {
          "kind": "appsmarket#provisionNotification",
          "editionId": "default_edition",
          "seatCount": "1"
        }
      ]
    }
  ],
  "nextPageToken": "{NEXT_PAGE_TOKEN}"
}

ऐप्लिकेशन को एडमिन ने इंस्टॉल किया हो

domain1.com के एडमिन ने संगठन के सभी लोगों के लिए ऐप्लिकेशन इंस्टॉल किया.

userLicense.get अनुरोध

यह अनुरोध, user1@domain1.com के लाइसेंस की स्थिति जानने के लिए userLicense.get तरीके को कॉल करता है. साथ ही, यह भी पता लगाता है कि उपयोगकर्ता के पास ऐप्लिकेशन इस्तेमाल करने की अनुमति है या नहीं.

GET /appsmarket/v2/userLicense/{applicationId}/{userId}

curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/{applicationId}/user1@domain1.com

जवाब का मुख्य भाग

domain1.com के एडमिन ने ऐप्लिकेशन इंस्टॉल किया है, इसलिए रिस्पॉन्स में user1@domain1.com के लिए उपयोगकर्ता का लाइसेंस दिखता है. इसमें enabled true है, जिसका मतलब है कि domain1.com के डोमेन एडमिन ने इस डोमेन के लिए ऐप्लिकेशन चालू किया है. साथ ही, state ACTIVE है, जिसका मतलब है कि user1@domain1.com के पास मान्य लाइसेंस है और उसे ऐप्लिकेशन का इस्तेमाल करने की अनुमति दी जानी चाहिए.

{
  "kind": "appsmarket#userLicense",
  "enabled": true,
  "state": "ACTIVE",
  "editionId": "default_edition",
  "customerId": "user1@domain1.com",
  "applicationId": "{APPLICATION_ID}",
  "id": "{USER_LICENSE_ID}",
  "userId": "user1@domain1.com"
}

customerLicense.get अनुरोध

यह अनुरोध, domain1.com के लाइसेंस की स्थिति जानने के लिए customerLicense.get तरीके को कॉल करता है. इससे यह पता चलता है कि उनके पास ऐप्लिकेशन का ऐक्सेस है या नहीं.

GET /appsmarket/v2/customerLicense/{applicationId}/{customerId}

curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/customerLicense/{applicationId}/domain1.com

जवाब का मुख्य भाग

जवाब में, domain1.com के लिए ग्राहक का लाइसेंस दिखता है, जहां state ACTIVE है. इससे पता चलता है कि ग्राहक के पास मान्य लाइसेंस है.

{
  "kind": "appsmarket#customerLicense",
  "id": "{CUSTOMER_LICENSE_ID}",
  "applicationId": "{APPLICATION_ID}",
  "customerId": "domain1.com",
  "state": "ACTIVE",
  "editions": [
    {
      "editionId": "default_edition",
      "seatCount": -1
    }
  ]
}

ऐप्लिकेशन को सिर्फ़ एडमिन ने किसी उपयोगकर्ता की संगठन की इकाई (ओयू) के लिए इंस्टॉल किया हो

अब यह ऐप्लिकेशन, user2@domain1.com के ओयू के लिए सिर्फ़ एडमिन ने इंस्टॉल किया है. अब इसे संगठन के सभी लोगों के लिए, एडमिन के तौर पर इंस्टॉल नहीं किया जाता.

userLicense.get अनुरोध

यह अनुरोध, user3@domain1.com के लाइसेंस का स्टेटस पाने के लिए, userLicense.get तरीके का इस्तेमाल करता है. साथ ही, यह भी पता लगाता है कि उपयोगकर्ता के पास ऐप्लिकेशन इस्तेमाल करने की अनुमति है या नहीं.

GET /appsmarket/v2/userLicense/{applicationId}/{userId}

curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/{applicationId}/user3@domain1.com

जवाब का मुख्य भाग

ऐप्लिकेशन को सिर्फ़ user2@domain1.com के लिए एडमिन ने इंस्टॉल किया है. इसलिए, रिस्पॉन्स में user3@domain1.com के लिए उपयोगकर्ता का लाइसेंस दिखता है. इसमें enabled के तौर पर false दिखता है, जिसका मतलब है कि domain1.com के लिए डोमेन एडमिन ने इस डोमेन के लिए ऐप्लिकेशन चालू नहीं किया है. साथ ही, state के तौर पर ACTIVE दिखता है, जिसका मतलब है कि उपयोगकर्ता के पास मान्य लाइसेंस है और उसे ऐप्लिकेशन इस्तेमाल करने की अनुमति दी जानी चाहिए.

{
  "kind": "appsmarket#userLicense",
  "enabled": false,
  "state": "ACTIVE",
  "editionId": "default_edition",
  "customerId": "domain1.com",
  "applicationId": "{APPLICATION_ID}",
  "id": "{USER_LICENSE_ID}",
  "userId": "user3@domain1.com"
}

userLicense.get अनुरोध

यह अनुरोध, user2@domain1.com के लाइसेंस का स्टेटस पाने के लिए, userLicense.get तरीके को कॉल करता है. साथ ही, यह भी पता लगाता है कि उपयोगकर्ता के पास ऐप्लिकेशन का इस्तेमाल करने की अनुमति है या नहीं.

GET /appsmarket/v2/userLicense/{applicationId}/{userId}

curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/{applicationId}/user2@domain1.com

जवाब का मुख्य भाग

ऐप्लिकेशन सिर्फ़ user2@domain1.com के लिए एडमिन ने इंस्टॉल किया है. इसलिए, रिस्पॉन्स में user2@domain1.com के लिए उपयोगकर्ता का लाइसेंस दिखता है. इसमें enabled, true है और state, ACTIVE है.

{
  "kind": "appsmarket#userLicense",
  "enabled": true,
  "state": "ACTIVE",
  "editionId": "default_edition",
  "customerId": "domain1.com",
  "applicationId": "{APPLICATION_ID}",
  "id": "{USER_LICENSE_ID}",
  "userId": "user2@domain1.com"
}

संगठन के सभी लोगों के लिए ऐप्लिकेशन मिटा दिया जाता है

संगठन के सभी लोगों के लिए ऐप्लिकेशन मिटा दिया गया था. उपयोगकर्ता, user1@domain1.com के पास अब भी ऐप्लिकेशन का ऐक्सेस है, क्योंकि उन्होंने पहले ऐप्लिकेशन को अलग से इंस्टॉल किया था.

userLicense.get अनुरोध

यह अनुरोध, user2@domain1.com के लाइसेंस का स्टेटस पाने के लिए, userLicense.get तरीके को कॉल करता है. साथ ही, यह भी पता लगाता है कि उपयोगकर्ता के पास ऐप्लिकेशन का इस्तेमाल करने की अनुमति है या नहीं.

GET /appsmarket/v2/userLicense/{applicationId}/{userId}

curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/{applicationId}/user2@domain1.com

जवाब का मुख्य भाग

संगठन के सभी सदस्यों के लिए ऐप्लिकेशन मिटा दिया गया था. इसलिए, जवाब में user2@domain1.com के लिए उपयोगकर्ता का लाइसेंस दिखता है. इसमें enabled की जगह false और state की जगह UNLICENSED है. इससे पता चलता है कि इस उपयोगकर्ता के डोमेन के एडमिन ने, इस उपयोगकर्ता को ऐप्लिकेशन के लिए कोई सीट असाइन नहीं की है.

{
  "kind": "appsmarket#userLicense",
  "enabled": false,
  "state": "UNLICENSED",
  "applicationId": "{APPLICATION_ID}",
  "id": "{USER_LICENSE_ID}",
  "userId": "user2@domain1.com"
}

userLicense.get अनुरोध

यह अनुरोध, user1@domain1.com के लाइसेंस की स्थिति जानने के लिए userLicense.get तरीके को कॉल करता है. साथ ही, यह भी पता लगाता है कि उपयोगकर्ता के पास ऐप्लिकेशन का इस्तेमाल करने की अनुमति है या नहीं.

GET /appsmarket/v2/userLicense/{applicationId}/{userId}

curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/{applicationId}/user1@domain1.com

जवाब का मुख्य भाग

user1@domain1.com ने पहले ऐप्लिकेशन को अलग से इंस्टॉल किया था, इसलिए उसके पास अब भी इसका इस्तेमाल करने की अनुमति है. जवाब में उपयोगकर्ता का लाइसेंस दिखता है, जहां enabled true और state ACTIVE है.

{
  "kind": "appsmarket#userLicense",
  "enabled": true,
  "state": "ACTIVE",
  "editionId": "default_edition",
  "customerId": "user1@domain1.com",
  "applicationId": "{APPLICATION_ID}",
  "id": "{USER_LICENSE_ID}",
  "userId": "user1@domain1.com"
}

ऊपर बताई गई सभी कार्रवाइयों से जुड़ी लाइसेंस की सूचनाएं

licenseNotification.list अनुरोध

licenseNotification.list तरीके से अनुरोध करने पर, ऐप्लिकेशन के लिए लाइसेंस से जुड़ी सभी सूचनाएं मिलती हैं.

GET /appsmarket/v2/licenseNotification/{applicationId}

curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/licenseNotification/{applicationId}

जवाब का मुख्य भाग

जवाब में, ऊपर की गई सभी कार्रवाइयों के लिए लाइसेंस की सूचनाएं की सूची दिखती है.

{
  "kind": "appsmarket#licenseNotificationList",
  "notifications": [
    {
      "kind": "appsmarket#licenseNotification",
      "id": "{LICENSE_NOTIFICATION_ID}",
      "applicationId": "{APPLICATION_ID}",
      "customerId": "user1@domain1.com",
      "timestamp": "1641318266998",
      "provisions": [
        {
          "kind": "appsmarket#provisionNotification",
          "editionId": "default_edition",
          "seatCount": "1"
        }
      ]
    },
    {
      "kind": "appsmarket#licenseNotification",
      "id": "{LICENSE_NOTIFICATION_ID}",
      "applicationId": "{APPLICATION_ID}",
      "customerId": "domain1.com",
      "timestamp": "1641318351038",
      "provisions": [
        {
          "kind": "appsmarket#provisionNotification",
          "editionId": "default_edition",
          "seatCount": "-1"
        }
      ]
    },
    {
      "kind": "appsmarket#licenseNotification",
      "id": "{LICENSE_NOTIFICATION_ID}",
      "applicationId": "{APPLICATION_ID}",
      "customerId": "domain1.com",
      "timestamp": "1641318858349",
      "deletes": [
        {
          "kind": "appsmarket#deleteNotification",
          "editionId": "default_edition",
        }
      ]
    },
  ],
  "nextPageToken": "{NEXT_PAGE_TOKEN}"
}