من خلال تقديم أمثلة على الطلبات والردود من Google Workspace Marketplace API، توضّح هذه المستندات كيفية الحصول على تفاصيل حول تثبيت التطبيقات وترخيصها في Google Workspace Marketplace.
يثبِّت المشرف التطبيق
ثبَّت مشرف cymbalgroup.com التطبيق لجميع المستخدمين في المؤسسة.
طلب userLicense.get
يستدعي هذا الطلب طريقة userLicense.get للحصول على حالة الترخيص
للمستخدم user1@cymbalgroup.com من أجل تحديد ما إذا كان لديه إذن باستخدام
التطبيق.
GET /appsmarket/v2/userLicense/{applicationId}/{userId}
curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/APPLICATION_ID/user1@cymbalgroup.comنص الاستجابة
بما أنّ cymbalgroup.com قد ثبّت التطبيق، يعرض الردّ مورد
userLicense الخاص بالمستخدم user1@cymbalgroup.com. تم ضبط الحقل enabled في المورد userLicense على true، ما يشير إلى أنّ مشرف النطاق في cymbalgroup.com قد فعّل التطبيق لهذا النطاق، وتم ضبط الحقل state على ACTIVE، ما يشير إلى أنّ user1@cymbalgroup.com لديه ترخيص صالح ويجب السماح له باستخدام التطبيق.
{
"kind": "appsmarket#userLicense",
"enabled": true,
"state": "ACTIVE",
"editionId": "default_edition",
"customerId": "user1@cymbalgroup.com",
"applicationId": "APPLICATION_ID",
"id": "USER_LICENSE_ID",
"userId": "user1@cymbalgroup.com"
}
طلب customerLicense.get
يستدعي هذا الطلب الطريقة customerLicense.get للحصول على حالة الترخيص الخاصة بموقع cymbalgroup.com الإلكتروني لتحديد ما إذا كان بإمكانهم الوصول إلى التطبيق.
GET /appsmarket/v2/customerLicense/{applicationId}/{customerId}
curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/customerLicense/APPLICATION_ID/cymbalgroup.comنص الاستجابة
يعرض الردّ مورد customerLicense الخاص بموقع cymbalgroup.com
حيث تم ضبط الحقل
state
على ACTIVE، ما يشير إلى أنّ العميل لديه ترخيص صالح.
{
"kind": "appsmarket#customerLicense",
"id": "CUSTOMER_LICENSE_ID",
"applicationId": "APPLICATION_ID",
"customerId": "cymbalgroup.com",
"state": "ACTIVE",
"editions": [
{
"editionId": "default_edition",
"seatCount": -1
}
]
}
لا يمكن تثبيت التطبيق إلا من قِبل المشرف لوحدة تنظيمية خاصة بمستخدم معيّن
لا يمكن الآن تثبيت التطبيق إلا من قِبل المشرفين في الوحدة التنظيمية الخاصة بالمستخدم user2@cymbalgroup.com. لم يعُد التطبيق مثبّتًا من قِبل المشرف لجميع المستخدمين في المؤسسة.
طلب userLicense.get
يستدعي هذا الطلب طريقة userLicense.get للحصول على حالة الترخيص
للمستخدم user3@cymbalgroup.com من أجل تحديد ما إذا كان لديه إذن باستخدام
التطبيق.
GET /appsmarket/v2/userLicense/{applicationId}/{userId}
curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/APPLICATION_ID/user3@cymbalgroup.comنص الاستجابة
بما أنّ التطبيق مثبّت من قِبل المشرف فقط للمستخدم user2@cymbalgroup.com،
يعرض الردّ مورد userLicense للمستخدم user3@cymbalgroup.com
يتم فيه ضبط الحقل enabled على false، ما يشير إلى أنّ مشرف النطاق
cymbalgroup.com لم يفعّل التطبيق لهذا النطاق،
ويتم ضبط الحقل state على ACTIVE، ما يشير إلى أنّ المستخدم لديه
ترخيص صالح ويجب السماح له باستخدام التطبيق.
{
"kind": "appsmarket#userLicense",
"enabled": false,
"state": "ACTIVE",
"editionId": "default_edition",
"customerId": "cymbalgroup.com",
"applicationId": "APPLICATION_ID",
"id": "USER_LICENSE_ID",
"userId": "user3@cymbalgroup.com"
}
طلب userLicense.get
يستدعي هذا الطلب الطريقة userLicense.get للحصول على حالة الترخيص الخاصة بالمستخدم user2@cymbalgroup.com لتحديد ما إذا كان لديه إذن باستخدام التطبيق.
GET /appsmarket/v2/userLicense/{applicationId}/{userId}
curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/APPLICATION_ID/user2@cymbalgroup.comنص الاستجابة
بما أنّ التطبيق مثبَّت من قِبل المشرف فقط للمستخدم user2@cymbalgroup.com،
سيعرض الردّ المورد userLicense للمستخدم user2@cymbalgroup.com
الذي تم ضبط الحقل enabled فيه على true والحقل state على
ACTIVE.
{
"kind": "appsmarket#userLicense",
"enabled": true,
"state": "ACTIVE",
"editionId": "default_edition",
"customerId": "cymbalgroup.com",
"applicationId": "APPLICATION_ID",
"id": "USER_LICENSE_ID",
"userId": "user2@cymbalgroup.com"
}
يتم حذف التطبيق لجميع المستخدمين في المؤسسة
على الرغم من حذف التطبيق لجميع المستخدمين في المؤسسة، لا يزال بإمكان user1@cymbalgroup.com الوصول إليه لأنّه سبق له تثبيته بشكل فردي.
طلب userLicense.get
يستدعي هذا الطلب الطريقة userLicense.get للحصول على حالة الترخيص الخاصة بالمستخدم user2@cymbalgroup.com لتحديد ما إذا كان لديه إذن باستخدام التطبيق.
GET /appsmarket/v2/userLicense/{applicationId}/{userId}
curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/APPLICATION_ID/user2@cymbalgroup.comنص الاستجابة
بما أنّه تم حذف التطبيق لجميع المستخدمين في المؤسسة، يعرض الردّ مورد userLicense للمستخدم user2@cymbalgroup.com، مع ضبط الحقل enabled على false والحقل state على UNLICENSED، ما يشير إلى أنّ مشرف نطاق هذا المستخدم لم يخصّص ترخيصًا للتطبيق لهذا المستخدم.
{
"kind": "appsmarket#userLicense",
"enabled": false,
"state": "UNLICENSED",
"applicationId": "APPLICATION_ID",
"id": "USER_LICENSE_ID",
"userId": "user2@cymbalgroup.com"
}
طلب userLicense.get
يستدعي هذا الطلب طريقة userLicense.get للحصول على حالة الترخيص
للمستخدم user1@cymbalgroup.com من أجل تحديد ما إذا كان لديه إذن باستخدام
التطبيق.
GET /appsmarket/v2/userLicense/{applicationId}/{userId}
curl -H "Authorization: Bearer {TOKEN}" https://appsmarket.googleapis.com/appsmarket/v2/userLicense/APPLICATION_ID/user1@cymbalgroup.comنص الاستجابة
بما أنّ user1@cymbalgroup.com سبق له تثبيت التطبيق بشكل فردي، سيظل لديه إذن باستخدامه. تعرض الاستجابة المورد userLicense الذي تم ضبط الحقل enabled فيه على true والحقل state على ACTIVE.
{
"kind": "appsmarket#userLicense",
"enabled": true,
"state": "ACTIVE",
"editionId": "default_edition",
"customerId": "user1@cymbalgroup.com",
"applicationId": "APPLICATION_ID",
"id": "USER_LICENSE_ID",
"userId": "user1@cymbalgroup.com"
}