Dokumen ini menjelaskan cara administrator tingkat akun dan reseller dapat menggunakan Enterprise License Manager API untuk mengelola penetapan lisensi pengguna. Setelah lisensi SKU produk akun Anda diaktifkan dan pengguna telah dibuat, gunakan Enterprise License Manager API untuk menetapkan, memperbarui, mengambil, dan menghapus lisensi untuk pengguna akun Anda.
Dalam versi ini, Enterprise License Manager API digunakan oleh administrator akun dan reseller. Administrator
yang didelegasikan dengan hak istimewa License Management
juga dapat menggunakan Enterprise License Manager API.
Catatan: Enterprise License Manager API digunakan oleh pelanggan Google. Untuk mendapatkan informasi tentang cara developer aplikasi pihak ketiga Google mengelola lisensi, lihat Google Workspace Marketplace API.
Enterprise License Manager API didasarkan pada pendekatan desain Representational State Transfer (RESTful) untuk layanan web.
Mengelola Lisensi
Tetapkan lisensi
Sebelum operasi ini, pelanggan atau reseller telah memesan lisensi produk Google dan telah membuat pengguna. Untuk menetapkan salah satu lisensi produk kepada pengguna tersebut, gunakan permintaan HTTP POST
berikut. Sertakan header Authorization
seperti yang dijelaskan dalam Mengizinkan permintaan. Untuk ID produk dan SKU, lihat Produk dan SKU yang tersedia di API:
POST https://www.googleapis.com/apps/licensing/v1/product/productId/sku/skuId/user
Catatan: Pengguna dapat diberi lisensi untuk berbagai produk Google. Namun, pengguna hanya diberi satu lisensi SKU per produk dalam satu waktu. Dengan menggunakan API, lisensi SKU pengguna dapat ditetapkan ulang ke lisensi SKU lain dalam produk.
Contoh ini menetapkan SKU Google-Drive-storage-20GB kepada pengguna yang alamat email utamanya adalah alex@example.com:
POST https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-20GB/user
Isi permintaan JSON:
{ "userId" : "alex@example.com", }
Respons yang berhasil akan menampilkan kode status HTTP 200
. Untuk mengetahui kemungkinan kode error, lihat Kode error API. Jika berhasil, respons akan menampilkan status penetapan pemberian lisensi dalam format data JSON.
Respons JSON
{
"kind": "licensing#licenseAssignment",
"etags": "etag value",
"selfLink": "https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-20GB/user/alex@example.com",
"userId": "alex@example.com",
"productId": "Google-Drive-storage",
"skuId": "Google-Drive-storage-20GB",
"skuName": "Google Drive storage 20 GB",
"productName": "Google Drive storage"
}
Untuk mengetahui informasi selengkapnya, lihat halaman referensi masukkan metode LicenseAssignments.
Tetapkan ulang SKU produk pengguna dengan SKU berbeda dalam produk yang sama
Untuk menetapkan ulang lisensi pengguna ke SKU lisensi baru dalam produk yang sama, gunakan permintaan HTTP PUT
berikut. API juga mendukung sintaksis patch. Sertakan header Authorization
seperti yang dijelaskan dalam Mengizinkan permintaan. Untuk ID produk dan SKU, lihat Produk dan SKU yang tersedia di API:
PUT https://www.googleapis.com/apps/licensing/v1/product/productId/sku/the current skuId/user/user's email
Contoh ini memperbarui SKU Google-Drive-storage-20 GB saat ini dengan Google-Drive-storage-50 GB. SKU lisensi yang sekarang ada di URI permintaan dan SKU lisensi yang baru ada di isi permintaan:
PUT https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-20GB/user/alex@example.com
Isi permintaan JSON memiliki :
{
"kind": "licensing#licenseAssignment",
"etags": "etag value",
"selfLink": "https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-50GB/user/alex@example.com",
"userId": "alex@example.com",
"productId": "Google-Drive-storage",
"skuId": "Google-Drive-storage-50GB",
"skuName": "Google Drive storage 50 GB",
"productName": "Google Drive storage"
}
Respons yang berhasil akan menampilkan kode status HTTP 200
. Untuk mengetahui kemungkinan kode error, lihat Kode error API. Jika berhasil, respons akan menampilkan status penetapan lisensi dalam format data JSON.
Respons JSON
{
"kind": "licensing#licenseAssignment",
"etags": "etag value",
"selfLink": "https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-50GB/user/alex@example.com",
"userId": "alex@example.com",
"productId": "Google-Drive-storage",
"skuId": "Google-Drive-storage-50GB",
"skuName": "Google Drive storage 50 GB",
"productName": "Google Drive storage"
}
Untuk mengetahui informasi selengkapnya, lihat halaman referensi metode update dan metode patch LicenseAssignments.
Mengambil semua pengguna yang diberi lisensi untuk produk tertentu
Untuk mendapatkan semua lisensi pengguna bagi produk tertentu, gunakan permintaan HTTP GET
berikut. Sertakan header Authorization
seperti yang dijelaskan dalam Mengizinkan permintaan. String kueri customerId
adalah nama domain primer pelanggan. String kueri maxResults
menentukan jumlah entri lisensi pengguna yang ditampilkan dalam respons API:
GET https://www.googleapis.com/apps/licensing/v1/product/productId/users?customerId=primary domain name&maxResults=max results per page
Untuk ID produk dan SKU, lihat Produk dan SKU yang tersedia di API.
Contoh ini mencantumkan halaman pertama hasil untuk semua pengguna di domain example.com yang diberi lisensi untuk produk penyimpanan Google-Drive:
GET https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/users?customerId=example.com&maxResults=2
Respons yang berhasil akan menampilkan kode status HTTP 200
. Untuk mengetahui kemungkinan kode error, lihat Kode error API. Jika berhasil, respons akan menampilkan daftar pemberian lisensi dalam format JSON.
Respons JSON
{ "kind" : "licensing#licenseAssignmentList", "etag": "etag value", "nextPageToken" : "the next page token value", "items": [ { "kind": "licensing#licenseAssignment", "etags": "etag value", "selfLink": "https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-50GB/user/alex@example.com", "userId": "alex@example.com", "productId": "Google-Drive-storage", "skuId": "Google-Drive-storage-50GB", "skuName": "Google Drive storage 50 GB", "productName": "Google Drive storage" }, { "kind": "licensing#licenseAssignment", "etags": "etag value", "selfLink": "https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-200GB/user/keshav@example.com", "userId": "keshav@example.com", "productId": "Google-Drive-storage", "skuId": "Google-Drive-storage-200GB", "skuName": "Google Drive storage 200 GB", "productName": "Google Drive storage" }, ... }
Untuk mengetahui informasi selengkapnya, lihat halaman referensi metode listForProduct LicenseAssignments.
Mengambil semua pengguna yang ditetapkan lisensi untuk SKU produk tertentu
Untuk mendapatkan daftar semua pengguna yang memiliki lisensi atas SKU produk tertentu, gunakan permintaan HTTP GET
berikut. Sertakan header Authorization
seperti yang dijelaskan dalam Mengizinkan permintaan. String kueri customerId
adalah nama domain primer pelanggan. String kueri maxResults
menentukan jumlah entri pengguna yang ditampilkan dalam respons API:
GET https://www.googleapis.com/apps/licensing/v1/product/productId/sku/skuId/users?customerId=primary domain name&maxResults=max results per response page
Untuk ID produk dan SKU, lihat Produk dan SKU yang tersedia di API
Contoh ini menampilkan halaman pertama dari semua pengguna di domain example.com yang diberi lisensi SKU Google-Drive-storage-200 GB. Responsnya mencantumkan dua entri pengguna per halaman:
GET https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-200GB/users?customerId=example.com&maxResults=2
Respons yang berhasil akan menampilkan kode status HTTP 200
. Untuk mengetahui kemungkinan kode error, lihat Kode error API. Jika berhasil, respons akan menampilkan daftar pemberian lisensi dalam format JSON.
Respons JSON
{ "kind" : "licensing#licenseAssignmentList", "etag": "etag value", "nextPageToken" : "next page token's value", "items": [ { "kind": "licensing#licenseAssignment", "etags": "etag value", "selfLink": "https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-200GB/user/alex@example.com", "userId": "alex@example.com", "productId": "Google-Drive-storage", "skuId": "Google-Drive-storage-200GB", "skuName": "Google Drive storage 200 GB", "productName": "Google Drive storage" }, { "kind": "licensing#licenseAssignment", "etags": "etag value", "selfLink": "https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-200GB/user/mary@example.com", "userId": "mary@example.com", "productId": "Google-Drive-storage", "skuId": "Google-Drive-storage-200GB", "skuName": "Google Drive storage 200 GB", "productName": "Google Drive storage" }, ... }
Untuk mengetahui informasi selengkapnya, lihat halaman referensi metode ForListAndSku LicenseAssignments.
Mengambil lisensi pengguna tertentu berdasarkan SKU produk
Untuk mendapatkan lisensi pengguna tertentu menurut SKU produk, gunakan permintaan HTTP GET
berikut. Sertakan header Authorization
seperti yang dijelaskan dalam Mengizinkan permintaan. Untuk ID produk dan SKU, lihat Produk dan SKU yang tersedia di API:
GET https://www.googleapis.com/apps/licensing/v1/product/productId/sku/skuId/user/userId
Contoh ini mendapatkan SKU produk penyimpanan Google Drive 50 GB untuk pengguna yang userId
-nya adalah alex@example.com:
GET https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-50GB/user/alex@example.com
Jika pengguna memiliki lisensi ini, respons tersebut berhasil dan merupakan kode status HTTP 200
. Untuk mengetahui kemungkinan kode error, lihat Kode error API. Jika berhasil, respons akan menampilkan lisensi pengguna dalam format JSON.
Respons JSON
{
"kind": "licensing#licenseAssignment",
"etag": "etag value",
"selfLink": "https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-50GB/user/alex@example.com",
"userId": "keshav@example.com",
"productId": "Google-Drive-storage",
"skuId": "Google-Drive-storage-50GB",
"skuName": "Google Drive storage 50 GB",
"productName": "Google Drive storage"
}
Untuk mengetahui informasi selengkapnya, lihat halaman referensi mendapatkan metode LicenseAssignments.
Menghapus lisensi
Untuk membatalkan penetapan lisensi dari pengguna, gunakan permintaan HTTP DELETE
berikut. Sertakan header Authorization
seperti yang dijelaskan dalam Mengizinkan permintaan. Untuk ID produk dan SKU, lihat Produk dan SKU yang tersedia di API:
DELETE https://www.googleapis.com/apps/licensing/v1/product/productId/sku/skuId/user/userId
Contoh lisensi Google-Drive-storage-50GB ini dibatalkan penetapannya dari pengguna yang userId
-nya adalah alex@example.com:
DELETE https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-50GB/user/alex@example.com
Respons yang berhasil akan menampilkan kode status HTTP 200
. Untuk mengetahui kemungkinan kode error, lihat Kode error API.
Untuk mengetahui informasi selengkapnya, lihat halaman referensi menghapus metode LicenseAssignments.
Kode error
Jika permintaan tidak berhasil, respons memiliki penjelasan singkat tentang error tersebut:
Kode Error | Deskripsi |
---|---|
400 | Permintaan Tidak Valid - Email pengguna tidak valid. |
400 | Permintaan Tidak Valid - SKU/produk tidak ada. |
401 | Aktor tidak memiliki kredensial untuk memanggil API ini. |
404 | Jika pengguna tidak memiliki lisensi ini, respons akan memiliki kode error 'tidak ditemukan'. |
412 | Prasyarat belum terpenuhi. Untuk detail tentang error ini, periksa kolom message . Contoh:
|
503 | Layanan Pengelola Lisensi tidak tersedia. |