In diesem Leitfaden wird beschrieben, wie Sie häufige Probleme bei der Verwendung der Google Health API beheben.
4xx-Clientfehler
4xx-Statuscodes werden zurückgegeben, wenn ein Problem im Client-App-Code vorliegt. Weitere Informationen zum Problem finden Sie in den Elementen des Antworttexts.
400 Fehlerhafte Anfrage
| Nachricht | Beschreibung | Empfehlung |
|---|---|---|
| Die Anfrage enthält ein ungültiges Argument. | Die Datentyp-ID {Wert} wird nicht unterstützt. | Prüfen Sie, ob der referenzierte Datentyp vom Endpunkt unterstützt wird. |
| Ungültige JSON-Nutzlast empfangen. Oktal-/Hexadezimalzahlen sind keine gültigen JSON-Werte. | Der Endpunkt dailyRollUp unterstützt keine Monats- und Tageswerte, die als MM bzw. TT dargestellt werden. Einstellige Zahlen dürfen keine führende 0 (Null) haben. |
|
| Ungültige Projektnummer im Ressourcennamen | Beim Löschen oder Aktualisieren eines Abonnenten wird in der Anfrage-URL die Google Cloud-Projekt-ID anstelle der Projektnummer verwendet. Dies gilt für Webhook-Abos, die den Endpunkt projects.subscribers verwenden. |
Verwenden Sie in der Anfrage-URL Ihre Google Cloud-Projektnummer und nicht die Projekt-ID. |
401 Nicht autorisiert
| Nachricht | Beschreibung | Empfehlung |
|---|---|---|
| Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential (Die Anmeldedaten für die Authentifizierung der Anfrage sind ungültig. OAuth 2-Zugriffstoken, Anmeldecookie oder andere gültige Anmeldedaten zur Authentifizierung erwartet) | INVALID_AUTHENTICATOR: Token expired (Ungültiger Authentifikator: Token abgelaufen) | Ihr Zugriffstoken ist abgelaufen. Verwenden Sie das Aktualisierungstoken, um ein neues Zugriffstoken und ein neues Aktualisierungstoken zu erhalten. Alternativ kann der Nutzer der Anwendung noch einmal zustimmen. |
403 Verboten
| Nachricht | Beschreibung | Empfehlung |
|---|---|---|
| Das Dienstkonto hat keine Berechtigung. | Beim Erstellen oder Auflisten von Abonnenten wird in der Anfrage-URL die Google Cloud-Projekt-ID anstelle der Projektnummer verwendet. Dies gilt für Webhook-Abos, die den Endpunkt projects.subscribers verwenden. |
Verwenden Sie in der Anfrage-URL Ihre Google Cloud-Projektnummer und nicht die Projekt-ID. |
| Das Dienstkonto hat keine Berechtigung. | UberMint konnte nicht aus GaiaMint erstellt werden. | Der Nutzer konnte den Autorisierungsvorgang abschließen, aber der Endpunktaufruf ist fehlgeschlagen. Das kann passieren, wenn ein älteres Fitbit-Konto anstelle eines Google-Kontos der App zustimmt. So beheben Sie diesen Fehler:
|
404 Nicht gefunden
| Nachricht | Beschreibung | Empfehlung |
|---|---|---|
Die angeforderte URL /v4/users/me/dataTypes/{dataType}/dataPoints wurde auf diesem Server nicht gefunden. |
Mögliche Ursachen:
|
Fitbit-Nutzer-ID abrufen
Zur Fehlerbehebung bei einem Nutzerproblem müssen Sie möglicherweise das Google-Konto des Nutzers überprüfen, der in der mobilen Fitbit App angemeldet ist.
So rufen Sie die Fitbit-Nutzer-ID ab:
- Öffnen Sie die mobile Fitbit App.
- Tippen Sie rechts unten auf das Symbol Mein YouTube.
- Tippen Sie oben auf die Kachel mit dem Namen des Nutzers und dem Datum der Registrierung auf den Link Profil bearbeiten.
- Sehen Sie sich den Bereich ganz unten auf der Seite an. Im Abschnitt Mein Konto ist der Wert , der der ID zugewiesen ist, die Fitbit-Nutzer-ID. Beispiel: CV5TKH
Einwilligung für eine App widerrufen
Wenn Sie einem Nutzer bei der Fehlerbehebung bei der OAuth2-Verbindung zu Ihrer App helfen, müssen Sie ihn möglicherweise bitten, die Verknüpfung seines Kontos mit Ihrer App aufzuheben und den Autorisierungsvorgang noch einmal zu durchlaufen.
So heben Sie die Verknüpfung des Google-Kontos mit Ihrer App auf:
- Öffnen Sie die mobile Fitbit App.
- Tippen Sie rechts oben auf das Fitbit-Nutzerprofilsymbol.
- Tippen Sie auf Google-Konto verwalten.
- Wählen Sie die Kachel Daten und Datenschutz aus.
- Scrollen Sie nach unten zum Abschnitt **Daten aus Apps und Diensten, die Sie nutzen**. Wählen Sie unter Apps und Dienste die Option Drittanbieter-Apps und ‑Dienste aus.
- Suchen Sie in der Liste der verbundenen Apps nach dem Namen Ihrer App und lassen Sie den Nutzer sie auswählen.
- Tippen Sie auf Alle Verbindungen mit <App-Name> löschen.
- Lassen Sie den Nutzer auf „Bestätigen“ tippen, um die Einwilligung für Ihre App zu widerrufen.
Nach Abschluss des Widerrufsvorgangs wird der Nutzer zur Seite Drittanbieter-Apps und ‑Dienste zurückgeleitet. Möglicherweise muss der Nutzer die Seite aktualisieren, damit der App-Name aus der Liste entfernt wird.
Verzögerungen bei der Gerätesynchronisierung beheben
Bei der Fehlerbehebung bei Problemen mit fehlenden oder verzögerten Nutzerdaten ist es hilfreich, das Modell des gekoppelten Geräts des Nutzers und das Datum der letzten Synchronisierung zu überprüfen.
Die Modellinformationen (z. B. ein Fitbit-Tracker oder eine Fitbit-Smartwatch) und das Datum der letzten Synchronisierung sind nützlich für die Fehlerbehebung und zum Abrufen von Verlaufsdaten nach Verzögerungen bei der Synchronisierung.
Beispiel: Wenn Sie eine unerwartete Lücke oder Verzögerung bei der Datenübermittlung feststellen:
- Prüfen Sie, ob die von Ihnen abgefragte Nutzer-ID mit der Nutzer-ID des Fitbit
Kontos übereinstimmt, das in der mobilen App angemeldet ist. Informationen zum Abrufen der Nutzer-ID in der mobilen
App finden Sie unter Fitbit-Nutzer-ID abrufen.
Rufen Sie den
getIdentityEndpunkt auf, um die Nutzer-ID aus dem Zugriffstoken abzurufen. - Prüfen Sie die letzte Synchronisierungszeit, um festzustellen, wann das Gerät des Nutzers zuletzt mit der mobilen Google Health App synchronisiert wurde.
- Wenn das Gerät in letzter Zeit nicht synchronisiert wurde, liegt die Verzögerung wahrscheinlich daran, dass das Gerät offline ist oder nicht mit der mobilen App synchronisiert wird, und nicht an einem API-Problem.
- Sobald der Nutzer die mobile App öffnet und sein Gerät synchronisiert, können Sie Verlaufsdaten für den Zeitraum seit der letzten Synchronisierung abrufen.
Rufen Sie den
users.pairedDevices.list
Endpunkt auf, um Informationen zum gekoppelten Gerät eines Nutzers abzurufen. Dadurch wird eine Liste von Geräten mit folgenden Informationen zurückgegeben:
deviceVersion: Der Produktname oder das Modell des Geräts (z. B. „Charge 6“).lastSyncTime: Der Zeitstempel der letzten erfolgreichen Synchronisierung.