পুশ বিজ্ঞপ্তি, পুশ বিজ্ঞপ্তি

এই দস্তাবেজটি বর্ণনা করে যে কীভাবে পুশ বিজ্ঞপ্তিগুলি ব্যবহার করতে হয় যা কোনও সংস্থান পরিবর্তনের সময় আপনার অ্যাপ্লিকেশনকে জানায়।

ওভারভিউ

ডিরেক্টরি API পুশ বিজ্ঞপ্তি প্রদান করে যা আপনাকে সম্পদের পরিবর্তনগুলি নিরীক্ষণ করতে দেয়। আপনি আপনার অ্যাপ্লিকেশনের কর্মক্ষমতা উন্নত করতে এই বৈশিষ্ট্যটি ব্যবহার করতে পারেন। এটি আপনাকে অতিরিক্ত নেটওয়ার্ক নির্মূল করতে দেয় এবং তারা পরিবর্তিত হয়েছে কিনা তা নির্ধারণ করতে পোলিং সংস্থানগুলির সাথে জড়িত খরচ গণনা করতে দেয়। যখনই একটি প্রেক্ষিত সম্পদ পরিবর্তিত হয়, ডিরেক্টরি API আপনার অ্যাপ্লিকেশনকে অবহিত করে৷

পুশ বিজ্ঞপ্তিগুলি ব্যবহার করতে, আপনাকে দুটি জিনিস করতে হবে:

  • আপনার রিসিভিং ইউআরএল বা "ওয়েবহুক" কলব্যাক রিসিভার সেট আপ করুন।

    এটি একটি HTTPS সার্ভার যেটি API বিজ্ঞপ্তি বার্তাগুলি পরিচালনা করে যা একটি সংস্থান পরিবর্তনের সময় ট্রিগার হয়।

  • আপনি দেখতে চান প্রতিটি সংস্থান শেষ পয়েন্টের জন্য একটি বিজ্ঞপ্তি চ্যানেল সেট আপ করুন৷

    একটি চ্যানেল বিজ্ঞপ্তি বার্তাগুলির জন্য রাউটিং তথ্য নির্দিষ্ট করে৷ চ্যানেল সেটআপের অংশ হিসাবে, আপনাকে অবশ্যই নির্দিষ্ট URL সনাক্ত করতে হবে যেখানে আপনি বিজ্ঞপ্তি পেতে চান৷ যখনই কোনো চ্যানেলের রিসোর্স পরিবর্তন হয়, তখন ডিরেক্টরি API সেই URL-এ একটি POST অনুরোধ হিসেবে একটি বিজ্ঞপ্তি বার্তা পাঠায়।

বর্তমানে, ডাইরেক্টরি API ব্যবহারকারীদের রিসোর্সে পরিবর্তনের জন্য বিজ্ঞপ্তি সমর্থন করে।

বিজ্ঞপ্তি চ্যানেল তৈরি করুন

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

ঘড়ি অনুরোধ করুন

প্রতিটি দেখার যোগ্য ডিরেক্টরি API সংস্থান নিম্নলিখিত ফর্মের একটি URI-তে একটি সম্পর্কিত watch পদ্ধতি রয়েছে:

https://www.googleapis.com/API_NAME/API_VERSION/RESOURCE_PATH/watch

একটি নির্দিষ্ট সংস্থানের পরিবর্তন সম্পর্কে বার্তাগুলির জন্য একটি বিজ্ঞপ্তি চ্যানেল সেট আপ করতে, সংস্থানের জন্য watch পদ্ধতিতে একটি POST অনুরোধ পাঠান৷

প্রতিটি বিজ্ঞপ্তি চ্যানেল একটি নির্দিষ্ট ব্যবহারকারী এবং একটি নির্দিষ্ট সংস্থান (বা সংস্থানগুলির সেট) উভয়ের সাথেই যুক্ত। একটি watch অনুরোধ সফল হবে না যদি না বর্তমান ব্যবহারকারী বা পরিষেবা অ্যাকাউন্টের মালিকানা থাকে বা এই সংস্থানটি অ্যাক্সেস করার অনুমতি থাকে৷

