এই পৃষ্ঠায় গুগল হেলথ এপিআই অ্যাক্সেস করার সুবিধাজনক উপায়গুলোর লিঙ্ক দেওয়া আছে।
গুগল হেলথ এপিআই ক্লায়েন্ট লাইব্রেরি
গুগল হেলথ এপিআই HTTP এবং JSON-এর উপর ভিত্তি করে তৈরি, তাই যেকোনো সাধারণ HTTP ক্লায়েন্ট এতে অনুরোধ পাঠাতে এবং প্রতিক্রিয়াগুলো পার্স করতে পারে।
তবে, ম্যানুয়ালি HTTP রিকোয়েস্ট তৈরি এবং রেসপন্স পার্স করার পরিবর্তে, আপনি গুগল এপিআই ক্লায়েন্ট লাইব্রেরিগুলো ব্যবহার করতে পারেন। এই ক্লায়েন্ট লাইব্রেরিগুলো উন্নততর ল্যাঙ্গুয়েজ ইন্টিগ্রেশন, উন্নত নিরাপত্তা এবং ব্যবহারকারীর অনুমোদন প্রয়োজন এমন কল করার সুবিধা প্রদান করে।
যান
Go-এর জন্য সর্বশেষ Google Health API ক্লায়েন্ট লাইব্রেরিটি ডাউনলোড করুন। ক্লায়েন্ট লাইব্রেরির ডেভেলপার গাইডটি পড়ুন।
জাভা
এই পৃষ্ঠায় জাভার জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি ব্যবহার করে গুগল হেলথ এপিআই দিয়ে কাজ শুরু করার বিষয়ে তথ্য রয়েছে। আরও তথ্যের জন্য, নিম্নলিখিত ডকুমেন্টেশন দেখুন: নিচের ট্যাবগুলো থেকে আপনার বিল্ড এনভায়রনমেন্ট (Maven অথবা Gradle) নির্বাচন করুন: আপনার আপনার আপনার প্রজেক্টে ক্লায়েন্ট লাইব্রেরি যোগ করুন
pom.xml ফাইলে নিম্নলিখিতটি যোগ করুন: build.gradle ফাইলে নিম্নলিখিতটি যোগ করুন:
জাভাস্ক্রিপ্ট
ক্লায়েন্ট লাইব্রেরির ডেভেলপার গাইডটি পড়ুন।
.NET
এই পৃষ্ঠায় .NET-এর জন্য Google API ক্লায়েন্ট লাইব্রেরি ব্যবহার করে Google Health API-এর সাথে কাজ শুরু করার বিষয়ে তথ্য রয়েছে। আরও তথ্যের জন্য, নিম্নলিখিত ডকুমেন্টেশন দেখুন: Google.Apis NuGet প্যাকেজটি ইনস্টল করুন। লাইব্রেরি ডাউনলোড করা হচ্ছে
নোড.জেএস
Node.js-এর জন্য সর্বশেষ Google Health API ক্লায়েন্ট লাইব্রেরিটি ডাউনলোড করুন। ক্লায়েন্ট লাইব্রেরির ডেভেলপার গাইডটি পড়ুন।
অবজেক্ট-সি
Objective-C-এর জন্য সর্বশেষ Google Health API ক্লায়েন্ট লাইব্রেরিটি ডাউনলোড করুন। ক্লায়েন্ট লাইব্রেরির ডেভেলপার গাইডটি পড়ুন।
পিএইচপি
PHP-এর জন্য সর্বশেষ গুগল হেলথ এপিআই ক্লায়েন্ট লাইব্রেরিটি ডাউনলোড করুন। ক্লায়েন্ট লাইব্রেরির ডেভেলপার গাইডটি পড়ুন।
পাইথন
এই পৃষ্ঠায় পাইথনের জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি (v1/v2) ব্যবহার করে গুগল হেলথ এপিআই দিয়ে কাজ শুরু করার বিষয়ে তথ্য রয়েছে। আরও তথ্যের জন্য, নিম্নলিখিত ডকুমেন্টেশন দেখুন: আপনি প্যাকেজ ম্যানেজার ব্যবহার করতে পারেন অথবা ম্যানুয়ালি পাইথন ক্লায়েন্ট লাইব্রেরি ডাউনলোড ও ইনস্টল করতে পারেন: আপনার ইনস্টলেশন পরিচালনা করতে pip বা setuptools ব্যবহার করুন। প্রথমে আপনাকে যেহেতু পাইথন ক্লায়েন্ট লাইব্রেরিগুলো অ্যাপ ইঞ্জিন পাইথন রানটাইম এনভায়রনমেন্টে ইনস্টল করা থাকে না, তাই আপনাকে থার্ড-পার্টি লাইব্রেরির মতোই সেগুলোকে আপনার অ্যাপ্লিকেশনে কপি করতে হবে। সিস্টেমের প্রয়োজনীয়তা
ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন
পরিচালিত ইনস্টল
sudo চালাতে হতে পারে।pip install --upgrade google-api-python-client
easy_install --upgrade google-api-python-client
ম্যানুয়াল ইনস্টল
python setup.py install
অ্যাপ ইঞ্জিন
রুবি
এই পৃষ্ঠায় রুবি-র জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি ব্যবহার করে গুগল হেলথ এপিআই দিয়ে কাজ শুরু করার বিষয়ে তথ্য রয়েছে। আরও তথ্যের জন্য, নিম্নলিখিত ডকুমেন্টেশন দেখুন: আপনার সিস্টেমের ওপর নির্ভর করে, এই কমান্ডগুলোর শুরুতে আপনি যদি আগে রুবির জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি ইনস্টল না করে থাকেন, তবে
google-api-client জেমটি ইনস্টল করুনsudo যোগ করার প্রয়োজন হতে পারে।RubyGems ব্যবহার করে এটি ইনস্টল করুন:gem install google-api-client
যদি আপনার কাছে জেমটি আগে থেকেই ইনস্টল করা থাকে, তবে সর্বশেষ সংস্করণে আপডেট করুন:
gem update -y google-api-client
রুবির জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি দিয়ে শুরু করুন।
আপনার প্রথম অনুরোধটি কীভাবে করতে হয় তা জানতে, ‘ শুরু করার নির্দেশিকা’ দেখুন।
জিআরপিসি
গুগল হেলথ এপিআই উচ্চ-পারফরম্যান্স ডেটা পুনরুদ্ধারের জন্য gRPC-ও সমর্থন করে। ক্লায়েন্ট লাইব্রেরি ইনস্টল করার পাশাপাশি, gRPC ব্যবহার করার জন্য এপিআই-এর প্রোটোকল বাফার ডেফিনিশন সংগ্রহ করতে হয় এবং রিকোয়েস্ট পাঠানোর আগে ক্লায়েন্ট-সাইড স্টাব কোড তৈরি করতে হয়।
- gRPC লাইব্রেরি ইনস্টল করুন:
- ডিপেন্ডেন্সিগুলো ইনস্টল করতে
pip install grpcio grpcio-tools google-auth-oauthlibব্যবহার করুন।
- ডিপেন্ডেন্সিগুলো ইনস্টল করতে
- ক্লায়েন্ট কোড তৈরি করুন:
- Google Health API-এর
.protoডেফিনিশনগুলো সংগ্রহ করুন (উদাহরণস্বরূপ,data_points.proto)। - স্টাব কোড তৈরি করতে
python -m grpc_tools.protoc -I. --python_out=. --grpc_python_out=. path/to/your/data_points.protoচালান।
- Google Health API-এর
- OAuth 2.0 প্রয়োগ করুন এবং gRPC অনুরোধ পাঠান:
- নিম্নলিখিত উদাহরণে দেখানো অনুযায়ী, অনুমোদনের জন্য
google-auth-oauthlibএবং gRPC অনুরোধ পাঠানোর জন্য তৈরি করা ক্লায়েন্ট স্টাবটি ব্যবহার করুন।
- নিম্নলিখিত উদাহরণে দেখানো অনুযায়ী, অনুমোদনের জন্য
import google.auth
from google.auth.transport.grpc import secure_authorized_channel
from google.auth.transport.requests import Request
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
import os
import json
import grpc
# Generated gRPC code from data_points.proto
# These imports depend on the output of grpc_tools
try:
import data_points_pb2
import data_points_pb2_grpc
except ImportError:
print("Please generate gRPC code from data_points.proto")
data_points_pb2 = None
data_points_pb2_grpc = None
# --- REPLACE WITH YOUR VALUES ---
CLIENT_SECRETS_FILE = 'path/to/your/client_secret.json'
SCOPES = ['https://www.googleapis.com/auth/health'] # Add other scopes as needed
TOKEN_FILE = 'token.json'
GRPC_ENDPOINT = 'health.googleapis.com' # Google Health API gRPC endpoint
def get_credentials():
"""Gets or creates OAuth 2.0 credentials."""
creds = None
# The file token.json stores the user's access and refresh tokens, and is
# created automatically when the authorization flow completes for the first
# time.
if os.path.exists(TOKEN_FILE):
with open(TOKEN_FILE, 'r') as token:
creds = Credentials.from_authorized_user_info(json.load(token), SCOPES)
# If there are no (valid) credentials available, let the user log in.
if creds and creds.expired and creds.refresh_token:
try:
creds.refresh(Request())
except Exception as e:
creds = None # Force re-auth if refresh fails
if not creds or not creds.valid:
flow = InstalledAppFlow.from_client_secrets_file(
CLIENT_SECRETS_FILE, SCOPES
)
creds = flow.run_local_server(port=0)
# Save the credentials for the next run
with open(TOKEN_FILE, 'w') as token:
token.write(creds.to_json())
return creds
def fetch_health_data_grpc(creds):
"""Fetches health data using gRPC."""
if not data_points_pb2_grpc:
return
try:
# Create an authenticated gRPC channel
channel = secure_authorized_channel(creds, Request(), f'{GRPC_ENDPOINT}:443')
# Create a stub for the DataPointsService
stub = data_points_pb2_grpc.DataPointsServiceStub(channel)
# Example: list steps data points for the authenticated user 'me'
request = data_points_pb2.ListDataPointsRequest(parent='users/me/dataTypes/steps')
response = stub.ListDataPoints(request)
print('Health data via gRPC:', response)
except grpc.RpcError as e:
print(f'Error fetching data via gRPC: {e.code()} - {e.details()}')
except Exception as e:
print(f'An error occurred during gRPC call: {e}')
if __name__ == '__main__':
try:
creds = get_credentials()
print("Fetching data using gRPC...")
fetch_health_data_grpc(creds)
except Exception as e:
print(f"An error occurred: {e}")
- লাইব্রেরি আমদানি করুন:
-
grpc: gRPC পাইথন লাইব্রেরি। -
google.auth.transport.grpc: নিরাপদ ও প্রমাণীকৃত চ্যানেল তৈরি করার জন্য। -
data_points_pb2,data_points_pb2_grpc:.protoফাইল থেকে তৈরি ক্লায়েন্ট কোড।
-
- কনফিগারেশন:
-
CLIENT_SECRETS_FILE: আপনারclient_secret.jsonফাইলের পাথ। -
SCOPES: প্রয়োজনীয় অনুমতিসমূহ। -
TOKEN_FILE: OAuth টোকেন সংরক্ষণের পাথ। -
GRPC_ENDPOINT: গুগল হেলথ gRPC পরিষেবার হোস্টনেম।
-
-
get_credentials():- ফাইল থেকে ক্লায়েন্ট সিক্রেট লোড করে, অথরাইজেশন পরিচালনার জন্য
google-auth-oauthlibএরInstalledAppFlowব্যবহার করে, সংরক্ষিত ক্রেডেনশিয়াল লোড করার চেষ্টা করে, অথবা প্রয়োজনে OAuth 2.0 ফ্লো শুরু করে।
- ফাইল থেকে ক্লায়েন্ট সিক্রেট লোড করে, অথরাইজেশন পরিচালনার জন্য
-
fetch_health_data_grpc():- ব্যবহারকারীর পরিচয়পত্র ব্যবহার করে একটি সুরক্ষিত ও প্রমাণীকৃত gRPC চ্যানেল তৈরি করে।
- চ্যানেলটি ব্যবহার করে একটি
DataPointsServiceStubশুরু করে। -
users/meজন্য পদক্ষেপের ডেটা অনুরোধ করতে একটিListDataPointsRequestতৈরি করে। -
ListDataPointsRPC মেথডটি কল করে এবং রেসপন্সটি প্রিন্ট করে।
- ত্রুটি পরিচালনা: কোডটিতে gRPC এবং অন্যান্য ত্রুটি পরিচালনার জন্য সাধারণ
try...exceptব্লক অন্তর্ভুক্ত রয়েছে।