Ersten Google Health API-Aufruf mit OAuth2 Playground ausführen

1. Einführung

Der OAuth 2.0 Playground ist ein webbasiertes Tool, mit dem Sie Google OAuth 2.0-Abläufe testen können, ohne Code schreiben zu müssen. In diesem Codelab erfahren Sie, wie Sie Ihr Google Cloud-Projekt einrichten, Anmeldedaten abrufen, den Autorisierungsablauf mit dem OAuth 2.0 Playground starten und Ihren ersten Aufruf an einen der Google Health API-Endpunkte senden.

Lerninhalte

  • So richten Sie eine Client-ID in der Google Cloud Console ein.
  • So führen Sie den Google OAuth 2.0-Autorisierungsablauf durch, um mit dem OAuth 2.0 Playground ein Zugriffstoken und ein Aktualisierungstoken zu erhalten.
  • So senden Sie mit dem OAuth 2.0 Playground Aufrufe an Google Health API-Endpunkte.

Voraussetzungen

So richten Sie die Fitbit App ein:

  1. Suchen Sie im Apple App Store oder im Google Play Store nach der Fitbit App und laden Sie sie herunter.
  2. Wählen Sie das App-Symbol aus.
  3. Klicken Sie auf Sign in with Google (Über Google anmelden).
  4. Wählen Sie Ihr Google-Konto aus und klicken Sie auf Weiter.

2. Google Cloud-Projekt einrichten

In der Google Cloud Console erstellen Sie eine Client-ID und aktivieren die Verwendung der Google Health API.

  1. Melden Sie sich in der Google Cloud Console an.
  2. So erstellen Sie ein neues Projekt:
    1. Klicken Sie in der Projektauswahl auf Projekt auswählen.
    2. Wählen Sie rechts oben Neues Projekt aus.
    3. Geben Sie einen Projektnamen ein.
    4. Geben Sie einen Standort ein (z. B. „Keine Organisation“).
    5. Klicken Sie auf Erstellen.
    6. Wählen Sie Ihr Projekt aus.

Google Health API aktivieren

  1. Klicken Sie links oben auf das Dreistrich-Menü:Menü
  2. Wählen Sie APIs & Dienste > Bibliothek aus.
  3. Suchen Sie nach „Google Health API“ und aktivieren Sie sie.

OAuth-Anmeldedaten einrichten

Wenn Sie sich nicht in der Google Cloud Console befinden, rufen Sie sie auf.

  1. Klicken Sie links oben auf das Dreistrich-Menü:Menü
  2. Wählen Sie APIs & Dienste > Anmeldedaten aus.
  3. Wählen Sie oben in der Mitte + Anmeldedaten erstellen > OAuth-Client-ID aus.
  4. Klicken Sie auf die Schaltfläche Zustimmungsbildschirm konfigurieren. Wenn die Meldung „Google Auth Platform noch nicht konfiguriert“ angezeigt wird, klicken Sie auf Jetzt starten.
  5. Abschnitt 1:
    1. Geben Sie einen App-Namen ein.
    2. Geben Sie eine E‑Mail-Adresse für den Nutzersupport ein.
    3. Klicken Sie auf Weiter.
  6. Abschnitt 2:
    1. Wählen Sie Extern aus.
    2. Klicken Sie auf Weiter.
  7. Abschnitt 3:
    1. Geben Sie Ihre E‑Mail-Adresse in das Feld Kontaktinformationen ein.
    2. Klicken Sie auf Weiter.
  8. Abschnitt 4:
    1. Klicken Sie auf das Kästchen, um der Google API Services User Data Policy (Richtlinie zu Nutzerdaten für Google API-Dienste) zuzustimmen.
    2. Klicken Sie auf Erstellen.
  9. Rufen Sie APIs & Dienste > Anmeldedaten auf und wählen Sie + Anmeldedaten erstellen > OAuth-Client-ID aus.
  10. Wählen Sie als Anwendungstyp Webanwendung aus.
  11. Geben Sie einen Namen für die Client-ID ein.
  12. Lassen Sie das Feld Autorisierte JavaScript-Quellen leer.
  13. Klicken Sie unter Autorisierte Weiterleitungs-URIs auf + URI hinzufügen und fügen Sie die folgenden URIs hinzu:
    • https://www.google.com
    • https://developers.google.com/oauthplayground
  14. Klicken Sie auf Erstellen.
  15. In der Google Console wird eine Meldung angezeigt, dass Ihre Client-ID erstellt wurde. Klicken Sie entweder auf den Link JSON herunterladen , um die Client-ID und den Clientschlüssel herunterzuladen, oder notieren Sie sich die Werte. Sie können den Clientschlüssel später nicht wiederherstellen.
  16. Klicken Sie auf OK. Sie kehren zur Seite „OAuth 2.0-Client-IDs“ zurück.
  17. Ihre Client-ID wird Ihrem Projekt hinzugefügt. Klicken Sie auf die Client-ID-URL, um die Details aufzurufen.