উদাহরণ

একটি একক ডোমেনের জন্য User সম্পদের জন্য সমস্ত ঘড়ির অনুরোধের সাধারণ ফর্ম রয়েছে:

POST https://admin.googleapis.com/admin/directory/v1/users/watch?domain=domain&event=event
Authorization: Bearer auth_token_for_current_user
Content-Type: application/json

{
  "id": "01234567-89ab-cdef-0123456789ab", // Your channel ID.
  "type": "web_hook",
  "address": "https://mydomain.com/notifications", // Your receiving URL.
  ...
  "token": "target=myApp-myFilesChannelDest", // (Optional) Your channel token.
  "params": {
    "ttl": 3600 // (Optional) Your requested time-to-live for this channel.
  }
}

আপনি যে ডোমেন এবং ইভেন্টের ধরনের বিজ্ঞপ্তি পেতে চান তা নির্দিষ্ট করতে domain এবং event প্যারামিটার ব্যবহার করুন।

গ্রাহকের জন্য ব্যবহারকারী সম্পদের জন্য সমস্ত ঘড়ির অনুরোধের সাধারণ ফর্ম রয়েছে:

POST https://admin.googleapis.com/admin/directory/users/v1/watch?customer=customer&event=event
Authorization: Bearer auth_token_for_current_user
Content-Type: application/json

{
  "id": "01234567-89ab-cdef-0123456789ab", // Your channel ID.
  "type": "web_hook",
  "address": "https://mydomain.com/notifications", // Your receiving URL.
  ...
  "token": "target=myApp-myFilesChannelDest", // (Optional) Your channel token.
  "params": {
    "ttl": 3600 // (Optional) Your requested time-to-live for this channel.
  }
}

গ্রাহকের Google অ্যাকাউন্টের অনন্য আইডি এবং আপনি যে ইভেন্টের জন্য বিজ্ঞপ্তি পেতে চান তার ধরন নির্দিষ্ট করতে customer এবং event প্যারামিটার ব্যবহার করুন।

event সম্ভাব্য মান হল:

  • add : ব্যবহারকারী তৈরি ইভেন্ট
  • delete : ব্যবহারকারী মুছে ফেলা ঘটনা
  • makeAdmin : ব্যবহারকারী প্রশাসক অবস্থা পরিবর্তন ইভেন্ট
  • undelete : ব্যবহারকারী মুছে ফেলা ইভেন্ট
  • update : ব্যবহারকারী আপডেট ইভেন্ট

দ্রষ্টব্য: নিম্নলিখিত উদাহরণগুলি স্পষ্টতার জন্য অনুরোধের মূল অংশটি বাদ দেয়।

mydomain.com ডোমেনের জন্য ব্যবহারকারীর তৈরি ইভেন্টগুলি দেখুন:

POST https://admin.googleapis.com/admin/directory/v1/users/watch?domain=mydomain.com&event=add

গ্রাহক my_customer এর জন্য ব্যবহারকারীর তৈরি ইভেন্ট দেখুন:

POST https://admin.googleapis.com/admin/directory/v1/users/watch?customer=my_customer&event=add

প্রয়োজনীয় বৈশিষ্ট্য

