एपीआई की खास जानकारी वाले सेक्शन में, प्लैटफ़ॉर्म के साथ इंटिग्रेट करने के लिए ज़रूरी तकनीकी कॉम्पोनेंट की पूरी जानकारी दी गई है. इसमें अनुमति के स्कोप, डेटा टाइप की परिभाषाएं, और एंडपॉइंट के स्ट्रक्चर शामिल हैं. यह एपीआई, पुराने Fitbit Web API का रणनीतिक तौर पर बेहतर वर्शन है. इसे आधुनिक इन्फ़्रास्ट्रक्चर पर फिर से बनाया गया है, ताकि डेवलपर को ज़्यादा स्थिर और एक जैसा अनुभव मिल सके.
स्कोप
Google Health API के स्कोप का इस्तेमाल करने के लिए, आपको अनुमति के अनुरोध को अपडेट करना होगा. स्कोप से यह तय होता है कि आपका ऐप्लिकेशन, पढ़ने या लिखने की कार्रवाइयों के लिए अनुमति देता है या नहीं. अपने ऐप्लिकेशन के लिए ज़रूरी न होने वाले स्कोप का इस्तेमाल न करें. अगर आपके ऐप्लिकेशन के डिज़ाइन में बदलाव होता है, तो बाद में ज़्यादा स्कोप जोड़े जा सकते हैं.
Google Health API के स्कोप, एचटीटीपी यूआरएल होते हैं. ये https://www.googleapis.com/auth/googlehealth.{scope} से शुरू होते हैं. उदाहरण के लिए, https://www.googleapis.com/auth/googlehealth.activity_and_fitness.writeonly.
स्कोप मैपिंग
यहां बताया गया है कि Fitbit Web API के स्कोप, Google Health API के स्कोप से कैसे मैप होते हैं:
| Fitbit Web API के स्कोप | Google Health API के स्कोप |
|---|---|
| गतिविधि | .activity_and_fitness.readonly
.activity_and_fitness.writeonly |
| blood_glucose | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
| cardio_fitness | .activity_and_fitness.readonly
.activity_and_fitness.writeonly |
| इलेक्ट्रोकार्डियोग्राम | .ecg.readonly
|
| धड़कन की दर | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
| irregular_rhythm_notifications | .irn.readonly
|
| जगह | .location.readonly
|
| पोषण | .nutrition.readonly
.nutrition.writeonly |
| oxygen_saturation | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
| प्रोफ़ाइल | .profile.readonly
.profile.writeonly |
| respiratory_rate | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
| सेटिंग | .settings.readonly
.settings.writeonly |
| नींद का डेटा | .sleep.readonly
.sleep.writeonly |
| तापमान | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
| वज़न का डेटा | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
डेटा टाइप
यहां Google Health API के डेटा टाइप की सूची दी गई है. साथ ही, यह भी बताया गया है कि ये Fitbit Web API से कैसे मैप होते हैं.
| Fitbit Web API का डेटा टाइप | Google Health API का डेटा टाइपdataType |
|---|---|
| शारीरिक गतिविधि के दौरान खर्च हुई कैलोरी का डेटा ऐक्सेस करने की अनुमति | शारीरिक गतिविधि के दौरान खर्च की गई एनर्जीactive-energy-burned
|
| ऐक्टिव ज़ोन मिनट | ऐक्टिव ज़ोन मिनटactive-zone-minutes
|
| इसमें उपयोगकर्ता के गतिविधि के लेवल में हुए बदलाव शामिल हैं | गतिविधि का लेवलactivity-level
|
| ऊंचाई | समुद्र तल से ऊंचाईaltitude
|
| ब्लड ग्लूकोज़ | ब्लड ग्लूकोज़blood-glucose
|
| बॉडी फ़ैट से जुड़ा डेटा | बॉडी फ़ैटbody-fat
|
धड़कन की दर वाले हर ज़ोन में caloriesOut |
धड़कन की दर वाले ज़ोन में खर्च हुई कैलोरीcalories-in-heart-rate-zone
|
| तापमान (शरीर के अंदरूनी अंगों का) | शरीर के अंदरूनी अंगों का तापमानcore-body-temperature
|
| एचआरवी की खास जानकारी | धड़कन की दर में उतार-चढ़ाव का रोज़ाना का डेटाdaily-heart-rate-variability
|
| SpO2 की खास जानकारी | ऑक्सीजन की मात्रा का रोज़ाना का डेटाdaily-oxygen-saturation
|
| आराम करते समय धड़कन की दर | आराम करते समय धड़कन की दर का रोज़ाना का डेटाdaily-resting-heart-rate
|
| त्वचा का तापमान | नींद के दौरान त्वचा के तापमान में होने वाले बदलाव का रोज़ाना का डेटाdaily-sleep-temperature-derivations
|
| दूरी | दूरीdistance
|
| इलेक्ट्रोकार्डियोग्राम (ईसीजी) | इलेक्ट्रोकार्डियोग्राम (ईसीजी)electrocardiogram
|
| रिकॉर्ड की गई गतिविधि | एक्सरसाइज़exercise
|
| फ़्लोर | फ़्लोरfloors
|
| खाना | खानाfood
|
| खाने की मेज़रमेंट यूनिट | खाने की मेज़रमेंट यूनिटfood-measurement-unit
|
| धड़कन की दर | धड़कन की दरheart-rate
|
| एचआरवी का दिन के दौरान का डेटा | धड़कन की दर में उतार-चढ़ावheart-rate-variability
|
| दिल की धड़कन अनियमित होने पर मिलने वाली सूचनाएं (आईआरएन) | दिल की धड़कन अनियमित होने पर मिलने वाली सूचनाirregular-rhythm-notification
|
| खाने से जुड़ा डेटा लॉग करें | पोषण से जुड़ा डेटा लॉग करेंnutrition-log
|
| SpO2 का दिन के दौरान का डेटा | ऑक्सीजन की मात्राoxygen-saturation
|
| दौड़ने के दौरान VO2 मैक्स की वैल्यू | दौड़ने के दौरान का VO2 मैक्सrun-vo2-max
|
| गतिविधि के दौरान, एक जगह बैठे रहने के समय की टाइम सीरीज़ (मिनट में) | एक जगह बैठे रहने की अवधिsedentary-period
|
| नींद का डेटा | नींद का डेटाsleep
|
| चरण | चरणsteps
|
| स्विमिंग स्ट्रोक की टाइम सीरीज़ | स्विम लेंथ का डेटाswim-lengths-data
|
गतिविधि के दौरान खर्च हुई caloriesOut |
खर्च हुई कुल कैलोरीtotal-calories
|
| VO2 मैक्स की वैल्यू | VO2 मैक्सvo2-max
|
| वज़न का डेटा | वज़न का डेटाweight
|
एंडपॉइंट
REST एंडपॉइंट, सभी तरह के डेटा के लिए एक जैसे सिंटैक्स का इस्तेमाल करते हैं.
- सेवा का एंडपॉइंट: बेस एचटीटीपी यूआरएल बदलकर https://health.googleapis.com हो जाता है.
- एंडपॉइंट का सिंटैक्स: Google Health API, सीमित संख्या में एंडपॉइंट के साथ काम करता है. इनका इस्तेमाल, काम करने वाले ज़्यादातर डेटा टाइप के लिए किया जा सकता है. इससे सभी तरह के डेटा के लिए एक जैसा सिंटैक्स मिलता है. साथ ही, एंडपॉइंट का इस्तेमाल करना आसान हो जाता है.
- यूज़र आइडेंटिफ़ायर: एंडपॉइंट के सिंटैक्स में, यूज़र आईडी या me में से किसी एक को तय किया जाना चाहिए. me का इस्तेमाल करने पर, यूज़र आईडी को ऐक्सेस टोकन से इनफ़र किया जाता है.
उदाहरण: यहां Google Health API का इस्तेमाल करके, प्रोफ़ाइल पाने के लिए कॉल किए गए एंडपॉइंट का उदाहरण दिया गया है
GET https://health.googleapis.com/v4/users/me/profile
एंडपॉइंट मैपिंग
उपलब्ध डेटा टाइप और उनके साथ काम करने वाले एपीआई के तरीकों की सूची के लिए, Google Health API के डेटा टाइप वाली टेबल देखें.
| Fitbit Web API के एंडपॉइंट का टाइप | Google Health API |
| GET (लॉग | खास जानकारी | रोज़ाना की खास जानकारी), जहां एक दिन के डेटा का अनुरोध किया जा रहा है | dailyRollup तरीका, जिसमें windowSize = 1 दिन है |
| GET (दिन के दौरान का डेटा), जहां ज़्यादा जानकारी वाले डेटा का अनुरोध किया जा रहा है | list तरीका |
| तारीख या इंटरवल के हिसाब से GET (टाइम सीरीज़) | rollUp या dailyRollUp तरीका, जिसमें तारीख की सीमा शामिल है |
| GET (लॉग की सूची) | list तरीका |
| लॉग बनाना और अपडेट करना | patch तरीका |
| लॉग मिटाना | batchDelete तरीका |
| प्रोफ़ाइल पाना | users.getProfile से उपयोगकर्ता की खास जानकारी मिलती है
users.getSettings से उपयोगकर्ता की यूनिट और टाइमज़ोन मिलते हैं |
| प्रोफ़ाइल अपडेट करना | users.updateProfile से उपयोगकर्ता की खास जानकारी में बदलाव होता है
users.updateSettings से उपयोगकर्ता की यूनिट और टाइमज़ोन में बदलाव होता है |
| यूज़र आईडी पाना | users.getIdentity से उपयोगकर्ता का पुराना Fitbit आईडी और Google यूज़र आईडी मिलता है. |
| डिवाइस पाना | users.pairedDevices से जोड़े गए डिवाइसों की सूची मिलती है |
| सदस्यताएं बनाना | projects.subscribers.subscriptions.create से मैन्युअल तरीके से सदस्यता बनाई जाती है |
| सदस्यताएं मिटाना | projects.subscribers.subscriptions.delete से सदस्यता मिटाई जाती है |
| सदस्यताओं की सूची पाना | projects.subscribers.subscriptions.list से सभी सदस्यताओं की सूची मिलती है |