Testnutzer hinzufügen

  1. Wählen Sie links Zielgruppe aus. Der "Veröffentlichungsstatus" sollte auf Testen und der "Nutzertyp" auf Extern festgelegt sein.
  2. Klicken Sie im Abschnitt „Testnutzer“ auf die Schaltfläche + Nutzer hinzufügen. Geben Sie die E‑Mail-Adresse eines Nutzers ein, dessen Daten Sie abrufen möchten.
  3. Klicken Sie auf Speichern.

Bereiche zur Client-ID hinzufügen

  1. Wählen Sie links Datenzugriff aus.
  2. Klicken Sie auf die Schaltfläche Bereiche hinzufügen oder entfernen.
  3. Suchen Sie in der Spalte „API“ nach „Google Health API“. In diesem Codelab verwenden wir den Bereich .../auth/googlehealth.activity_and_fitness.readonly.
  4. Nachdem Sie den Bereich ausgewählt haben, klicken Sie auf Aktualisieren , um zur Seite „Datenzugriff“ zurückzukehren.
  5. Klicken Sie auf Speichern.

Sie haben die Einrichtung Ihrer Client-ID abgeschlossen.

3. Daten zur Fitbit App hinzufügen

Wenn Sie Fitbit zum ersten Mal verwenden, haben Sie möglicherweise keine Daten in Ihrem Fitbit-Konto, die Sie abfragen können. Wir fügen manuell ein Trainingsprotokoll hinzu, das wir über einen der Endpunkte abfragen können. So protokollieren Sie ein Training manuell:

  1. Öffnen Sie auf Ihrem Gerät die Fitbit App. Melden Sie sich bei Bedarf in Ihrem Fitbit-Konto an.
  2. Tippen Sie rechts unten auf dem Bildschirm auf die Schaltfläche „+“.
  3. Tippen Sie im Abschnitt „Manuell protokollieren“ auf Aktivität.
  4. Suchen Sie nach der Trainingsart Gehen und wählen Sie sie aus.
  5. Geben Sie eine Startzeit für heute ein.
  6. Ändern Sie die Dauer in 15 Minuten.
  7. Lassen Sie die Strecke bei 1,6 km.
  8. Tippen Sie auf Hinzufügen.
  9. Synchronisieren Sie die App mit den Fitbit-Servern, indem Sie lange auf den Bildschirm drücken und ihn nach unten ziehen. Wenn Sie den Finger loslassen, wird die App synchronisiert.
  10. Im Abschnitt „Aktivität“ sollte der manuell protokollierte Eintrag „Gehen“ angezeigt werden.Screenshot einer Gehaktivität.

4. Im OAuth 2.0 Playground autorisieren

Rufen Sie den OAuth 2.0 Playground auf.

Für die Google Health API müssen Sie Ihre eigenen OAuth-Anmeldedaten mit dem Playground verwenden.

  1. Klicken Sie rechts oben auf das Zahnradsymbol für die OAuth 2.0-Konfiguration.
  2. Wählen Sie Use your own OAuth credentials (Eigene OAuth-Anmeldedaten verwenden) aus.
  3. Geben Sie die OAuth-Client-ID und den OAuth-Clientschlüssel ein, die Sie bei der Einrichtung des Google Cloud-Projekts erhalten haben.

Die Playground-Oberfläche ist in drei Hauptschritte unterteilt, die wir durchlaufen:

  1. APIs auswählen und autorisieren
  2. Autorisierungscode gegen Tokens austauschen
  3. Anfrage an die API senden

APIs auswählen und autorisieren

Hier wählen Sie die API-Bereiche aus, die Sie anfordern möchten.

  1. Suchen Sie in Schritt 1 in der Liste der APIs nach Google Health API v4 und maximieren Sie sie.
  2. Wählen Sie https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly aus. Wenn der benötigte Bereich nicht in der Liste angezeigt wird, können Sie ihn manuell in das Feld „Input your own scopes“ (Eigene Bereiche eingeben) eingeben.
  3. Klicken Sie auf Authorize APIs (APIs autorisieren).
  4. Eine Anfrage wird an den OAuth 2.0-Autorisierungsendpunkt von Google gesendet. Die ausgewählten Bereiche sind in der Anfrage enthalten. Anschließend werden Sie zum Zustimmungsbildschirm des Google-Kontos weitergeleitet.
  5. Melden Sie sich mit einem Testnutzerkonto an, das Sie im Abschnitt Google Cloud-Projekt einrichten konfiguriert haben (falls Sie noch nicht angemeldet sind).
  6. Prüfen Sie die angeforderten Berechtigungen und klicken Sie auf Weiter, um den Zugriff zu gewähren.