প্রতিটি watch অনুরোধের সাথে, আপনাকে অবশ্যই এই ক্ষেত্রগুলি প্রদান করতে হবে:

  • একটি id সম্পত্তি স্ট্রিং যা আপনার প্রকল্পের মধ্যে এই নতুন বিজ্ঞপ্তি চ্যানেলটিকে অনন্যভাবে সনাক্ত করে। আমরা একটি সর্বজনীন অনন্য শনাক্তকারী ( UUID ) বা অনুরূপ অনন্য স্ট্রিং ব্যবহার করার পরামর্শ দিই৷ সর্বাধিক দৈর্ঘ্য: 64 অক্ষর।

    আপনার সেট করা ID মানটি আপনি এই চ্যানেলের জন্য প্রাপ্ত প্রতিটি বিজ্ঞপ্তি বার্তার X-Goog-Channel-Id HTTP শিরোনামে প্রতিধ্বনিত হয়৷

  • একটি type প্রপার্টি স্ট্রিং মান web_hook সেট করে।

  • একটি address সম্পত্তি স্ট্রিং URL-এ সেট করা হয়েছে যা এই বিজ্ঞপ্তি চ্যানেলের জন্য বিজ্ঞপ্তিগুলি শোনে এবং প্রতিক্রিয়া জানায়৷ এটি আপনার ওয়েবহুক কলব্যাক URL, এবং এটি অবশ্যই HTTPS ব্যবহার করবে৷

    মনে রাখবেন যে আপনার ওয়েব সার্ভারে একটি বৈধ SSL শংসাপত্র ইনস্টল থাকলেই ডিরেক্টরি API এই HTTPS ঠিকানায় বিজ্ঞপ্তি পাঠাতে সক্ষম। অবৈধ শংসাপত্র অন্তর্ভুক্ত:

    • স্ব-স্বাক্ষরিত শংসাপত্র।
    • একটি অবিশ্বস্ত উৎস দ্বারা স্বাক্ষরিত শংসাপত্র।
    • প্রত্যাহার করা হয়েছে যে শংসাপত্র.
    • যে শংসাপত্রগুলির একটি বিষয় রয়েছে যা লক্ষ্য হোস্টনামের সাথে মেলে না৷

ঐচ্ছিক বৈশিষ্ট্য

আপনি আপনার watch অনুরোধের সাথে এই ঐচ্ছিক ক্ষেত্রগুলিও নির্দিষ্ট করতে পারেন:

  • একটি token সম্পত্তি যা চ্যানেল টোকেন হিসাবে ব্যবহার করার জন্য একটি নির্বিচারে স্ট্রিং মান নির্দিষ্ট করে। আপনি বিভিন্ন উদ্দেশ্যে বিজ্ঞপ্তি চ্যানেল টোকেন ব্যবহার করতে পারেন। উদাহরণ স্বরূপ, আপনি টোকেন ব্যবহার করতে পারেন যে প্রতিটি ইনকামিং বার্তা আপনার অ্যাপ্লিকেশন তৈরি করা একটি চ্যানেলের জন্য—বিজ্ঞপ্তিটি স্পুফ করা হচ্ছে না তা নিশ্চিত করতে—অথবা উদ্দেশ্যের ভিত্তিতে আপনার অ্যাপ্লিকেশনের মধ্যে বার্তাটিকে সঠিক গন্তব্যে রুট করতে এই চ্যানেল। সর্বাধিক দৈর্ঘ্য: 256 অক্ষর।

    টোকেনটি X-Goog-Channel-Token HTTP শিরোনামে অন্তর্ভুক্ত করা হয়েছে এই চ্যানেলের জন্য আপনার অ্যাপ্লিকেশন প্রাপ্ত প্রতিটি বিজ্ঞপ্তি বার্তায়।

    আপনি যদি বিজ্ঞপ্তি চ্যানেল টোকেন ব্যবহার করেন, আমরা আপনাকে সুপারিশ করি যে:

    • একটি এক্সটেনসিবল এনকোডিং বিন্যাস ব্যবহার করুন, যেমন URL ক্যোয়ারী প্যারামিটার। উদাহরণ: forwardTo=hr&createdBy=mobile

    • OAuth টোকেনের মতো সংবেদনশীল ডেটা অন্তর্ভুক্ত করবেন না।

  • একটি expiration সম্পত্তি স্ট্রিং একটি ইউনিক্স টাইমস্ট্যাম্প (মিলিসেকেন্ডে) তারিখ এবং সময়ের জন্য সেট করা হয়েছে যখন আপনি নির্দেশিকা API এই বিজ্ঞপ্তি চ্যানেলের জন্য বার্তা পাঠানো বন্ধ করতে চান।

    যদি কোনো চ্যানেলের মেয়াদ শেষ হওয়ার সময় থাকে, তাহলে এই চ্যানেলের জন্য আপনার অ্যাপ্লিকেশন প্রাপ্ত প্রতিটি বিজ্ঞপ্তি বার্তায় এটি X-Goog-Channel-Expiration HTTP হেডার (মানব-পাঠযোগ্য বিন্যাসে) এর মান হিসাবে অন্তর্ভুক্ত করা হয়।

