কাস্টম ব্যবহারকারী ক্ষেত্রগুলি পরিচালনা করুন৷

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

শুরু করার জন্য, আপনার ডোমেইনের জন্য উপযুক্ত কাস্টম ফিল্ডগুলো সংজ্ঞায়িত করতে এক বা একাধিক স্কিমা তৈরি করুন । আপনি বেশ কিছু অ্যাট্রিবিউট নির্দিষ্ট করতে পারেন, যেমন—ফিল্ডের নাম, এর ধরন (স্ট্রিং, বুলিয়ান, ইন্টিজার, ইত্যাদি), এটি একক-মানবিশিষ্ট নাকি বহু-মানবিশিষ্ট, এবং এর মানগুলো আপনার ডোমেইনের যেকোনো ব্যবহারকারী দেখতে পাবে নাকি শুধু প্রশাসক এবং সংশ্লিষ্ট ব্যবহারকারীই দেখতে পাবে।

একবার স্কিমা সংজ্ঞায়িত করা হলে, কাস্টম ফিল্ডগুলো সাধারণ ফিল্ডের মতোই কাজ করে। আপনি আপনার ডোমেইনে ব্যবহারকারীদের আপডেট করার সময় এগুলো সেট করতে পারেন, users.get এবং users.list ব্যবহার করে সেগুলো আনতে পারেন, এবং কাস্টম ফিল্ড অনুসন্ধানও করতে পারেন

ব্যবহারকারীর প্রোফাইলে কাস্টম ফিল্ড সেট করুন

একটি স্কিমা আপডেট বা তৈরি করতে, একটি customSchemas প্রপার্টি তৈরি করুন এবং এটিকে ইউজার রিসোর্সে যুক্ত করুন। customSchemas প্রপার্টির ভিতরে, কাস্টম ফিল্ডগুলিকে স্ট্যান্ডার্ড JSON ফরম্যাটে স্কিমা অনুসারে গ্রুপ করা হয়:

"customSchemas": {
  "schema1": {
    "field1": "value1",
    "field2": [
      { "value": "value2a" },
      { "value": "value2b" },
      ...
    ],
    ...
  },
  "schema2": {
    "field3": "value3",
    ...
  },
  ...
}

একক-মান বিশিষ্ট কাস্টম ফিল্ডগুলি "field1": "value1" এর মতো সাধারণ কী-ভ্যালু পেয়ার হিসেবে সেট করা হয়। একাধিক-মান বিশিষ্ট কাস্টম ফিল্ডগুলি অবজেক্টের অ্যারে হিসেবে সেট করা হয়, যেমন API-এর স্ট্যান্ডার্ড মাল্টি-ভ্যালু ফিল্ড, উদাহরণস্বরূপ addresses এবং phones । এই ভ্যালু অবজেক্টগুলি নিম্নলিখিত কী-গুলি সমর্থন করে:

চাবি
value সংরক্ষণ করার জন্য মানটি আবশ্যক।
type মানের ধরণ, ঐচ্ছিক। সম্ভাব্য মানগুলো হলো:
  • custom
  • home
  • other
  • work
customType মানের নিজস্ব ধরন, ঐচ্ছিক। যখন type custom হিসেবে সেট করা থাকে, তখন এটি অবশ্যই ব্যবহার করতে হবে।

আপডেটের সময় কোনো স্কিমার মধ্যে থাকা কোনো কাস্টম ফিল্ড নির্দিষ্ট করা না থাকলে, সেটি অপরিবর্তিত থাকে। আপডেটের সময় customFields এ যদি স্কিমাটি নিজেই নির্দিষ্ট করা না থাকে, তবে সেই স্কিমার সমস্ত কাস্টম ফিল্ড অপরিবর্তিত থাকে। একটি প্রোফাইল থেকে কোনো কাস্টম ফিল্ড বা কাস্টম স্কিমা মুছে ফেলার জন্য, আপনাকে অবশ্যই সেটিকে স্পষ্টভাবে null সেট করতে হবে:

"schema1": {
  "field1": null
}

JSON অনুরোধ