Wenn Sie die Einwilligung erteilen, leitet Google Sie zurück zum Playground und stellt dem Tool einen Autorisierungscode zur Verfügung, der im nächsten Schritt verwendet wird.

Im Bereich Anfrage / Antwort rechts wird der vollständige HTTP-Weiterleitungsablauf angezeigt.

Die Antwort auf die erste Autorisierungsanfrage ist eine 302 Found-Weiterleitung:

HTTP/1.1 302 Found
Location: https://accounts.google.com/o/oauth2/v2/auth?redirect_uri=https%3A%2F%2Fdevelopers.google.com%2Foauthplayground&prompt=consent&response_type=code&client_id=your_client_id&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fgooglehealth.activity_and_fitness.readonly&access_type=offline

Die resultierende Anfrage, die zurück zum Playground weitergeleitet wurde, enthält den Autorisierungscode:

GET /oauthplayground/?iss=https://accounts.google.com&code=authorization_code&scope=https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly HTTP/1.1
Host: developers.google.com

Der Autorisierungscode ist der alphanumerische Wert, der durch authorization_code zwischen code= und &scope in der GET-Anfrage-URL dargestellt wird. In diesem Beispiel sieht der Wert so aus: 4/0AbPOj...

Autorisierungscode gegen Tokens austauschen

In diesem Schritt wird der Code gegen Tokens ausgetauscht, mit denen Sie API-Anfragen stellen können.

Nachdem Sie APIs auswählen und autorisieren abgeschlossen haben, wird das Feld für den Autorisierungscode im Playground automatisch ausgefüllt. So tauschen Sie ihn gegen Tokens ein:

  1. Klicken Sie in Schritt 2 auf die Schaltfläche Exchange authorization code for tokens (Autorisierungscode gegen Tokens austauschen).
  2. Die access_token und refresh_token werden rechts im Bereich Anfrage/Antwort angezeigt.

Die Antwort sollte in etwa so aussehen:

{
  "access_token": "ya29.a0AFH6S....",
  "refresh_token_expires_in": 604799,
  "expires_in": 3599,
  "token_type": "Bearer",
  "scope": "https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly",
  "refresh_token": "1/og..."
}

Aktualisierungstokens

Wenn Sie den Autorisierungscode austauschen, kann die Antwort zusätzlich zum access_token auch ein refresh_token enthalten. access_tokens sind kurzlebig (in der Regel 1 Stunde). Wenn ein access_token abläuft, müssen Sie das refresh_token verwenden, um ein neues access_token zu erhalten, ohne dass sich der Nutzer noch einmal anmelden oder die Einwilligung erteilen muss. Das ist möglich, weil wir access_type=offline in unsere Autorisierungsanfrage aufgenommen haben.

Wenn Sie in der Antwort kein refresh_token erhalten, haben Sie möglicherweise bereits die Einwilligung für diese App und diese Bereiche erteilt. Aktualisierungstokens werden in der Regel nur ausgegeben, wenn ein Nutzer zum ersten Mal die Einwilligung für Ihre App erteilt oder wenn prompt=consent zur Autorisierungs-URL hinzugefügt wird, damit der Zustimmungsbildschirm auch bei nachfolgenden Autorisierungen angezeigt wird.

Das refresh_token ist langlebig, kann aber ablaufen oder ungültig werden, wenn es 6 Monate lang nicht verwendet wird, wenn der Nutzer den Zugriff auf Ihre App widerruft oder aus anderen Gründen. Sie sollten refresh_token sicher für die zukünftige Verwendung speichern.

Bereiche aktualisieren

Wenn Ihre Anwendung später Zugriff auf zusätzliche Google Health API-Bereiche benötigt, müssen Sie den Nutzer auffordern, Ihre App noch einmal zu autorisieren und die vollständige Liste der Bereiche anzufordern (sowohl vorhandene als auch neue).

So aktualisieren Sie Bereiche in der Autorisierungsanfrage Ihrer Anwendung:

  1. Ermitteln Sie die vollständige Liste der Bereiche, die Ihre Anwendung benötigt.
  2. Ändern Sie den Parameter scope in der Autorisierungs-URL, um die aktualisierte, durch Leerzeichen getrennte Liste der Bereichswerte einzufügen.
  3. Hängen Sie prompt=consent an Ihre Authentifizierungs-URI-Parameter an. Wenn prompt=consent enthalten ist, wird der Zustimmungsbildschirm jedes Mal angezeigt, wenn Ihre App die Autorisierung von Bereichen anfordert. Der Nutzer wird dann aufgefordert, die aktualisierte Liste zu genehmigen.