অনুরোধের আরও বিশদ বিবরণের জন্য, API রেফারেন্সে ব্যবহারকারীদের সংস্থানের জন্য watch পদ্ধতিটি পড়ুন।

প্রতিক্রিয়া দেখুন

যদি watch অনুরোধ সফলভাবে একটি বিজ্ঞপ্তি চ্যানেল তৈরি করে, তাহলে এটি একটি HTTP 200 OK স্ট্যাটাস কোড প্রদান করে।

ঘড়ির প্রতিক্রিয়ার মেসেজ বডি আপনার তৈরি করা বিজ্ঞপ্তি চ্যানেল সম্পর্কে তথ্য প্রদান করে, যেমনটি নীচের উদাহরণে দেখানো হয়েছে।

{
  "kind": "api#channel",
  "id": "01234567-89ab-cdef-0123456789ab", // ID you specified for this channel.
  "resourceId": "B4ibMJiIhTjAQd7Ff2K2bexk8G4", // ID of the watched resource.
  "resourceUri": "https://admin.googleapis.com/admin/directory/v1/users?domain=domain&event=event", // Version-specific ID of the watched resource.
  "token": "target=myApp-myFilesChannelDest", // Present only if one was provided.
  "expiration": 1384823632000, // Actual expiration time as Unix timestamp (in ms), if applicable.
}

আপনার অনুরোধের অংশ হিসাবে আপনি যে বৈশিষ্ট্যগুলি পাঠিয়েছেন তা ছাড়াও, ফেরত দেওয়া তথ্যে এই বিজ্ঞপ্তি চ্যানেলে দেখা সংস্থান সনাক্ত করতে resourceId এবং resourceUri অন্তর্ভুক্ত রয়েছে।

আপনি প্রত্যাবর্তিত তথ্যগুলি অন্যান্য বিজ্ঞপ্তি চ্যানেল অপারেশনগুলিতে প্রেরণ করতে পারেন, যেমন আপনি যখন বিজ্ঞপ্তিগুলি পাওয়া বন্ধ করতে চান৷

প্রতিক্রিয়া সম্পর্কে আরও বিশদ বিবরণের জন্য, API রেফারেন্সে ব্যবহারকারীদের সংস্থানের জন্য watch পদ্ধতিটি পড়ুন।

বার্তা সিঙ্ক করুন

একটি রিসোর্স দেখার জন্য একটি বিজ্ঞপ্তি চ্যানেল তৈরি করার পরে, ডিরেক্টরি API একটি sync বার্তা পাঠায় যাতে বিজ্ঞপ্তিগুলি শুরু হয়৷ এই বার্তাগুলির জন্য X-Goog-Resource-State HTTP হেডার মান sync ৷ নেটওয়ার্ক টাইমিং সমস্যার কারণে, আপনি watch পদ্ধতির প্রতিক্রিয়া পাওয়ার আগেও sync বার্তাটি গ্রহণ করা সম্ভব।

sync বিজ্ঞপ্তি উপেক্ষা করা নিরাপদ, কিন্তু আপনি এটি ব্যবহার করতে পারেন। উদাহরণ স্বরূপ, আপনি যদি সিদ্ধান্ত নেন যে আপনি চ্যানেলটি রাখতে চান না, তাহলে আপনি বিজ্ঞপ্তি পাওয়া বন্ধ করতে একটি কলে X-Goog-Channel-ID এবং X-Goog-Resource-ID মানগুলি ব্যবহার করতে পারেন৷ আপনি পরবর্তী ইভেন্টগুলির জন্য প্রস্তুত করার জন্য কিছু প্রাথমিককরণ করতে sync বিজ্ঞপ্তি ব্যবহার করতে পারেন।

ডিরেক্টরি API আপনার রিসিভিং ইউআরএলে যে sync বার্তা পাঠায় তার বিন্যাস নীচে দেখানো হয়েছে।