নীচের উদাহরণে দেওয়া কলটি একজন ব্যবহারকারীকে আপডেট করে এবং employmentData কাস্টম স্কিমার জন্য মান নির্ধারণ করে:

PATCH https://admin.googleapis.com/admin/directory/v1/users/liz@example.com
{
  "customSchemas": {
    "employmentData": {
      "employeeNumber": "123456789",
      "jobFamily": "Engineering",
      "location": "Atlanta",
      "jobLevel": 8,
      "projects": [
        { "value": "GeneGnome" },
        { "value": "Panopticon", "type": "work" },
        { "value": "MegaGene", "type": "custom", "customType": "secret" }
      ]
    }
  }
}

ব্যবহারকারীর প্রোফাইলে কাস্টম ফিল্ডগুলি পড়ুন

users.get বা users.list রিকোয়েস্টে projection প্যারামিটারটি custom বা full এ সেট করে আপনি কোনো ব্যবহারকারীর প্রোফাইলের কাস্টম ফিল্ডগুলো ফেচ করতে পারেন।

ব্যবহারকারীর প্রোফাইলে কাস্টম ফিল্ড অনুসন্ধান করুন

আপনি users.list রিকোয়েস্টে query প্যারামিটার ব্যবহার করে কাস্টম ফিল্ডের মধ্যে সার্চ করতে পারেন। আপনি schemaName.fieldName সিনট্যাক্স ব্যবহার করে কাস্টম ফিল্ডটি রিকোয়েস্ট করবেন। উদাহরণস্বরূপ:

employmentData.projects:"GeneGnome"

এই কোয়েরিটি GeneGnome প্রকল্পে কর্মরত সকল কর্মচারীকে ফেরত দেয়।

employmentData.location="Atlanta" employmentData.jobLevel>=7

আটলান্টায় জব লেভেল ৭-এর উপরের সকল কর্মচারীকে ফেরত দেয়। আরও তথ্যের জন্য, ‘ব্যবহারকারী অনুসন্ধান’ দেখুন।

একটি কাস্টম ব্যবহারকারী স্কিমা তৈরি করুন

আপনার Google Workspace অ্যাকাউন্টের সমস্ত ডোমেইনে একটি কাস্টম ইউজার স্কিমা যোগ করা যেতে পারে। আপনার ডোমেইনগুলিতে একটি কাস্টম ইউজার স্কিমা তৈরি করতে, নিম্নলিখিত POST অনুরোধটি ব্যবহার করুন এবং 'অনুমোদন অনুরোধ' (Authorize requests) অংশে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন। অনুরোধ কোয়েরি স্ট্রিং প্রোপার্টিগুলির জন্য, এপিআই রেফারেন্স (API Reference ) দেখুন।

POST https://admin.googleapis.com/admin/directory/v1/customer/<var>my_customer or customerId</var>/schemas

সমস্ত তৈরির অনুরোধ পূরণের জন্য আপনাকে প্রয়োজনীয় তথ্য জমা দিতে হবে। আপনি যদি ক্লায়েন্ট লাইব্রেরি ব্যবহার করেন, তবে সেগুলি আপনার নির্বাচিত ভাষা থেকে ডেটা অবজেক্টগুলিকে JSON ডেটা ফরম্যাটের অবজেক্টে রূপান্তর করে।

JSON অনুরোধ

নিম্নলিখিত নমুনাটি একটি কাস্টম স্কিমা তৈরির অনুরোধ দেখাচ্ছে। অনুরোধ এবং প্রতিক্রিয়ার প্রোপার্টিগুলোর সম্পূর্ণ তালিকার জন্য, এপিআই রেফারেন্স দেখুন।

{
  "schemaName": "employmentData",
  "fields": [
    {
      "fieldName": "EmployeeNumber",
      "fieldType": "STRING",
      "multiValued": "false"
    },
    {
      "fieldName": "JobFamily",
      "fieldType": "STRING",
      "multiValued": "false"
    }
  ]
}

একটি সফল প্রতিক্রিয়া HTTP 201 স্ট্যাটাস কোডের সাথে নতুন কাস্টম স্কিমার বৈশিষ্ট্যগুলোও ফেরত দেয়।