Sobald der Nutzer die Einwilligung erteilt hat, erhalten Sie einen neuen Autorisierungscode, der gegen Tokens für die vollständige Liste der Bereiche eingetauscht werden kann.

5. Anfrage an die API senden

Sie können jetzt mit Ihrem Zugriffstoken Anfragen an die Google Health API senden. Konfigurieren Sie in Schritt 3 im Playground Ihre HTTP-Anfrage, indem Sie den Anfrage-URI, die HTTP-Methode, die Header und den Anfragetext angeben.

  1. Legen Sie für HTTP-Methode die Option GET fest.
  2. Legen Sie für Anfrage-URI die Option https://health.googleapis.com/v4/users/me/dataTypes/exercise/dataPoints fest.
  3. Klicken Sie auf Anfrage senden.

Die Antwort sollte in etwa so aussehen:

{
  "dataPoints": [
    {
      "name": "users/2515055256096816351/dataTypes/exercise/dataPoints/8896720705097069096",
      "dataSource": {
        "recordingMethod": "MANUAL",
        "platform": "FITBIT"
      },
      "exercise": {
        "interval": {
          "startTime": "2026-02-23T13:10:00Z",
          "startUtcOffset": "-18000s",
          "endTime": "2026-02-23T13:25:00Z",
          "endUtcOffset": "-18000s"
        },
        "exerciseType": "WALKING",
        "metricsSummary": {
          "caloriesKcal": 16,
          "distanceMillimiters": 1609344,
          "steps": "2038",
          "averagePaceSecondsPerMeter": 0.55923407301360051,
          "activeZoneMinutes": "0"
        },
        "exerciseMetadata": {},
        "displayName": "Walk",
        "activeDuration": "900s",
        "exerciseEvents": [
          {
            "eventTime": "2026-02-23T13:10:00Z",
            "eventUtcOffset": "-18000s",
            "exerciseEventType": "START"
          },
          {
            "eventTime": "2026-02-23T13:25:00Z",
            "eventUtcOffset": "-18000s",
            "exerciseEventType": "STOP"
          }
        ],
        "updateTime": "2026-02-24T01:19:22.450466Z"
      }
    },
    {
      "name": "users/2515055256096816351/dataTypes/exercise/dataPoints/5870930690409355408",
      "dataSource": {
        "recordingMethod": "MANUAL",
        "platform": "FITBIT"
      },
      "exercise": {
        "interval": {
          "startTime": "2026-02-23T06:00:00Z",
          "startUtcOffset": "-18000s",
          "endTime": "2026-02-23T06:15:00Z",
          "endUtcOffset": "-18000s"
        },
        "exerciseType": "WALKING",
        "metricsSummary": {
          "caloriesKcal": 17,
          "distanceMillimiters": 1609344,
          "steps": "2038",
          "averagePaceSecondsPerMeter": 0.55923407301360051,
          "averageHeartRateBeatsPerMinute": "81",
          "activeZoneMinutes": "0",
          "heartRateZoneDurations": {
            "lightTime": "900s"
          }
        },
        "exerciseMetadata": {},
        "displayName": "Walk",
        "activeDuration": "900s",
        "exerciseEvents": [
          {
            "eventTime": "2026-02-23T06:00:00Z",
            "eventUtcOffset": "-18000s",
            "exerciseEventType": "START"
          },
          {
            "eventTime": "2026-02-23T06:15:00Z",
            "eventUtcOffset": "-18000s",
            "exerciseEventType": "STOP"
          }
        ],
        "updateTime": "2026-02-23T08:29:39.480437Z"
      }
    }
  ],
  "nextPageToken": ""
}

Viele Endpunkte unterstützen Suchparameter zum Filtern oder für die Paginierung. Wenn Sie beispielsweise Trainings in einem bestimmten Zeitraum auflisten möchten, ändern Sie den Anfrage-URI so, dass er einen Filterparameter enthält:

https://health.googleapis.com/v4/users/me/dataTypes/exercise/dataPoints?filter=exercise.interval.civil_start_time >= "2026-02-22T00:00:00"

Klicken Sie noch einmal auf Anfrage senden , um die gefilterten Ergebnisse zu sehen.

6. Glückwunsch

Glückwunsch!

Sie haben das grundlegende Codelab abgeschlossen und gelernt, wie Sie den OAuth 2.0 Playground verwenden, um die OAuth 2.0-Autorisierung zu testen und Aufrufe an Google Health API-Endpunkte zu senden.

Wir wünschen Ihnen viel Erfolg beim Entwickeln von Apps, die in das Google Health API-Ökosystem eingebunden werden. Weitere Informationen finden Sie in der Referenzdokumentation zu anderen Google Health API-Endpunkten und im Dokument Verwenden von OAuth 2.0 für Webserveranwendungen.