POST https://mydomain.com/notifications // Your receiving URL.
X-Goog-Channel-ID: channel-ID-value
X-Goog-Channel-Token: channel-token-value
X-Goog-Channel-Expiration: expiration-date-and-time // In human-readable format. Present only if the channel expires.
X-Goog-Resource-ID: identifier-for-the-watched-resource
X-Goog-Resource-URI: version-specific-URI-of-the-watched-resource
X-Goog-Resource-State: sync
X-Goog-Message-Number: 1

সিঙ্ক বার্তাগুলির সর্বদা একটি X-Goog-Message-Number HTTP হেডার মান 1 থাকে। এই চ্যানেলের জন্য প্রতিটি পরবর্তী বিজ্ঞপ্তিতে একটি বার্তা নম্বর রয়েছে যা আগেরটির চেয়ে বড়, যদিও বার্তা নম্বরগুলি ক্রমিক হবে না৷

বিজ্ঞপ্তি চ্যানেল পুনর্নবীকরণ

একটি নোটিফিকেশন চ্যানেলের মেয়াদ শেষ হওয়ার সময় থাকতে পারে, যার একটি মান আপনার অনুরোধের দ্বারা বা যেকোন ডিরেক্টরি API অভ্যন্তরীণ সীমা বা ডিফল্ট দ্বারা নির্ধারিত হয় (যত বেশি সীমাবদ্ধ মান ব্যবহার করা হয়)। চ্যানেলের মেয়াদ শেষ হওয়ার সময়, যদি এটি একটি থাকে, তবে watch পদ্ধতি দ্বারা প্রত্যাবর্তিত তথ্যে ইউনিক্স টাইমস্ট্যাম্প (মিলিসেকেন্ডে) হিসাবে অন্তর্ভুক্ত করা হয়। এছাড়াও, X-Goog-Channel-Expiration HTTP শিরোনামে আপনার অ্যাপ্লিকেশন এই চ্যানেলের জন্য প্রাপ্ত প্রতিটি বিজ্ঞপ্তি বার্তায় মেয়াদ শেষ হওয়ার তারিখ এবং সময় অন্তর্ভুক্ত করা হয়েছে (মানুষ-পঠনযোগ্য বিন্যাসে)।

বর্তমানে, একটি বিজ্ঞপ্তি চ্যানেল পুনর্নবীকরণ করার কোন স্বয়ংক্রিয় উপায় নেই৷ একটি চ্যানেলের মেয়াদ শেষ হওয়ার কাছাকাছি হলে, আপনাকে অবশ্যই watch পদ্ধতিতে কল করে এটিকে একটি নতুন দিয়ে প্রতিস্থাপন করতে হবে। সর্বদা হিসাবে, আপনাকে অবশ্যই নতুন চ্যানেলের id সম্পত্তির জন্য একটি অনন্য মান ব্যবহার করতে হবে। নোট করুন যে একই রিসোর্সের জন্য দুটি বিজ্ঞপ্তি চ্যানেল সক্রিয় থাকলে একটি "ওভারল্যাপ" সময়কাল হতে পারে।

বিজ্ঞপ্তি পান

যখনই একটি প্রেক্ষিত সম্পদ পরিবর্তিত হয়, আপনার অ্যাপ্লিকেশন পরিবর্তন বর্ণনা করে একটি বিজ্ঞপ্তি বার্তা পায়। ডিরেক্টরি API এই বার্তাগুলিকে HTTPS POST অনুরোধ হিসাবে এই বিজ্ঞপ্তি চ্যানেলের address সম্পত্তি হিসাবে আপনি নির্দিষ্ট করা URL-এ পাঠায়৷

বিজ্ঞপ্তি বার্তা বিন্যাস ব্যাখ্যা

সমস্ত বিজ্ঞপ্তি বার্তাগুলিতে X-Goog- উপসর্গ রয়েছে এমন HTTP শিরোনামগুলির একটি সেট অন্তর্ভুক্ত৷ কিছু ধরণের বিজ্ঞপ্তিতে একটি বার্তার অংশও অন্তর্ভুক্ত থাকতে পারে।

হেডার

আপনার প্রাপ্ত URL-এ ডিরেক্টরি API দ্বারা পোস্ট করা বিজ্ঞপ্তি বার্তাগুলিতে নিম্নলিখিত HTTP শিরোনামগুলি অন্তর্ভুক্ত রয়েছে:

