এন্টারপ্রাইজ লাইসেন্স ম্যানেজার API: বিকাশকারীর গাইড

এই নথিটি বর্ণনা করে কিভাবে অ্যাকাউন্ট-স্তরের এবং রিসেলার অ্যাডমিনিস্ট্রেটররা এন্টারপ্রাইজ লাইসেন্স ম্যানেজার API ব্যবহার করে ব্যবহারকারীদের লাইসেন্স অ্যাসাইনমেন্ট পরিচালনা করতে পারে। একবার আপনার অ্যাকাউন্টের পণ্য SKU লাইসেন্সগুলি সক্ষম হয়ে গেলে এবং আপনার ব্যবহারকারীরা তৈরি হয়ে গেলে, আপনার অ্যাকাউন্টের ব্যবহারকারীদের জন্য লাইসেন্স বরাদ্দ, আপডেট, পুনরুদ্ধার এবং মুছে ফেলতে এন্টারপ্রাইজ লাইসেন্স ম্যানেজার API ব্যবহার করুন।

এই সংস্করণে, এন্টারপ্রাইজ লাইসেন্স ম্যানেজার API অ্যাকাউন্ট এবং রিসেলার অ্যাডমিনিস্ট্রেটরদের দ্বারা ব্যবহার করা হয়। License Management সুবিধা সহ অর্পিত প্রশাসকরা এন্টারপ্রাইজ লাইসেন্স ম্যানেজার API ব্যবহার করতে পারেন।

দ্রষ্টব্য: এন্টারপ্রাইজ লাইসেন্স ম্যানেজার API একজন Google গ্রাহক ব্যবহার করেন। Google থার্ড-পার্টি অ্যাপ্লিকেশন ডেভেলপাররা কীভাবে লাইসেন্স ম্যানেজ করে সে সম্পর্কে তথ্যের জন্য, Google Workspace Marketplace API দেখুন।

এন্টারপ্রাইজ লাইসেন্স ম্যানেজার API ওয়েব পরিষেবাগুলিতে প্রতিনিধিত্বমূলক স্টেট ট্রান্সফার (RESTful) ডিজাইন পদ্ধতির উপর ভিত্তি করে।

ম্যানেজিং লাইসেন্স

একটি লাইসেন্স বরাদ্দ করুন

এই ক্রিয়াকলাপের পূর্বে, গ্রাহক বা রিসেলার Google পণ্য লাইসেন্সের অর্ডার দিয়েছেন এবং ব্যবহারকারী তৈরি করেছেন৷ এই ব্যবহারকারীকে এই পণ্য লাইসেন্সগুলির মধ্যে একটি বরাদ্দ করতে, নিম্নলিখিত POST HTTP অনুরোধটি ব্যবহার করুন৷ অনুমোদনের অনুরোধে বর্ণিত Authorization শিরোনামটি অন্তর্ভুক্ত করুন। পণ্য এবং SKU আইডিগুলির জন্য, API-এর উপলব্ধ পণ্য এবং SKUগুলি দেখুন:

POST https://www.googleapis.com/apps/licensing/v1/product/productId/sku/skuId/user

দ্রষ্টব্য: একজন ব্যবহারকারীকে বিভিন্ন Google পণ্যের বিস্তৃত পরিসরের জন্য লাইসেন্স বরাদ্দ করা যেতে পারে। কিন্তু একজন ব্যবহারকারীকে একবারে প্রতি পণ্যের জন্য শুধুমাত্র একটি SKU লাইসেন্স দেওয়া হয়। API ব্যবহার করে, একজন ব্যবহারকারীর SKU লাইসেন্স পণ্যের মধ্যে একটি ভিন্ন SKU লাইসেন্সে পুনরায় বরাদ্দ করা যেতে পারে।

এই উদাহরণটি সেই ব্যবহারকারীকে Google-Drive-storage-20GB SKU বরাদ্দ করে যার প্রাথমিক ইমেল ঠিকানা হল alex@example.com:

POST https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-20GB/user

