গুগল ক্লাউড এবং OAuth সেট আপ করুন

গুগল হেলথ এপিআই-তে অ্যাক্সেস গুগল ক্লাউডের মাধ্যমে প্রদান করা হয়। এপিআই সক্রিয় করতে এবং একটি গুগল অ্যাকাউন্ট অনুমোদন করতে আপনার একটি গুগল ক্লাউড প্রজেক্ট প্রয়োজন হবে।

আপনি একজন বিদ্যমান Fitbit API ডেভেলপার হোন বা Google Health API-তে নতুন হোন, API-তে কল করার জন্য আপনাকে এই ধাপটি সম্পন্ন করতে হবে।

একটি প্রজেক্ট এবং একটি OAuth ক্লায়েন্ট তৈরি করুন

Google Health API সক্রিয় করতে এবং একটি OAuth 2.0 ক্লায়েন্ট আইডি পেতে “Enable the API and get an OAuth 2.0 Client ID” বাটনটি ব্যবহার করুন:

  1. আপনার যদি আগে থেকে কোনো গুগল ক্লাউড প্রজেক্ট থাকে যা আপনি গুগল হেলথ এপিআই-এর জন্য ব্যবহার করতে চান, তাহলে প্রথমে নিশ্চিত করুন যে আপনি সেই প্রজেক্টের অ্যাডমিনিস্ট্রেটর অ্যাকাউন্টে লগ ইন করেছেন। তারপর বোতামে ক্লিক করার পর উপলব্ধ প্রজেক্টের তালিকা থেকে বিদ্যমান প্রজেক্টটি নির্বাচন করুন। অন্যথায়, একটি নতুন প্রজেক্ট তৈরি করুন।
  2. "আপনি কোথা থেকে কল করছেন?" জিজ্ঞাসা করা হলে ওয়েব সার্ভার নির্বাচন করুন।
  3. অনুমোদিত রিডাইরেক্ট ইউআরআই (Authorized redirect URIs)- এর ভ্যালু হিসেবে https://www.google.com লিখুন। OAuth 2.0 ব্যবহার করে অথরাইজেশন কোড (Authorization Code) পেতে একটি রিডাইরেক্ট ইউআরআই প্রয়োজন।
  4. সেটআপ সম্পন্ন হলে, OAuth 2.0 ক্লায়েন্ট আইডি এবং ক্লায়েন্ট সিক্রেট-এর মানগুলো কপি করুন এবং ক্রেডেনশিয়ালস JSON ফাইলটি আপনার স্থানীয় মেশিনে ডাউনলোড করুন
এপিআই সক্রিয় করুন এবং একটি OAuth 2.0 ক্লায়েন্ট আইডি সংগ্রহ করুন।

আপনি যদি আপনার গুগল ক্লাউড প্রজেক্ট ম্যানুয়ালি সেট আপ করতে চান, অথবা সেটআপটি যাচাই করে আপনার ক্রেডেনশিয়ালগুলো পুনরায় পুনরুদ্ধার করতে চান:

  1. এপিআই এনাবলমেন্ট পেজে গুগল হেলথ এপিআই সক্রিয় করুন।
  2. ক্রেডেনশিয়ালস পেজ থেকে একটি OAuth 2.0 ক্লায়েন্ট আইডি সংগ্রহ করুন।

গুগল কনসোল ব্যবহার করে OAuth 2.0 সেট আপ করার বিষয়ে আরও তথ্যের জন্য, “Using OAuth 2.0 to Access Google APIs” দেখুন।

পরীক্ষামূলক ব্যবহারকারী যোগ করুন

ডিফল্টরূপে, নতুন তৈরি করা OAuth ক্লায়েন্টগুলো যাচাইবিহীন অবস্থায় থাকে এবং টেস্টিং ও প্রোডাকশন উভয় কাজের জন্য এতে সর্বোচ্চ ১০০ জন ব্যবহারকারী থাকতে পারে। এই সময়কালে অনুমোদন সক্রিয় করতে, আপনাকে অবশ্যই আপনার প্রজেক্ট কনফিগারেশনের 'টেস্ট ইউজার্স' তালিকায় প্রতিটি ব্যবহারকারীর ইমেল ঠিকানা ম্যানুয়ালি যোগ করতে হবে।

অডিয়েন্স পেজে পরীক্ষামূলক ব্যবহারকারীদের তালিকা আপডেট করুন:

  1. এই পৃষ্ঠায়, আপনি দেখবেন "Publishing status"-এর মান "Testing " এবং "User type"-এর মান " External " সেট করা আছে।
  2. "টেস্ট ইউজার" বিভাগের অধীনে, "+ ইউজার যোগ করুন" -এ ক্লিক করুন। সেইসব টেস্ট ইউজারের ইমেল ঠিকানা লিখুন, যাদেরকে আপনার অ্যাপকে তাদের স্বাস্থ্য ডেটা অ্যাক্সেস করার অনুমতি দেওয়ার অনুমোদন দেওয়া উচিত।
  3. সংরক্ষণ করুন- এ ক্লিক করুন।