হেডার বর্ণনা
সর্বদা উপস্থিত
X-Goog-Channel-ID এই বিজ্ঞপ্তি চ্যানেল সনাক্ত করতে UUID বা অন্যান্য অনন্য স্ট্রিং আপনি প্রদান করেছেন।
X-Goog-Message-Number পূর্ণসংখ্যা যা এই বিজ্ঞপ্তি চ্যানেলের জন্য এই বার্তাটি সনাক্ত করে৷ sync বার্তাগুলির জন্য মান সর্বদা 1 । চ্যানেলে প্রতিটি পরবর্তী বার্তার জন্য বার্তা সংখ্যা বৃদ্ধি পায়, কিন্তু সেগুলি অনুক্রমিক নয়।
X-Goog-Resource-ID একটি অস্বচ্ছ মান প্রেক্ষিত সম্পদ সনাক্ত করে। এই আইডিটি API সংস্করণ জুড়ে স্থিতিশীল।
X-Goog-Resource-State নতুন সম্পদ রাজ্য যে বিজ্ঞপ্তি ট্রিগার. সম্ভাব্য মান: sync বা একটি ইভেন্টের নাম
X-Goog-Resource-URI দেখা সম্পদের জন্য একটি API-সংস্করণ-নির্দিষ্ট শনাক্তকারী।
মাঝে মাঝে উপস্থিত
X-Goog-Channel-Expiration বিজ্ঞপ্তি চ্যানেলের মেয়াদ শেষ হওয়ার তারিখ এবং সময়, মানব-পাঠযোগ্য বিন্যাসে প্রকাশ করা হয়েছে। সংজ্ঞায়িত হলেই উপস্থিত।
X-Goog-Channel-Token বিজ্ঞপ্তি চ্যানেল টোকেন যা আপনার অ্যাপ্লিকেশন দ্বারা সেট করা হয়েছিল এবং আপনি বিজ্ঞপ্তির উত্স যাচাই করতে ব্যবহার করতে পারেন৷ সংজ্ঞায়িত হলেই উপস্থিত।

ব্যবহারকারীদের জন্য বিজ্ঞপ্তি বার্তা অনুরোধের অংশে নিম্নলিখিত তথ্য ধারণ করে:

সম্পত্তি বর্ণনা
kind এটিকে ব্যবহারকারীর সম্পদ হিসেবে চিহ্নিত করে। মান: স্থির স্ট্রিং " admin#directory#user "।
id ব্যবহারকারী সম্পদের অনন্য শনাক্তকারী।
etag বিজ্ঞপ্তি বার্তার ETag. ব্যবহারকারী সম্পদের ETag থেকে আলাদা।
primaryEmail ব্যবহারকারীর প্রাথমিক ইমেল ঠিকানা।

উদাহরণ

User সংস্থান ইভেন্টগুলির জন্য বিজ্ঞপ্তি বার্তাগুলির সাধারণ ফর্ম রয়েছে:

POST https://mydomain.com/notifications // Your receiving URL.
Content-Type: application/json; utf-8
Content-Length: 0
X-Goog-Channel-ID: directoryApiId
X-Goog-Channel-Token: 398348u3tu83ut8uu38
X-Goog-Channel-Expiration: Tue, 29 Oct 2013 20:32:02 GMT
X-Goog-Resource-ID:  ret08u3rv24htgh289g
X-Goog-Resource-URI: 'https://admin.googleapis.com/admin/directory/v1/users?domain=domain&event=event
X-Goog-Resource-State:  event
X-Goog-Message-Number: 10

{
  "kind": "admin#directory#user",
  "id": long,
  "etag": string,
  "primaryEmail": string
}

ব্যবহারকারী মুছে ফেলা ইভেন্টের একটি উদাহরণ:

