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

इस गाइड में, 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 ने ऐप्लिकेशन इंस्टॉल किया है. इसलिए, जवाब में एक लाइसेंस की सूचना शामिल है. लाइसेंस की सूचना में लाइसेंस उपलब्ध कराने की सूचना शामिल होती है, क्योंकि उपयोगकर्ता1@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 अनुरोध

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

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 अनुरोध

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

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 अनुरोध

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

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 अनुरोध

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

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 अनुरोध

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

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 अनुरोध

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

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}"
}