JSON অনুরোধের বডি:

{
  "userId" : "alex@example.com",
}

একটি সফল প্রতিক্রিয়া একটি 200 HTTP স্ট্যাটাস কোড প্রদান করে। সম্ভাব্য ত্রুটি কোডগুলির জন্য, API এর ত্রুটি কোডগুলি দেখুন৷ সফল হলে, প্রতিক্রিয়া JSON ডেটা বিন্যাসে লাইসেন্সিং অ্যাসাইনমেন্ট স্ট্যাটাস প্রদান করে।

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

আরও তথ্যের জন্য, লাইসেন্স অ্যাসাইনমেন্ট সন্নিবেশ পদ্ধতির রেফারেন্স পৃষ্ঠাটি দেখুন।

একই পণ্যে একটি ভিন্ন SKU সহ ব্যবহারকারীর পণ্য SKU পুনরায় বরাদ্দ করুন৷

একই পণ্যের মধ্যে একটি নতুন লাইসেন্স SKU-তে ব্যবহারকারীর লাইসেন্স পুনরায় বরাদ্দ করতে, নিম্নলিখিত PUT HTTP অনুরোধটি ব্যবহার করুন৷ এপিআই প্যাচ সিনট্যাক্স সমর্থন করে। অনুমোদনের অনুরোধে বর্ণিত Authorization শিরোনামটি অন্তর্ভুক্ত করুন। পণ্য এবং SKU আইডিগুলির জন্য, API-এর উপলব্ধ পণ্য এবং SKUগুলি দেখুন:

PUT https://www.googleapis.com/apps/licensing/v1/product/productId/sku/the current skuId/user/user's email

এই উদাহরণটি বর্তমান Google-ড্রাইভ-স্টোরেজ-20GB SKU-কে Google-ড্রাইভ-স্টোরেজ-50GB-এর সাথে আপডেট করে। বর্তমান লাইসেন্স SKU অনুরোধের URI-তে রয়েছে এবং নতুন লাইসেন্স SKU অনুরোধের অংশে রয়েছে:

PUT https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-20GB/user/alex@example.com

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

একটি সফল প্রতিক্রিয়া একটি 200 HTTP স্ট্যাটাস কোড প্রদান করে। সম্ভাব্য ত্রুটি কোডগুলির জন্য, API এর ত্রুটি কোডগুলি দেখুন৷ সফল হলে, প্রতিক্রিয়া JSON ডেটা বিন্যাসে লাইসেন্স অ্যাসাইনমেন্ট স্ট্যাটাস প্রদান করে।

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

আরও তথ্যের জন্য, লাইসেন্স অ্যাসাইনমেন্ট আপডেট পদ্ধতি এবং প্যাচ পদ্ধতির রেফারেন্স পৃষ্ঠাগুলি দেখুন।

একটি নির্দিষ্ট পণ্যের জন্য বরাদ্দকৃত সমস্ত ব্যবহারকারীদের লাইসেন্স পুনরুদ্ধার করুন

একটি নির্দিষ্ট পণ্যের জন্য সমস্ত ব্যবহারকারীর লাইসেন্স পেতে, নিম্নলিখিত GET HTTP অনুরোধটি ব্যবহার করুন। অনুমোদনের অনুরোধে বর্ণিত Authorization শিরোনামটি অন্তর্ভুক্ত করুন। customerId ক্যোয়ারী স্ট্রিং হল গ্রাহকের প্রাথমিক ডোমেইন নাম। maxResults ক্যোয়ারী স্ট্রিং নির্ধারণ করে কতগুলি ব্যবহারকারীর লাইসেন্স এন্ট্রি API এর প্রতিক্রিয়াতে ফেরত দেওয়া হবে:

GET https://www.googleapis.com/apps/licensing/v1/product/productId/users?customerId=primary domain name&maxResults=max results per page

পণ্য এবং SKU আইডিগুলির জন্য, API-এর উপলব্ধ পণ্য এবং SKUগুলি দেখুন৷