গুগল হেলথ এপিআই-এর মাধ্যমে ১০০ জনেরও বেশি ব্যবহারকারীকে সমর্থন করার জন্য একটি তৃতীয় পক্ষের নিরাপত্তা পর্যালোচনা সম্পন্ন করা প্রয়োজন। অতিরিক্ত তথ্য OAuth অ্যাপ ভেরিফিকেশন হেল্প সেন্টারে পাওয়া যাবে।

স্কোপ যোগ করুন

ডেটা অ্যাক্সেস পৃষ্ঠায় আপনাকে অবশ্যই সেই স্কোপগুলি নির্দিষ্ট করতে হবে যেগুলি আপনার ক্লায়েন্ট কল করতে পারবে:

  1. এই পৃষ্ঠায়, স্কোপ যোগ বা অপসারণ করুন-এ ক্লিক করুন।
  2. API কলামে 'Google Health API' লিখে অনুসন্ধান করুন। আপনার অ্যাপ্লিকেশনের জন্য প্রয়োজনীয় স্কোপগুলো নির্বাচন করুন।
  3. আপনার প্রয়োজনীয় সমস্ত স্কোপ নির্বাচন করার পর, ডেটা অ্যাক্সেস পৃষ্ঠায় ফিরে যেতে আপডেট-এ ক্লিক করুন।
  4. সংরক্ষণ করুন- এ ক্লিক করুন।

আপনি আপনার ক্লায়েন্ট আইডি সেট আপ করা শেষ করেছেন এবং এখন গুগল হেলথ এপিআই-তে কল করতে পারবেন।

OAuth2 ক্লায়েন্ট লাইব্রেরি

জনপ্রিয় ফ্রেমওয়ার্কগুলির সাথে ইন্টিগ্রেট করার জন্য ব্যবহৃত উপলব্ধ OAuth2 ক্লায়েন্ট লাইব্রেরিগুলির তালিকা "Using OAuth 2.0 to Access Google APIs" -এ পাওয়া যাবে।

টোকেন রিফ্রেশ করুন

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

রিফ্রেশ টোকেনের বিনিময়ে অ্যাক্সেস টোকেন পেতে, গুগল OAuth 2.0 টোকেন এন্ডপয়েন্টে একটি HTTPS POST কল করুন। নিচের কোড স্নিপেটে একটি অনুরোধ এবং প্রতিক্রিয়ার উদাহরণ দেখানো হলো:

অনুরোধ

curl -L -X POST 'https://oauth2.googleapis.com/token' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'client_id=client-id&client_secret=client-secret&refresh_token=refresh-token&grant_type=refresh_token'

প্রতিক্রিয়া

{
  "access_token": "access-token",
  "expires_in": 3599,
  "scope": "scope-list",
  "token_type": "Bearer",
  "refresh_token": "refresh-token",
  "refresh_token_expires_in": 112154
}

পরীক্ষার সময় টোকেনের আচরণ

আপনার গুগল ক্লাউড প্রজেক্টের পাবলিশিং স্ট্যাটাসের উপর নির্ভর করে রিফ্রেশ টোকেনগুলো কীভাবে কাজ করে, সে বিষয়ে সচেতন থাকুন:

  • টেস্টিং মোড: যদি আপনার OAuth কনসেন্ট স্ক্রিনটি "টেস্টিং" পাবলিশিং স্ট্যাটাস দিয়ে কনফিগার করা থাকে, তাহলে ইস্যু করা রিফ্রেশ টোকেনগুলো সময়-ভিত্তিক হয় এবং ৭ দিন পর মেয়াদোত্তীর্ণ হয়ে যায়। এই সময়কালে, আপনি একটিমাত্র রিফ্রেশ টোকেন পাবেন যা তার মেয়াদ শেষ না হওয়া পর্যন্ত নতুন অ্যাক্সেস টোকেন পাওয়ার জন্য বৈধ এবং ব্যবহারযোগ্য থাকবে।
  • প্রকাশিত মোড: একবার আপনার অ্যাপটি "ইন প্রোডাকশন" স্ট্যাটাসে চলে গেলে, রিফ্রেশ টোকেনগুলির সাধারণত মেয়াদ শেষ হয় না, যদি না সেগুলি বাতিল করা হয় বা দীর্ঘ সময় ধরে (সাধারণত ছয় মাস) অব্যবহৃত থাকে।

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