POST https://mydomain.com/notifications // Your receiving URL.
Content-Type: application/json; utf-8
Content-Length: 189
X-Goog-Channel-ID: deleteChannel
X-Goog-Channel-Token: 245t1234tt83trrt333
X-Goog-Channel-Expiration: Mon, 09 Dec 2013 22:24:23 GMT
X-Goog-Resource-ID:  B4ibMJiIhTjAQd7Ff2K2bexk8G4
X-Goog-Resource-URI: https://admin.googleapis.com/admin/directory/v1/users?domain=mydomain.com&event=delete&alt=json
X-Goog-Resource-State:  delete
X-Goog-Message-Number: 236440

{
  "kind": "admin#directory#user",
  "id": "111220860655841818702",
  "etag": "\"Mf8RAmnABsVfQ47MMT_18MHAdRE/evLIDlz2Fd9zbAqwvIp7Pzq8UAw\"",
  "primaryEmail": "user@mydomain.com"
}

বিজ্ঞপ্তিতে সাড়া দিন

সাফল্যের ইঙ্গিত দিতে, আপনি নিম্নলিখিত স্ট্যাটাস কোডগুলির যেকোনো একটি ফেরত দিতে পারেন: 200 , 201 , 202 , 204 , বা 102

যদি আপনার পরিষেবা Google-এর API ক্লায়েন্ট লাইব্রেরি ব্যবহার করে এবং 500 , 502 , 503 , বা 504 প্রদান করে, তাহলে ডিরেক্টরি API সূচকীয় ব্যাকঅফের সাথে পুনরায় চেষ্টা করে৷ প্রতিটি অন্য রিটার্ন স্ট্যাটাস কোড একটি বার্তা ব্যর্থতা বলে মনে করা হয়।

বন্ধ করুন বিজ্ঞপ্তি

বিজ্ঞপ্তিগুলি স্বয়ংক্রিয়ভাবে বন্ধ হয়ে গেলে expiration সম্পত্তি নিয়ন্ত্রণ করে। আপনি নিম্নলিখিত URI-তে stop পদ্ধতিতে কল করে মেয়াদ শেষ হওয়ার আগে একটি নির্দিষ্ট চ্যানেলের জন্য বিজ্ঞপ্তি পাওয়া বন্ধ করতে বেছে নিতে পারেন:

https://www.googleapis.com/admin/directory_v1/channels/stop

এই পদ্ধতির জন্য আপনাকে অন্তত চ্যানেলের id এবং resourceId বৈশিষ্ট্যগুলি প্রদান করতে হবে, যেমনটি নীচের উদাহরণে দেখানো হয়েছে৷ উল্লেখ্য যে যদি ডিরেক্টরি এপিআই-এর বিভিন্ন ধরনের রিসোর্স থাকে যাতে watch পদ্ধতি থাকে, তবে শুধুমাত্র একটি stop পদ্ধতি আছে।

শুধুমাত্র সঠিক অনুমতি সহ ব্যবহারকারীরা একটি চ্যানেল বন্ধ করতে পারেন। নির্দিষ্টভাবে:

  • যদি চ্যানেলটি একটি নিয়মিত ব্যবহারকারীর অ্যাকাউন্ট দ্বারা তৈরি করা হয়, তবে শুধুমাত্র একই ক্লায়েন্টের একই ব্যবহারকারী (যেমনটি প্রমাণীকরণ টোকেন থেকে OAuth 2.0 ক্লায়েন্ট আইডি দ্বারা চিহ্নিত) যিনি চ্যানেলটি তৈরি করেছেন তারা চ্যানেলটি বন্ধ করতে পারেন।
  • যদি চ্যানেলটি একটি পরিষেবা অ্যাকাউন্ট দ্বারা তৈরি করা হয়, একই ক্লায়েন্টের যেকোনো ব্যবহারকারী চ্যানেল বন্ধ করতে পারে।

নিম্নলিখিত কোড নমুনা দেখায় কিভাবে বিজ্ঞপ্তি পাওয়া বন্ধ করতে হয়:

POST https://www.googleapis.com/admin/directory_v1/channels/stop
  
Authorization: Bearer CURRENT_USER_AUTH_TOKEN
Content-Type: application/json

{
  "id": "4ba78bf0-6a47-11e2-bcfd-0800200c9a66",
  "resourceId": "ret08u3rv24htgh289g"
}