เอกสารนี้จะแสดงวิธีรับรายละเอียดการติดตั้งและการอนุญาตให้ใช้สิทธิของแอป Google Workspace Marketplace โดยการระบุคำขอและคำตอบตัวอย่างจาก Google Workspace Marketplace API
ผู้ดูแลระบบเป็นผู้ติดตั้งแอปพลิเคชัน
ผู้ดูแลระบบของ 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 ทรัพยากร userLicense
มีฟิลด์ enabled
ตั้งค่าเป็น 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
}
]
}
แอปพลิเคชันนี้เป็นแอปพลิเคชันที่ผู้ดูแลระบบติดตั้งให้หน่วยขององค์กรของผู้ใช้ที่เฉพาะเจาะจงเท่านั้น
ตอนนี้แอปพลิเคชันนี้จะติดตั้งโดยผู้ดูแลระบบสำหรับหน่วยขององค์กร (OU) ของ 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"
}