কাস্টম স্কিমা সীমা

  • একটি অ্যাকাউন্টে সর্বোচ্চ ১০০টি কাস্টম স্কিমা অনুমোদিত।
  • একটি অ্যাকাউন্টে সর্বোচ্চ ১০০টি কাস্টম ফিল্ড রাখা যায়।
  • একক-মান কাস্টম ফিল্ডের ক্ষেত্রে, একটি string ফিল্ডে সর্বাধিক ৫০০টি অক্ষর ব্যবহার করা যায়। একাধিক-মান কাস্টম ফিল্ডের জন্য, অনুমোদিত উপাদানের সংখ্যা নির্ধারিত মানগুলোর আকারের উপর নির্ভর করে। উদাহরণস্বরূপ, আপনি প্রতিটি ১০০ অক্ষরের ১৫০টি মান অথবা প্রতিটি ৫০০ অক্ষরের ৫০টি মান যোগ করতে পারেন।
  • কাস্টম স্কিমা এবং ফিল্ডের নামে অনুমোদিত অক্ষরগুলো হলো অ্যালফানিউমেরিক অক্ষর, আন্ডারস্কোর ( _ ), এবং হাইফেন ( - )।
  • কোনো ফিল্ডের ধরন পরিবর্তন করার অনুমতি নেই।
  • একটি একক-মান ক্ষেত্রকে বহু-মান ক্ষেত্রে পরিণত করা যায়, কিন্তু এর বিপরীত প্রক্রিয়াটি অনুমোদিত নয়।
  • কাস্টম স্কিমা বা ফিল্ডের নাম পরিবর্তন করা সম্ভব নয়।

কাস্টম ব্যবহারকারী স্কিমা আপডেট করুন

একটি কাস্টম স্কিমা আপডেট করতে, নিম্নলিখিত PUT অনুরোধটি ব্যবহার করুন এবং "অনুরোধ অনুমোদন করুন" অংশে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন। schemaKey হতে পারে স্কিমার নাম অথবা অনন্য স্কিমা id । অনুরোধ এবং প্রতিক্রিয়ার বৈশিষ্ট্যগুলির জন্য, এপিআই রেফারেন্স দেখুন।

PUT https://admin.googleapis.com/admin/directory/v1/customer/my_customer or customerId/schemas/schemaKey

JSON অনুরোধ

নিম্নলিখিত উদাহরণে, employmentData স্কিমাটি যখন প্রথম তৈরি করা হয়েছিল তখন এতে একটি JobFamily ফিল্ড ছিল। অনুরোধটি employmentData আপডেট করে এতে শুধুমাত্র একটি EmployeeNumber ফিল্ড যুক্ত করছে:

PUT https://admin.googleapis.com/admin/directory/v1/customer/my_customer/schemas/employmentData
{
  "kind": "admin#directory#schema",
  "schemaId": "dKaYmUwmSZy5lreXyh75hQ==",
  "etag": "\"St7vIdePbbDsQUvvrssynd-6JLg/PKg63GvWb7bnVSNRomd_O-Vi66w\"",
  "schemaName": "employmentData",
  "fields": [
    {
      "kind": "admin#directory#schema#fieldspec",
      "fieldId": "21_B4iQIRY-dIFGFgAX-Og==",
      "etag": "\"St7vIdePbbDsQUvvrssynd-6JLg/LZxiGaz6_N4R40OpKbDhOcy2qiE\"",
      "fieldType": "STRING",
      "fieldName": "EmployeeNumber",
      "multiValued": "false"
    }
  ]
}

সকল আপডেট অনুরোধ পূরণের জন্য আপনাকে প্রয়োজনীয় তথ্য জমা দিতে হবে।

একটি সফল প্রতিক্রিয়ার ফলে একটি HTTP 200 স্ট্যাটাস কোড এবং আপডেট করা স্কিমা রিসোর্স ফেরত আসে।

একটি কাস্টম ব্যবহারকারী স্কিমা পুনরুদ্ধার করুন

