La section "Spécification de l'API" fournit une présentation détaillée des composants techniques essentiels à l'intégration à la plate-forme, y compris les niveaux d'autorisation, les définitions de types de données et les structures de points de terminaison. Cette API représente une évolution stratégique de l'ancienne API Fitbit Web. Elle a été reconstruite sur une infrastructure moderne pour garantir une expérience de développement plus stable et cohérente.
Niveaux d'accès
Vous devez mettre à jour votre demande d'autorisation pour utiliser les niveaux d'accès de l'API Google Health. Les niveaux d'accès définissent si votre application accepte les opérations de lecture ou d'écriture. Suivez les instructions d'implémentation des habilitations, qui spécifient de ne demander que les habilitations nécessaires, de configurer l'accès en écriture uniquement lors de l'envoi de données et de gérer correctement le consentement partiel.
Les champs d'application de l'API Google Health sont des URL HTTP commençant par https://www.googleapis.com/auth/googlehealth.{scope}. Par exemple, https://www.googleapis.com/auth/googlehealth.activity_and_fitness.writeonly.
Mappages de portée
Voici comment les champs d'application de l'API Fitbit Web correspondent à ceux de l'API Google Health :
| Niveaux d'accès à l'API Fitbit Web | Champs d'application de l'API Google Health |
|---|---|
| activité | .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 |
| électrocardiogramme | .ecg.readonly
|
| fréquence cardiaque | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
| irregular_rhythm_notifications | .irn.readonly
|
| position | .location.readonly
|
| nutrition | .nutrition.readonly
.nutrition.writeonly |
| oxygen_saturation | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
| profil | .profile.readonly
.profile.writeonly |
| respiratory_rate | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
| paramètres | .settings.readonly
.settings.writeonly |
| sommeil | .sleep.readonly
.sleep.writeonly |
| température | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
| weight | .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly |
Types de données
Vous trouverez ci-dessous la liste des types de données de l'API Google Santé et leur correspondance avec l'API Fitbit Web.
Pour en savoir plus sur la façon dont les données sont signalées pour ces types, consultez le guide sur la présence des données et les vrais zéros. Ce guide fournit des informations sur l'inactivité et le filtrage sur le poignet.
| Type de données de l'API Web Fitbit | Type de données de l'API Google HealthdataType |
|---|---|
| Calories d'activité | Énergie active dépenséeactive-energy-burned
|
| Minutes en zone active | Minutes en zone activeactive-zone-minutes
|
| Contient les modifications apportées aux niveaux d'activité de l'utilisateur | Niveau d'activitéactivity-level
|
| Élévation | Altitudealtitude
|
| Taux de glycémie | Glycémieblood-glucose
|
| Masse grasse | Masse grassebody-fat
|
caloriesOut dans chaque zone de fréquence cardiaque |
Calories brûlées dans la zone de fréquence cardiaquecalories-in-heart-rate-zone
|
| Température (corporelle) | Température corporellecore-body-temperature
|
| Récapitulatif de la VFC | Variabilité quotidienne de la fréquence cardiaquedaily-heart-rate-variability
|
| Récapitulatif de la SpO2 | Saturation en oxygène quotidiennedaily-oxygen-saturation
|
| Fréquence cardiaque au repos | Fréquence cardiaque au repos quotidiennedaily-resting-heart-rate
|
| Température cutanée | Dérivations quotidiennes de la température du sommeildaily-sleep-temperature-derivations
|
| Distance | Distancedistance
|
| Électrocardiogramme (ECG) | Électrocardiogramme (ECG)electrocardiogram
|
| Activité enregistrée | Exerciseexercise
|
| Étages | Étagesfloors
|
| Nourriture | Nourriturefood
|
| Unité de mesure des aliments | Unité de mesure des alimentsfood-measurement-unit
|
| Fréquence cardiaque | Fréquence cardiaqueheart-rate
|
| VFC intrajournalière | Variabilité de la fréquence cardiaqueheart-rate-variability
|
| Notifications de rythme irrégulier | Notification de rythme irrégulierirregular-rhythm-notification
|
| Journal d'alimentation | Journal de nutritionnutrition-log
|
| SpO2 intraday | Saturation en oxygèneoxygen-saturation
|
| Valeur de la VO2 max lorsque l'utilisateur court | VO2 max de la courserun-vo2-max
|
| Série temporelle des minutes d'inactivité sédentaire | Période sédentairesedentary-period
|
| Sommeil | Sommeilsleep
|
| Étapes | Étapessteps
|
| Séries temporelles d'activité pour les mouvements de nage | Données sur les longueurs de nageswim-lengths-data
|
Activité caloriesOut |
Total des caloriestotal-calories
|
| Valeur de la VO2 max | VO2 maxvo2-max
|
| Poids | Poidsweight
|
Points de terminaison
Les points de terminaison REST adoptent une syntaxe cohérente pour tous les types de données.
- Point de terminaison de service : l'URL HTTP de base devient https://health.googleapis.com.
- Syntaxe des points de terminaison : l'API Google Health est compatible avec un nombre limité de points de terminaison, qui peuvent être utilisés par la plupart des types de données compatibles. Cela permet d'obtenir une syntaxe cohérente pour tous les types de données et de faciliter l'utilisation des points de terminaison.
- Identifiant utilisateur : l'ID utilisateur ou "moi" doivent être spécifiés dans la syntaxe du point de terminaison. Lorsque vous utilisez "me", l'ID utilisateur est déduit du jeton d'accès.
Exemple : Voici un exemple de point de terminaison GET Profile appelé à l'aide de l'API Google Health.
GET https://health.googleapis.com/v4/users/me/profile
Mappages des points de terminaison
Consultez le tableau Types de données de l'API Google Health pour obtenir la liste des types de données disponibles et des méthodes d'API qu'ils prennent en charge.
| Type de point de terminaison de l'API Web Fitbit | API Google Health |
| GET (Log | Summary | Daily Summary) where you are requesting a single day of data | Méthode dailyRollup avec windowSize = 1 jour |
| GET (intraday) lorsque vous demandez des données précises | Méthode list |
| GET (série temporelle) par date ou intervalle | Méthode rollUp ou dailyRollUp incluant une plage de dates |
| GET (liste des journaux) | Méthode list |
| Journaux CREATE et UPDATE | Méthode patch |
| Journaux DELETE | Méthode batchDelete |
| GET Profile | users.getProfile renvoie les informations spécifiques de l'utilisateur.
users.getSettings renvoie les unités et les fuseaux horaires de l'utilisateur. |
| MODIFIER le profil | users.updateProfile modifie les informations spécifiques de l'utilisateur.
users.updateSettings modifie les unités et les fuseaux horaires de l'utilisateur. |
| Obtenir l'ID utilisateur | users.getIdentity renvoie l'ancien ID utilisateur Fitbit et l'ID utilisateur Google de l'utilisateur. |
| Obtenir des appareils | users.pairedDevices renvoie la liste des appareils associés. |
| Créer des abonnements | projects.subscribers.subscriptions.create crée manuellement un abonnement. |
| Supprimer des abonnements | projects.subscribers.subscriptions.delete supprime un abonnement. |
| Obtenir la liste des abonnements | projects.subscribers.subscriptions.list liste tous les abonnements. |