API-Spezifikationen

Im Abschnitt „API-Spezifikation“ finden Sie einen detaillierten Überblick über die technischen Komponenten, die für die Integration in die Plattform erforderlich sind, einschließlich Autorisierungsbereichen, Datentypdefinitionen und Endpunktstrukturen. Diese API stellt eine strategische Weiterentwicklung der alten Fitbit Web API dar. Sie wurde auf einer modernen Infrastruktur neu aufgebaut, um eine stabilere und konsistentere Entwicklerumgebung zu gewährleisten.

Bereiche

Sie müssen Ihre Autorisierungsanfrage aktualisieren, um die Google Health API-Bereiche zu verwenden. Die Bereiche definieren, ob Ihre App Lese- oder Schreibvorgänge unterstützt. Verwenden Sie keine Bereiche, die für Ihre App nicht erforderlich sind. Sie können später jederzeit weitere Bereiche hinzufügen, wenn sich das Design Ihrer App ändert.

Die Google Health API-Bereiche sind HTTP-URLs, die mit https://www.googleapis.com/auth/googlehealth.{scope} beginnen. Beispiel: https://www.googleapis.com/auth/googlehealth.activity_and_fitness.writeonly.

Bereichszuordnungen

So werden die Fitbit Web API-Bereiche den Google Health API-Bereichen zugeordnet:

Tabelle: Zuordnung von Fitbit Web API-Bereichen zu Google Health API-Bereichen
Fitbit Web API-Bereiche Google Health API-Bereiche
Aktivität .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
Elektrokardiogramm .ecg.readonly
Herzfrequenz .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
irregular_rhythm_notifications .irn.readonly
Standort .location.readonly
Ernährung .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
Einstellungen .settings.readonly
.settings.writeonly
Schlaf .sleep.readonly
.sleep.writeonly
Temperatur .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
Gewicht .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly

Datentypen

Hier finden Sie eine Liste der Google Health API-Datentypen und wie sie der Fitbit Web API zugeordnet werden.

Tabelle: Zuordnung von Fitbit Web API-Datentypen zu Google Health API-Datentypen
Fitbit Web API-Datentyp Google Health API-Datentyp
  dataType
Aktivitätskalorien Verbrannte aktive Kalorien
  active-energy-burned
Aktivzonen­minuten Aktivzonenminuten
  active-zone-minutes
Enthält Änderungen an den Aktivitätsstufen des Nutzers Aktivitätsniveau
  activity-level
Höhe Höhe
  altitude
Blutzucker Blutzucker
  blood-glucose
Körperfett Körperfett
  body-fat
caloriesOut in jeder Herzfrequenzzone Kalorien in Herzfrequenzzone
  calories-in-heart-rate-zone
Temperatur (Kern) Körperkerntemperatur
  core-body-temperature
HRV-Zusammenfassung Tägliche Herzfrequenzvariabilität
  daily-heart-rate-variability
SpO2-Zusammenfassung Tägliche Sauerstoffsättigung
  daily-oxygen-saturation
Ruhe­herz­frequenz Tägliche Ruheherzfrequenz
  daily-resting-heart-rate
Hauttemperatur Tägliche Ableitungen der Schlaftemperatur
  daily-sleep-temperature-derivations
Entfernung Distanz
  distance
Elektrokardiogramm (EKG) Elektrokardiogramm (EKG)
  electrocardiogram
Aufgezeichnete Aktivität Training
  exercise
Stockwerke Stockwerke
  floors
Essen Essen
  food
Maßeinheit für Lebensmittel Maßeinheit für Lebensmittel
  food-measurement-unit
Herzfrequenz Herzfrequenz
  heart-rate
HFV-Tagesverlauf Herzfrequenzvariabilität
  heart-rate-variability
Benachrichtigungen über einen unregelmäßigen Herzrhythmus Benachrichtigung über einen unregelmäßigen Herzrhythmus
  irregular-rhythm-notification
Ernährungsprotokoll Ernährungsprotokoll
  nutrition-log
SpO2-Tagesverlauf Sauerstoffsättigung
  oxygen-saturation
VO2 Max-Wert beim Laufen Maximale Sauerstoffaufnahme bei Lauf
  run-vo2-max
Zeitreihe der Aktivität – Minuten im Sitzen Inaktiver Zeitraum
  sedentary-period
Schlaf Schlaf
  sleep
Schritte Schritte
  steps
Zeitreihen für Schwimmzüge Daten zu Bahnen
  swim-lengths-data
Aktivität caloriesOut Kalorien insgesamt
  total-calories
Maximaler VO2‑Wert Maximale Sauerstoffaufnahme
  vo2-max
Gewicht Gewicht
  weight

Endpunkte

Die REST-Endpunkte verwenden für alle Datentypen eine einheitliche Syntax.

  • Dienstendpunkt: Die Basis-HTTP-URL ändert sich zu https://health.googleapis.com.
  • Endpunktsyntax: Die Google Health API unterstützt eine begrenzte Anzahl von Endpunkten, die für die meisten unterstützten Datentypen verwendet werden können. So wird eine einheitliche Syntax für alle Datentypen erreicht und die Endpunkte sind einfacher zu verwenden.
  • Nutzer-ID: In der Endpunktsyntax muss entweder die Nutzer-ID oder „me“ angegeben werden. Wenn Sie mich verwenden, wird die Nutzer-ID aus dem Zugriffstoken abgeleitet.

Beispiel: Hier ist ein Beispiel für den GET-Profil-Endpunkt, der über die Google Health API aufgerufen wird.

GET https://health.googleapis.com/v4/users/me/profile

Endpunktzuordnungen

Eine Liste der verfügbaren Datentypen und der API-Methoden, die sie unterstützen, finden Sie in der Tabelle Google Health API-Datentypen.

Fitbit Web API-Endpunkttyp Google Health API
GET (Log | Summary | Daily Summary), wenn Sie Daten für einen einzelnen Tag anfordern Methode dailyRollup mit windowSize = 1 Tag
GET (Intraday) für detaillierte Daten list-Methode
GET (Zeitreihen) nach Datum oder Intervall rollUp- oder dailyRollUp-Methode mit einem Zeitraum
GET (Log List) list-Methode
LOGS ERSTELLEN UND AKTUALISIEREN patch-Methode
Protokolle löschen Methode batchDelete
GET Profile users.getProfile gibt die spezifischen Informationen des Nutzers zurück.
users.getSettings gibt die Einheiten und Zeitzonen des Nutzers zurück.
Profil aktualisieren Mit users.updateProfile werden die spezifischen Informationen des Nutzers geändert.
users.updateSettings ändert die Einheiten und Zeitzonen des Nutzers.
Nutzer-ID abrufen users.getIdentity gibt die alte Fitbit-Nutzer-ID und die Google-Nutzer-ID des Nutzers zurück.
Geräte abrufen users.pairedDevices gibt die Liste der gekoppelten Geräte zurück.
Abos erstellen Mit projects.subscribers.subscriptions.create wird ein Abo manuell erstellt.
Abos löschen Mit projects.subscribers.subscriptions.delete wird ein Abo gelöscht.
Aboliste abrufen Mit projects.subscribers.subscriptions.list werden alle Abos aufgelistet.