একটি কাস্টম স্কিমা পুনরুদ্ধার করতে, নিম্নলিখিত GET অনুরোধটি ব্যবহার করুন এবং " অনুরোধ অনুমোদন করুন" অংশে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন। schemaKey হতে পারে স্কিমার নাম অথবা অনন্য স্কিমা id । অনুরোধ এবং প্রতিক্রিয়ার বৈশিষ্ট্যগুলির জন্য, API রেফারেন্স দেখুন।

GET https://admin.googleapis.com/admin/directory/v1/customer/my_customer or customerId/schemas/schemaKey

একটি সফল প্রতিক্রিয়া কাস্টম স্কিমার প্রোপার্টিগুলোর সাথে একটি HTTP 200 স্ট্যাটাস কোড ফেরত দেয়।

{
  "kind": "admin#directory#schema",
  "schemaId": "dKaYmUwmSZy5lreXyh75hQ==",
  "etag": "\"KYnPjBPqr8knK6v7rpxly9BhNeY/PKg63GvWb7bnVSNRomd_O-Vi66w\"",
  "schemaName": "employmentData",
  "fields": [
    {
      "kind": "admin#directory#schema#fieldspec",
      "fieldId": "21_B4iQIRY-dIFGFgAX-Og==",
      "etag": "\"KYnPjBPqr8knK6v7rpxly9BhNeY/LZxiGaz6_N4R40OpKbDhOcy2qiE\"",
      "fieldType": "STRING",
      "fieldName": "EmployeeNumber"
    },
    {
      "kind": "admin#directory#schema#fieldspec",
      "fieldId": "ZKy0QtoMRy2QlM-4sAsPtQ==",
      "etag": "\"KYnPjBPqr8knK6v7rpxly9BhNeY/jEULI-ZiqywQIHXgc8evEcTE4Cc\"",
      "fieldType": "STRING",
      "fieldName": "JobFamily"
    }
  ]
}

সমস্ত কাস্টম ব্যবহারকারী স্কিমা পুনরুদ্ধার করুন

একই অ্যাকাউন্টের সমস্ত কাস্টম স্কিমা পুনরুদ্ধার করতে, নিম্নলিখিত GET অনুরোধটি ব্যবহার করুন এবং 'অনুরোধ অনুমোদন করুন' অংশে বর্ণিত অনুমোদন অন্তর্ভুক্ত করুন। অনুরোধ এবং প্রতিক্রিয়ার বৈশিষ্ট্যগুলির জন্য, এপিআই রেফারেন্স দেখুন।

GET https://admin.googleapis.com/admin/directory/v1/customer/my_customer or customerId/schemas

একটি সফল প্রতিক্রিয়া অ্যাকাউন্টের জন্য কাস্টম স্কিমাসহ একটি HTTP 200 স্ট্যাটাস কোড ফেরত দেয়।

{
  "kind": "admin#directory#schemas",
  "etag": "\"KYnPjBPqr8knK6v7rpxly9BhNeY/iJ1eWn5AKuR-xTdwH_2IBlvSSKo\"",
  "schemas": [
    {
      "kind": "admin#directory#schema",
      "schemaId": "dKaYmUwmSZy5lreXyh75hQ==",
      "etag": "\"KYnPjBPqr8knK6v7rpxly9BhNeY/PKg63GvWb7bnVSNRomd_O-Vi66w\"",
      "schemaName": "employmentData",
      "fields": [
        {
          "kind": "admin#directory#schema#fieldspec",
          "fieldId": "21_B4iQIRY-dIFGFgAX-Og==",
          "etag": "\"KYnPjBPqr8knK6v7rpxly9BhNeY/LZxiGaz6_N4R40OpKbDhOcy2qiE\"",
          "fieldType": "STRING",
          "fieldName": "EmployeeNumber"
        },
        {
          &quot;kind": "admin#directory#schema#fieldspec",
          "fieldId": "ZKy0QtoMRy2QlM-4sAsPtQ==",
          "etag": "\"KYnPjBPqr8knK6v7rpxly9BhNeY/jEULI-ZiqywQIHXgc8evEcTE4Cc\"",
          "fieldType": "STRING",
          "fieldName": "JobFamily"
        }
      ]
    }
  ]
}