Die Isochrones API gibt Fehler im standardmäßigen Google Cloud-JSON-Format google.rpc.Status zurück:
{
"error": {
"code": 400,
"message": "Violation in GenerateIsochroneRequest.travel_duration: travel_duration must be at least 1 second and not exceed 3600 seconds (60 minutes) for DRIVE or TWO_WHEELER mode or 7200 seconds (120 minutes) for other modes",
"status": "INVALID_ARGUMENT"
}
}
Verwenden Sie das Feld status (oder HTTP code), um Fehler programmatisch zu beheben. Der Text message ist für Entwickler gedacht und kann sich ändern. Er sollte daher nicht geparst werden.
Bei der Arbeit mit der Isochrones API können die folgenden häufigen Fehlerstatuscodes auftreten:
400 INVALID_ARGUMENT: Die Anfrage enthält ungültige Parameter oder eine fehlerhafte Syntax:- Dauerbegrenzungen: Achten Sie darauf, dass
travelDurationmindestens"1s"beträgt, mit"s"endet (z. B."1800s") und das Limit für den Modus nicht überschreitet:3600s(60 Minuten) fürDRIVEundTWO_WHEELERoder7200s(120 Minuten) fürWALKundBICYCLE. Null ("0s"), negative Werte und Werte unter einer Sekunde (z. B."0.5s") werden abgelehnt. - Traffic-Präferenz: Achten Sie darauf, dass
routingPreferencenicht aufTRAFFIC_AWAREfestgelegt ist, wenntravelModeden WertWALKoderBICYCLEhat. Live-Traffic wird nur fürDRIVEundTWO_WHEELERunterstützt. - Erforderliche Enums: Achten Sie darauf, dass sowohl
travelModeals auchtravelDirection(FROModerTO) angegeben sind und nicht auf*_UNSPECIFIEDfestgelegt sind. - Ursprungskoordinaten (
location): Legen Sie sowohllatitude(in[-90, 90]) als auchlongitude(in[-180, 180]) fest. Ein weggelassenes Feld wird ohne Fehler als0behandelt: Wenn Sie beide weglassen, erhalten Sie(0, 0), was abgelehnt wird. Wenn Sie nurlatitudeweglassen, wird der Ursprung auf den Äquator gelegt. Wenn Sie nurlongitudeweglassen, wird er auf den Nullmeridian gelegt. - Format der Orts-ID (
place):placemuss eine Orts-ID oder einplaces/{place_id}-Ressourcenname (z. B."places/ChIJIQBpAG2ahYAR_6128GcTUEo") ohne zusätzliche Pfadsegmente sein und auf eine gültige Orts-ID verweisen. - Feldmaske (
X-Goog-FieldMask): Falls angegeben, muss der Header auf gültige Antwortpfade wieisochrone,isochrone.geoJsonoder*verweisen. - Ungültiger API-Schlüssel (
API_KEY_INVALID): Ein fehlerhafter oder nicht erkannter API-Schlüssel inX-Goog-Api-Keyoder?key=gibt400 INVALID_ARGUMENTmit dem GrundAPI_KEY_INVALIDzurück.
- Dauerbegrenzungen: Achten Sie darauf, dass
403 PERMISSION_DENIED: Authentifizierung oder Autorisierung fehlgeschlagen:- In der Anfrage wurden keine Authentifizierungsdaten (
X-Goog-Api-Key-,?key=- oderAuthorization: Bearer-Token) angegeben. - Die Isochrones API (
isochrones.googleapis.com) ist in Ihrem Google Cloud-Projekt nicht aktiviert oder die Abrechnung ist nicht aktiviert. - Für Ihren API-Schlüssel gelten Einschränkungen für API-Ziele, IP-Adressen oder HTTP-Referrer, die Anfragen an
isochrones.googleapis.comblockieren.
- In der Anfrage wurden keine Authentifizierungsdaten (
404 NOT_FOUND: Der Startpunkt konnte nicht aufgelöst oder am Straßennetz ausgerichtet werden:placekonnte keinem Standort zugeordnet werden. Prüfen Sie, ob die Orts-ID gültig und aktuell ist.- Der Schwerpunkt des Startpunkts
locationoderplaceliegt weiter von einem für den Modus kompatiblen Straßensegment entfernt als die maximale Einrastentfernung (ca. 200 Meter oder weniger fürWALKundBICYCLE). Verschieben Sie die Koordinate näher an eine öffentliche Straße oder übergeben Sie die Koordinaten des Straßeneingangs anstelle der Orts-ID eines großen Parks oder einer Sehenswürdigkeit. - Die Koordinate befindet sich in einem Gebiet ohne Straßendaten (z. B. auf dem offenen Meer).
429 RESOURCE_EXHAUSTED: Ihr Projekt hat das Kontingentlimit pro Minute überschritten (standardmäßig 300 Anfragen pro Minute):{ "error": { "code": 429, "message": "Quota exceeded for quota metric 'Requests' and limit 'Requests per minute' of service 'isochrones.googleapis.com'.", "status": "RESOURCE_EXHAUSTED" } }Drosseln Sie die Anforderungsraten von Clients und wiederholen Sie
429-Antworten mit exponentiellem Backoff mit zufälligem Jitter.503 UNAVAILABLE: Der Dienst ist vorübergehend nicht verfügbar oder überlastet. Wiederholen Sie die Anfrage mit exponentiellem Backoff.500 INTERNAL: Ein interner Serverfehler ist aufgetreten, z. B. eine Backend-Zeitüberschreitung. Wiederholen Sie die Anfrage mit exponentiellem Backoff.