এই উদাহরণটি Google-ড্রাইভ-স্টোরেজ পণ্যের জন্য example.com ডোমেনের নির্ধারিত লাইসেন্সের সমস্ত ব্যবহারকারীর ফলাফলের প্রথম পৃষ্ঠা তালিকাভুক্ত করে:

GET https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/users?customerId=example.com&maxResults=2

একটি সফল প্রতিক্রিয়া একটি 200 HTTP স্ট্যাটাস কোড প্রদান করে। সম্ভাব্য ত্রুটি কোডগুলির জন্য, API এর ত্রুটি কোডগুলি দেখুন৷ সফল হলে, প্রতিক্রিয়া JSON ফর্ম্যাটে লাইসেন্সিং তালিকা ফেরত দেয়।

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

আরও তথ্যের জন্য, লাইসেন্স অ্যাসাইনমেন্ট তালিকা ফর পণ্য পদ্ধতির রেফারেন্স পৃষ্ঠাটি দেখুন।

একটি নির্দিষ্ট পণ্য SKU-এর জন্য নির্ধারিত সমস্ত ব্যবহারকারীদের লাইসেন্স পুনরুদ্ধার করুন

একটি নির্দিষ্ট পণ্য SKU-এর লাইসেন্স সহ সমস্ত ব্যবহারকারীর তালিকা পেতে, নিম্নলিখিত GET HTTP অনুরোধটি ব্যবহার করুন৷ অনুমোদনের অনুরোধে বর্ণিত Authorization শিরোনামটি অন্তর্ভুক্ত করুন। customerId ক্যোয়ারী স্ট্রিং হল গ্রাহকের প্রাথমিক ডোমেইন নাম। maxResults ক্যোয়ারী স্ট্রিং নির্ধারণ করে কতগুলি ব্যবহারকারীর এন্ট্রি API এর প্রতিক্রিয়াতে ফেরত দেওয়া হবে:

GET https://www.googleapis.com/apps/licensing/v1/product/productId/sku/skuId/users?customerId=primary domain name&maxResults=max results per response page

পণ্য এবং SKU আইডিগুলির জন্য, API-এর উপলব্ধ পণ্য এবং SKUগুলি দেখুন৷

Google-Drive-storage-200GB SKU-এর জন্য একটি লাইসেন্স বরাদ্দ করা example.com ডোমেনের সমস্ত ব্যবহারকারীর প্রথম পৃষ্ঠাটি এই উদাহরণটি প্রদান করে। প্রতিক্রিয়া প্রতি পৃষ্ঠায় দুটি ব্যবহারকারীর এন্ট্রি তালিকাভুক্ত করে:

GET https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-200GB/users?customerId=example.com&maxResults=2

একটি সফল প্রতিক্রিয়া একটি 200 HTTP স্ট্যাটাস কোড প্রদান করে। সম্ভাব্য ত্রুটি কোডগুলির জন্য, API এর ত্রুটি কোডগুলি দেখুন৷ সফল হলে, প্রতিক্রিয়া JSON ফর্ম্যাটে লাইসেন্সিং তালিকা ফেরত দেয়।

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

আরও তথ্যের জন্য, লাইসেন্স অ্যাসাইনমেন্ট তালিকা ফরপ্রডাক্টএন্ডস্কু পদ্ধতির রেফারেন্স পৃষ্ঠাটি দেখুন।

পণ্য SKU দ্বারা একটি নির্দিষ্ট ব্যবহারকারীর লাইসেন্স পুনরুদ্ধার করুন

পণ্য SKU দ্বারা একটি নির্দিষ্ট ব্যবহারকারীর লাইসেন্স পেতে, নিম্নলিখিত GET HTTP অনুরোধটি ব্যবহার করুন৷ অনুমোদনের অনুরোধে বর্ণিত Authorization শিরোনামটি অন্তর্ভুক্ত করুন। পণ্য এবং SKU আইডিগুলির জন্য, API-এর উপলব্ধ পণ্য এবং SKUগুলি দেখুন:

GET https://www.googleapis.com/apps/licensing/v1/product/productId/sku/skuId/user/userId

এই উদাহরণটি সেই ব্যবহারকারীর জন্য Google ড্রাইভ স্টোরেজ 50GB পণ্য SKU পায় যার userId হল alex@example.com:

GET https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-50GB/user/alex@example.com

যদি ব্যবহারকারীর কাছে এই লাইসেন্স থাকে তবে এটি একটি সফল প্রতিক্রিয়া এবং একটি 200 HTTP স্ট্যাটাস কোড । সম্ভাব্য ত্রুটি কোডগুলির জন্য, API এর ত্রুটি কোডগুলি দেখুন৷ সফল হলে, প্রতিক্রিয়া JSON ফর্ম্যাটে ব্যবহারকারীর লাইসেন্স ফেরত দেয়।

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

আরও তথ্যের জন্য, লাইসেন্স অ্যাসাইনমেন্টস মেথড রেফারেন্স পৃষ্ঠা দেখুন।

একটি লাইসেন্স মুছুন

একজন ব্যবহারকারীর কাছ থেকে একটি লাইসেন্স আনঅ্যাসাইন করতে, নিম্নলিখিত DELETE HTTP অনুরোধটি ব্যবহার করুন৷ অনুমোদনের অনুরোধে বর্ণিত Authorization শিরোনামটি অন্তর্ভুক্ত করুন। পণ্য এবং SKU আইডিগুলির জন্য, API-এর উপলব্ধ পণ্য এবং SKUগুলি দেখুন:

DELETE https://www.googleapis.com/apps/licensing/v1/product/productId/sku/skuId/user/userId

এই উদাহরণটি Google-ড্রাইভ-স্টোরেজ-50GB লাইসেন্সটি সেই ব্যবহারকারীর কাছ থেকে আনঅ্যাসাইন করা হয়েছে যার userId হল alex@example.com:

DELETE https://www.googleapis.com/apps/licensing/v1/product/Google-Drive-storage/sku/Google-Drive-storage-50GB/user/alex@example.com

একটি সফল প্রতিক্রিয়া একটি 200 HTTP স্ট্যাটাস কোড প্রদান করে। সম্ভাব্য ত্রুটি কোডগুলির জন্য, API এর ত্রুটি কোডগুলি দেখুন৷

আরও তথ্যের জন্য, লাইসেন্স অ্যাসাইনমেন্ট ডিলিট মেথড রেফারেন্স পৃষ্ঠা দেখুন।

ত্রুটি কোড

যদি অনুরোধটি ব্যর্থ হয়, প্রতিক্রিয়াটিতে ত্রুটির একটি সংক্ষিপ্ত ব্যাখ্যা রয়েছে:

ত্রুটি কোড বর্ণনা
400 খারাপ অনুরোধ - ব্যবহারকারীর ইমেল বৈধ নয়।
400 খারাপ অনুরোধ - SKU/পণ্য বিদ্যমান নেই৷
401 অভিনেতার কাছে এই API কল করার জন্য শংসাপত্র নেই৷
404 ব্যবহারকারীর কাছে এই লাইসেন্স না থাকলে, প্রতিক্রিয়াটিতে একটি 'নট ফাউন্ড' ত্রুটি কোড থাকে।
412 একটি পূর্বশর্ত পূরণ করা হয়নি. এই ত্রুটির বিশদ বিবরণের জন্য, message ক্ষেত্রটি পরীক্ষা করুন৷ যেমন:
  • Auto License switching is not allowed.
  • Auto License un-assignment is not allowed.
  • For reassign operations, the new SKU should be different from the old SKU: sku
  • Reassign operation can't be performed on different products: product1, product2
  • Reassign operation can't be performed on different users: user1, user2
  • There aren't enough available licenses for the specified product-SKU pair
  • User already has a license for the specified product and SKU
  • User already has a license of the product, but with a different SKU. To reassign a new SKU for this product, use the 'update' operation.
503 লাইসেন্স ম্যানেজার পরিষেবা উপলব্ধ নেই৷