בקטע 'מפרט ה-API' מופיעה סקירה מפורטת של הרכיבים הטכניים שנדרשים לשילוב עם הפלטפורמה, כולל היקפי הרשאות, הגדרות של סוגי נתונים ומבנים של נקודות קצה. ממשק ה-API הזה מייצג התפתחות אסטרטגית של ממשק Fitbit Web API מדור קודם, שנבנה מחדש על בסיס תשתית מודרנית כדי להבטיח חוויית פיתוח יציבה ועקבית יותר.
היקפים
עליך לעדכן את בקשת ההרשאה שלך כדי להשתמש בהיקפי Google Health API. ההיקפים מגדירים אם האפליקציה תומכת בפעולות קריאה או כתיבה. פועלים לפי ההוראות להטמעת היקף ההרשאות, שכוללות בקשה רק להיקפי ההרשאות הנדרשים, הגדרת הרשאת כתיבה רק כששולחים נתונים וטיפול בהסכמה חלקית בצורה חלקה.
היקפי ההרשאות של Google Health API הם כתובות URL של HTTP שמתחילות ב-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 | .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 APIdataType |
|---|---|
| קלוריות בפעילות | אנרגיה שנשרפה בזמן פעילותactive-energy-burned
|
| דקות טווח דופק | דקות טווח פעילותactive-zone-minutes
|
| כולל שינויים ברמות הפעילות של המשתמש | רמת הפעילותactivity-level
|
| גובה | גובהaltitude
|
| סוכר בדם | סוכר בדםblood-glucose
|
| אחוז השומן בגוף | Body Fatbody-fat
|
caloriesOut בכל טווח דופק |
Calories In Heart Rate Zonecalories-in-heart-rate-zone
|
| טמפרטורה (ליבה) | טמפרטורת ליבהcore-body-temperature
|
| סיכום HRV | Daily Heart Rate Variabilitydaily-heart-rate-variability
|
| סיכום נתוני הסטורציה | Daily Oxygen Saturationdaily-oxygen-saturation
|
| הדופק במנוחה | הדופק היומי במנוחהdaily-resting-heart-rate
|
| טמפרטורת העור | Daily Sleep Temperature Derivationsdaily-sleep-temperature-derivations
|
| מרחק | מרחקdistance
|
| אק"ג | Electrocardiogram (ECG)electrocardiogram
|
| פעילות מוקלטת | תרגילexercise
|
| קומות | קומותfloors
|
| אוכל | אוכלfood
|
| אוכל | אוכלfood
|
| יחידת מידה של מזון | יחידת מידה של מזוןfood-measurement-unit
|
| יחידת מידה של מזון | יחידת מידה של מזוןfood-measurement-unit
|
| דופק | Heart Rate (דופק)heart-rate
|
| HRV Intraday | שונות קצב הלבheart-rate-variability
|
| התראות על הפרעת קצב (IRN) | התראה על הפרעת קצב (IRN)irregular-rhythm-notification
|
| יומן ארוחות | יומן תזונהnutrition-log
|
| יומן ארוחות | יומן תזונהnutrition-log
|
| SpO2 Intraday | רמת החמצן בדםoxygen-saturation
|
| ערך ה-VO2 Max כשהמשתמש רץ | Run VO2 Maxrun-vo2-max
|
| סדרת זמן של דקות בישיבה | תקופה של חוסר פעילותsedentary-period
|
| שינה | שינהsleep
|
| שלבים | שלביםsteps
|
| סדרת זמנים של פעילות: חתירות בשחייה | נתוני אורך הבריכהswim-lengths-data
|
פעילות caloriesOut |
Total Caloriestotal-calories
|
| ערך צריכת החמצן המרבית (VO2 max) | VO2 Maxvo2-max
|
| משקל | משקלweight
|
נקודות קצה
נקודות הקצה של REST משתמשות בתחביר עקבי לכל סוגי הנתונים.
- נקודת קצה של שירות: כתובת ה-URL הבסיסית של HTTP משתנה ל-https://health.googleapis.com.
- תחביר של נקודת קצה: Google Health API תומך במספר מוגבל של נקודות קצה, שאפשר להשתמש בהן ברוב סוגי הנתונים הנתמכים. כך יש תחביר עקבי לכל סוגי הנתונים, וקל יותר להשתמש בנקודות הקצה.
- מזהה משתמש: צריך לציין את מזהה המשתמש או את המילה me בתחביר של נקודת הקצה. כשמשתמשים ב-me, מזהה המשתמש נגזר מאסימון הגישה.
דוגמה: דוגמה לקריאה לנקודת הקצה GET Profile באמצעות Google Health API
GET https://health.googleapis.com/v4/users/me/profile
מיפוי נקודות קצה
בטבלה סוגי הנתונים של Google Health API מפורטים סוגי הנתונים שזמינים ושיטות ה-API שהם תומכים בהן.
| Fitbit Web API Endpoint Type | Google Health API |
| GET (Log | Summary | Daily Summary) where you are requesting a single day of data | dailyRollup עם windowSize = יום אחד |
| GET (במהלך היום) כשמבקשים נתונים מפורטים | שיטת list |
| GET (Time Series) by Date or Interval | השיטה rollUp או dailyRollUp כולל טווח תאריכים |
| GET (רשימת יומנים) | שיטת list |
| יצירה ועדכון של יומנים | שיטת patch |
| מחיקת יומנים | השיטה batchDelete |
| GET Profile | 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 מציג את כל המינויים |