Wenn die Routes API eine Route berechnet, werden die von Ihnen angegebenen Wegpunkte und Konfigurationsparameter als Eingabe verwendet. Die API gibt dann eine Antwort zurück, die die Standardroute und eine oder mehrere alternative Routen enthält.
Je nach den von Ihnen angeforderten Feldern kann Ihre Antwort verschiedene Arten von Routen und andere Daten enthalten:
| So fügen Sie dies in die Antwort ein | Siehe diese Dokumentation |
|---|---|
| Die kraftstoff- oder energieeffizienteste Route basierend auf dem Motortyp des Fahrzeugs. | Umweltfreundliche Routen konfigurieren |
| Bis zu drei alternative Routen | Alternative Routen anfordern |
| Die Polylinie für eine gesamte Route, für jeden Abschnitt einer Route und für jeden Schritt eines Abschnitts. | Routenpolylinien anfordern |
| Die geschätzten Mautgebühren unter Berücksichtigung aller Mautrabatte oder -pässe, die dem Fahrer oder Fahrzeug zur Verfügung stehen. | Mautgebühren berechnen |
| Lokalisierte Antworten nach Sprachcodes und Maßeinheit (US-amerikanische imperiale Einheiten oder metrisches System). | Lokalisierte Werte anfordern |
Wenn Sie die Navigationsanweisungen als HTML-Textstring formatieren möchten, fügen Sie HTML_FORMATTED_NAVIGATION_INSTRUCTIONS zu
extraComputations hinzu. |
Zusätzliche Berechnungen |
Die vollständige Liste der Eingabeoptionen finden Sie unter Verfügbare Routenoptionen und Anfragetext.
Anhand der Antwort können Sie Ihren Kunden die Informationen zur Verfügung stellen, die sie benötigen, um die passende Route für ihre Anforderungen auszuwählen.
Feldmasken
Wenn Sie eine Methode zum Berechnen einer Route aufrufen, müssen Sie eine Feldmaske angeben, die definiert, welche Felder in der Antwort zurückgegeben werden sollen. Es gibt keine Standardliste der zurückgegebenen Felder. Wenn Sie diese Liste weglassen, geben die Methoden einen Fehler zurück.
In den Beispielen in diesem Dokument wird das gesamte Antwortobjekt ohne Berücksichtigung von Feldmasken gezeigt. In einer Produktionsumgebung enthält Ihre Antwort nur die Felder, die Sie explizit in der Feldmaske angeben.
Weitere Informationen finden Sie unter Auszuwählende Informationen.
Urheberrechtsvermerke anzeigen
Sie müssen die folgende Urheberrechtserklärung einfügen, wenn Sie Ihren Nutzern die Ergebnisse anzeigen:
Powered by Google, ©YEAR Google
Beispiel:
Powered by Google, ©2023 Google
Routen, Abschnitte und Schritte
Bevor Sie sich die von der Routes API zurückgegebene Antwort ansehen, sollten Sie die Komponenten kennen, aus denen eine Route besteht:

Ihre Antwort kann Informationen zu jeder dieser Routenkomponenten enthalten:
Route: Die gesamte Fahrt vom Startwegpunkt über alle Zwischenwegpunkte zum Zielwegpunkt. Eine Route besteht aus einem oder mehreren Abschnitten.
Abschnitt: Der Weg von einem Wegpunkt in einer Route zum nächsten Wegpunkt in der Route. Jeder Abschnitt besteht aus einem oder mehreren einzelnen Schritten.
Eine Route enthält einen separaten Abschnitt für den Weg von jedem Wegpunkt zum nächsten. Wenn die Route beispielsweise einen Start- und einen Zielwegpunkt enthält, besteht sie aus einem einzigen Abschnitt. Für jeden zusätzlichen Wegpunkt, den Sie der Route nach dem Start- und Zielwegpunkt hinzufügen, ein sogenannter Zwischenwegpunkt, fügt die API einen separaten Abschnitt hinzu.
Die API fügt keinen Abschnitt für einen Durchgangs-Zwischenwegpunkt hinzu. Eine Route, die einen Startwegpunkt, einen Durchgangs-Zwischenwegpunkt und einen Zielwegpunkt enthält, besteht beispielsweise nur aus einem Abschnitt vom Start- zum Zielwegpunkt, wobei der Zwischenwegpunkt durchfahren wird. Weitere Informationen zu Durchgangs-Wegpunkten finden Sie unter Durchgangs-Wegpunkt definieren.
Schritt: Eine einzelne Anweisung entlang des Abschnitts einer Route. Ein Schritt ist die kleinste Einheit einer Route. Ein Schritt kann beispielsweise „Links abbiegen in die Hauptstraße“ lauten.
Inhalt der Antwort
Das JSON-Objekt das die API-Antwort darstellt, enthält die folgenden Eigenschaften der obersten Ebene:
routes, ein Array mit Elementen vom Typ Route. Das Arrayroutesenthält ein Element für jede von der API zurückgegebene Route. Das Array kann maximal fünf Elemente enthalten: die Standardroute, die umweltfreundliche Route und bis zu drei alternative Routen.geocodingResults, ein Array mit Elementen vom Typ GeocodingResults. Für jeden Ort in der Anfrage (Start-, Ziel- oder Zwischen wegpunkt), den Sie als Adressstring oder als Plus Code, angegeben haben, führt die API eine Orts-ID-Suche durch. Jedes Element dieses Arrays enthält die Orts-ID, die einem Ort entspricht. Orte in der Anfrage, die als Orts-ID oder als Breiten-/Längengradkoordinaten angegeben wurden, sind nicht enthalten. Wenn Sie alle Orte mit Orts-IDs oder Breiten- und Längengradkoordinaten angegeben haben, wird dieses Array nicht bereitgestellt.fallbackInfovom Typ FallbackInfo. Wenn die API keine Route aus allen Eingabeattributen berechnen kann, kann sie auf eine andere Berechnungsmethode zurückgreifen. Wenn der Fallback-Modus verwendet wird, enthält dieses Feld detaillierte Informationen zur Fallback-Antwort. Andernfalls ist dieses Feld nicht festgelegt.
Die Antwort hat das folgende Format:
{ // The routes array. "routes": [ { object (Route) } ], // The place ID lookup results. "geocodingResults": [ { object (GeocodedWaypoint) } ], // The fallback property. "fallbackInfo": { object (FallbackInfo) } }
Das Array „routes“ entschlüsseln
Die Antwort enthält das routes Array, wobei jedes Array-Element vom Typ
Route ist.
Jedes Array-Element stellt eine gesamte Route vom Start- zum Zielort dar. Die API gibt immer mindestens eine Route zurück, die als Standardroute bezeichnet wird.
Sie können zusätzliche Routen anfordern. Wenn Sie eine
umweltfreundliche Route anfordern, kann das Array zwei Elemente enthalten: die
Standardroute und die umweltfreundliche Route. Alternativ können Sie in der Anfrage computeAlternativeRoutes auf true setzen, um der Antwort bis zu drei alternative Routen hinzuzufügen.
Jede Route im Array wird mit der Array-Eigenschaft routeLabels identifiziert:
| Wert | Beschreibung |
|---|---|
DEFAULT_ROUTE |
Kennzeichnet die Standardroute. |
FUEL_EFFICIENT |
Kennzeichnet die umweltfreundliche Route. |
DEFAULT_ROUTE_ALTERNATE |
Gibt eine alternative Route an. |
Das Array legs enthält die Definition der einzelnen Abschnitte der Route. Die übrigen
Eigenschaften wie distanceMeters, duration und polyline, enthalten
Informationen zur Route als Ganzes:
{ "routeLabels": [ enum (RouteLabel) ], "legs": [ { object (RouteLeg) } ], "distanceMeters": integer, "duration": string, "routeLabels": [string], "staticDuration": string, "polyline": { object (Polyline) }, "description": string, "warnings": [ string ], "viewport": { object (Viewport) }, "travelAdvisory": { object (RouteTravelAdvisory) } "routeToken": string }
Aufgrund der aktuellen Fahrbedingungen und anderer Faktoren können die Standardroute und die umweltfreundliche Route identisch sein. In diesem Fall enthält das Array routeLabels beide Labels: DEFAULT_ROUTE und FUEL_EFFICIENT.
{ "routes": [ { "routeLabels": [ "DEFAULT_ROUTE", "FUEL_EFFICIENT" ], … } ] }
Das Array „legs“ verstehen
Jede route in der Antwort enthält ein legs Array, wobei jedes legs Array
Element vom Typ
RouteLeg ist.
Jeder Abschnitt im Array definiert den Weg von einem Wegpunkt zum nächsten Wegpunkt entlang der Route. Eine Route enthält immer mindestens einen Abschnitt.
Die Eigenschaft legs enthält die Definition der einzelnen Schritte entlang des Abschnitts im Array steps. Die übrigen Eigenschaften wie distanceMeters, duration und polyline enthalten Informationen zum Abschnitt.
{ "distanceMeters": integer, "duration": string, "staticDuration": string, "polyline": { object (Polyline) }, "startLocation": { object (Location) }, "endLocation": { object (Location) }, "steps": [ { object (RouteLegStep) } ], "travelAdvisory": { object (RouteLegTravelAdvisory) } }
Das Array „steps“ verstehen
Jeder Abschnitt in der Antwort enthält ein steps Array, wobei jedes steps Array
Element vom Typ
RouteLegStep ist.
Ein Schritt entspricht einer einzelnen Anweisung entlang des Abschnitts. Ein Abschnitt enthält immer mindestens einen Schritt.
Jedes Element im steps Array enthält die navigationInstruction
Eigenschaft vom Typ
NavigationInstruction,
die die Schrittanweisung enthält. Beispiel:
"navigationInstruction": { "maneuver": "TURN_LEFT", "instructions": "Turn left toward Frontage Rd" }
Die instructions können zusätzliche Informationen zum Schritt enthalten. Beispiel:
"navigationInstruction": { "maneuver": "TURN_SLIGHT_LEFT", "instructions": "Slight left (signs for I-90 W/Worcester)nParts of this road may be closed at certain times or days" }
Die übrigen Eigenschaften im Schritt beschreiben Informationen zum Schritt, z. B. distanceMeters, duration und polyline:
{ "distanceMeters": integer, "staticDuration": string, "polyline": { object (Polyline) }, "startLocation": { object (Location) }, "endLocation": { object (Location) }, "navigationInstruction": { object (NavigationInstruction) } }
Sprache der Schrittanweisungen angeben
Die API gibt Routeninformationen in der lokalen Sprache zurück, die bei Bedarf in ein für den Nutzer lesbares Skript transliteriert wird, wobei die bevorzugte Sprache berücksichtigt wird. Adresskomponenten werden alle in derselben Sprache zurückgegeben.
Mit dem
languageCodeParameter einer Anfrage können Sie die Routensprache explizit aus der Liste der unterstützten Sprachen festlegen. Die unterstützten Sprachen werden regelmäßig von Google aktualisiert, sodass diese Liste unter Umständen nicht vollständig ist.Wenn ein Name in der angegebenen Sprache nicht verfügbar ist, verwendet die API die nächstbeste Übereinstimmung.
Die angegebene Sprache kann sich auf die Menge der Ergebnisse auswirken, die die API zurückgibt, und auf die Reihenfolge, in der sie zurückgegeben werden. Der Geocoder interpretiert Abkürzungen je nach Sprache unterschiedlich, z. B. die Abkürzungen für Straßentypen oder Synonyme, die in einer Sprache gültig sein können, in einer anderen jedoch nicht. „utca“ und „tér“ sind beispielsweise Synonyme für „Straße“ auf Ungarisch.
Das Array „geocodingResults“ verstehen
Für jeden Ort in der Anfrage (Start-, Ziel- oder Zwischen
wegpunkt), der als Adressstring oder als Plus Code angegeben wurde, versucht die
API, den relevantesten Ort mit einer entsprechenden Orts
ID zu finden. Jedes Element des
geocodingResults
Arrays enthält das Feld placeID mit dem Ort als Orts-ID und ein Feld type, das den Ortstyp angibt, z. B. street_address, premise oder airport.
Das Array geocodingResults enthält drei Felder:
origin: Wenn der Startort als Adressstring oder als Plus Code angegeben wurde, die Orts-ID des Startorts. Andernfalls wird dieses Feld aus der Antwort weggelassen.destination: Wenn der Zielort als Adressstring oder als Plus Code angegeben wurde, die Orts-ID des Zielorts. Andernfalls wird dieses Feld aus der Antwort weggelassen.intermediates: Ein Array mit der Orts-ID aller Zwischenwegpunkte, die als Adressstring oder als Plus Code angegeben wurden. Wenn Sie einen Zwischenwegpunkt mit einer Orts-ID oder Breiten- und Längengradkoordinaten angeben, wird er aus der Antwort weggelassen. Mit der EigenschaftintermediateWaypointRequestIndexin der Antwort können Sie ermitteln, welcher Zwischenwegpunkt in der Anfrage der Orts-ID in der Antwort entspricht.
"geocodingResults": { "origin": { "geocoderStatus": {}, "type": [ enum (Type) ], "placeId": string }, "destination": { "geocoderStatus": {}, "type": [ enum (Type) ], "placeId": string }, "intermediates": [ { "geocoderStatus": {}, "intermediateWaypointRequestIndex": integer, "type": [ enum (Type) ], "placeId": string }, { "geocoderStatus": {}, "intermediateWaypointRequestIndex": integer, "type": [ enum (Type) ], "placeId": string } ] }
Lokalisierte Antwortwerte verstehen
Lokalisierte Antwortwerte sind ein zusätzliches Antwortfeld, das lokalisierten Text für zurückgegebene Parameterwerte enthält. Lokalisierter Text wird für die Fahrtzeit, die Entfernung und das Einheitensystem (metrisch oder US-amerikanische imperiale Einheiten) bereitgestellt. Sie fordern lokalisierte Werte mit einer Feldmaske an und können entweder die Sprache und das Einheitensystem angeben oder die von der API abgeleiteten Werte verwenden. Weitere Informationen finden Sie unter LocalizedValues.
Wenn Sie beispielsweise einen Sprachcode für Deutsch (de) und US-amerikanische imperiale Einheiten angeben, erhalten Sie einen Wert für distanceMeters von 49889,7, aber auch lokalisierten Text, der diese Entfernung in Deutsch und US-amerikanischen imperialen Einheiten angibt, also „31 Meilen“.
Hier ein Beispiel für lokalisierte Werte:
{ "localized_values":
{
"distance": { "text": "31,0 Meile/n" },
"duration": { "text": 38 Minuten}.
"static_duration": { "text": 36 Minuten}.
}
}Wenn Sie die Sprache oder das Einheitensystem nicht angeben, leitet die API die Sprache und die Einheiten so ab:
- Die
ComputeRoutesMethode leitet die Orts- und Entfernung Einheiten vom Startwegpunkt ab. Bei einer Routenanfrage in den USA leitet die API die Spracheen-USund die EinheitenIMPERIALab. - Die Methode
ComputeRouteMatrixverwendet standardmäßig die Sprache „en-US“ und die Einheiten „METRIC“.