Einführung
Eine Distance Matrix API (Legacy)-Anfrage hat das folgende Format:
https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters
Dabei kann outputFormat einer der folgenden Werte sein:
json(empfohlen) gibt die Ausgabe in JavaScript Object Notation (JSON) an.xmlgibt die Ausgabe als XML an.
Bestimmte Parameter sind erforderlich, während andere optional sind. Wie in URLs üblich, werden alle Parameter mit dem Und-Zeichen (&) getrennt. Alle reservierten Zeichen (z. B. das Pluszeichen „+“) müssen URL-codiert sein. Die Liste der Parameter und ihre möglichen Werte sind unten aufgeführt.
Erforderliche Parameter
-
Ziele
Ein oder mehrere Orte, die als Ziel für die Berechnung der Entfernung und Reisezeit verwendet werden sollen. Die Optionen für den Parameter „destinations“ sind dieselben wie für den Parameter „origins“.
-
origins
Der Ausgangspunkt für die Berechnung der Entfernung und Reisezeit. Sie können einen oder mehrere Orte angeben, die durch einen senkrechten Strich (|) getrennt sind. Die Angabe kann in Form einer Orts-ID, einer Adresse oder von Breiten- und Längengradkoordinaten erfolgen:
-
Orts-ID: Wenn Sie eine Orts-ID angeben, müssen Sie ihr das Präfix
place_id:voranstellen. -
Adresse: Wenn Sie eine Adresse übergeben, wird der String vom Dienst geocodiert und in Breiten- und Längengradkoordinaten umgewandelt, um die Entfernung zu berechnen. Diese Koordinate kann sich von der von der Geocoding API zurückgegebenen Koordinate unterscheiden, z. B. ein Gebäudeeingang anstelle der Gebäudemitte.
Hinweis: Orts-IDs sind Adressen oder Breiten-/Längengradkoordinaten vorzuziehen. Wenn Sie Koordinaten verwenden, wird der Punkt immer an der Straße ausgerichtet, die diesen Koordinaten am nächsten liegt. Das ist möglicherweise kein Zugangspunkt zum Grundstück oder keine Straße, die schnell oder sicher zum Ziel führt. Wenn Sie die Adresse verwenden, wird die Entfernung zur Mitte des Gebäudes und nicht zu einem Eingang des Gebäudes angegeben.
- Koordinaten: Wenn Sie Breiten-/Längengradkoordinaten übergeben, werden sie an der nächstgelegenen Straße ausgerichtet. Es wird empfohlen, eine Orts-ID zu übergeben. Wenn Sie Koordinaten übergeben, darf zwischen den Werten für Breiten- und Längengrad kein Leerzeichen stehen.
-
Plus Codes müssen als globaler oder zusammengesetzter Code formatiert sein. Formatieren Sie die Plus Codes wie hier gezeigt (Pluszeichen werden in der URL als %2B dargestellt, Leerzeichen als %20):
-
Global Code besteht aus einer vierstelligen Vorwahl und einem mindestens sechsstelligen lokalen Code (
849VCWC8+R9wird als849VCWC8%2BR9codiert). -
Compound Code ist ein mindestens sechsstelliger lokaler Code mit einem expliziten Ort (
CWC8+R9 Mountain View, CA, USAwird zuCWC8%2BR9%20Mountain%20View%20CA%20USAcodiert).
-
Global Code besteht aus einer vierstelligen Vorwahl und einem mindestens sechsstelligen lokalen Code (
-
Codierte Polylinie: Alternativ können Sie einen codierten Satz von Koordinaten mit dem Algorithmus für codierte Polylinien angeben. Das ist besonders nützlich, wenn Sie eine große Anzahl von Startpunkten haben, da die URL bei Verwendung einer codierten Polylinie deutlich kürzer ist.
-
Codierten Polylinien muss das Präfix
enc:vorangestellt werden, gefolgt von einem Doppelpunkt:. Beispiel:origins=enc:gfo}EtohhU: -
Sie können auch mehrere codierte Polylinien angeben, die durch das Pipe-Zeichen
|getrennt sind. Beispiel:origins=enc:wc~oAwquwMdlTxiKtqLyiK:|enc:c~vnAamswMvlTor@tjGi}L:|enc:udymA{~bxM:
-
Codierten Polylinien muss das Präfix
-
Orts-ID: Wenn Sie eine Orts-ID angeben, müssen Sie ihr das Präfix
Optionale Parameter
-
arrival_time
Gibt die bevorzugte Ankunftszeit für Routen für öffentliche Verkehrsmittel in Sekunden seit Mitternacht am 1. Januar 1970 UTC an. Sie können entweder
departure_timeoderarrival_timeangeben, aber nicht beides. Beachten Sie, dassarrival_timeals Ganzzahl angegeben werden muss. -
avoid
Entfernungen können auch unter Berücksichtigung bestimmter Einschränkungen berechnet werden. Einschränkungen werden durch den Parameter „avoid“ und ein Argument für diesen Parameter angegeben, das die zu vermeidende Einschränkung angibt. Die folgenden Einschränkungen werden unterstützt:
-
tollsgibt an, dass auf der berechneten Route Mautstraßen und ‑brücken vermieden werden sollen. -
highwaysgibt an, dass auf der berechneten Route Autobahnen vermieden werden sollen. -
ferriesgibt an, dass auf der berechneten Route Fähren vermieden werden sollen. -
indoorgibt an, dass für die berechnete Route Treppen in Innenräumen für Fußgänger und Routen für öffentliche Verkehrsmittel vermieden werden sollen.
Sie können eine Route anfordern, bei der Mautstraßen, Autobahnen und Fähren vermieden werden, indem Sie beide Einschränkungen an den Parameter „avoid“ übergeben. Beispiel:
avoid=tolls|highways|ferriesHinweis: Durch das Hinzufügen von Einschränkungen werden Routen, die das eingeschränkte Element enthalten, nicht ausgeschlossen. Das Ergebnis wird jedoch zugunsten günstigerer Routen beeinflusst. -
-
departure_time
Gibt die bevorzugte Abfahrtszeit an. Sie können die Zeit als Ganzzahl in Sekunden seit dem 1. Januar 1970, 00:00 Uhr UTC angeben. Wenn ein
departure_timenach dem 31.12.9999, 23:59:59.999999999Z angegeben wird, setzt die API dendeparture_timeauf den 31.12.9999, 23:59:59.999999999Z zurück. Alternativ können Sie den Wert „now“ angeben, wodurch die Abfahrtszeit auf die aktuelle Zeit (auf die Sekunde genau) festgelegt wird. Die Abreisezeit kann in zwei Fällen angegeben werden:-
Für Anfragen mit öffentlichen Verkehrsmitteln als Mobilitätsform: Sie können optional
departure_timeoderarrival_timeangeben. Wenn keine der beiden Zeiten angegeben ist, wird fürdeparture_timestandardmäßig die aktuelle Uhrzeit verwendet (d. h. die Abfahrtszeit entspricht der aktuellen Uhrzeit). -
Für Anfragen mit Kraftfahrzeugen als Mobilitätsform: Sie können
departure_timeangeben, um eine Route und eine Reisedauer (Antwortfeld: duration_in_traffic) zu erhalten, die die Verkehrslage berücksichtigen. Fürdeparture_timemuss die aktuelle Zeit oder eine Zeit in der Zukunft angegeben werden. Der Wert darf nicht in der Vergangenheit liegen.
Hinweis: Wenn keine Startzeit angegeben ist, beruhen die Auswahl der Route und die Reisezeit auf dem Straßennetz und der durchschnittlichen zeitunabhängigen Verkehrslage. Die Ergebnisse für eine bestimmte Anfrage können sich im Laufe der Zeit aufgrund von Änderungen im Straßennetz, Aktualisierungen der durchschnittlichen Verkehrslage und der Dezentralisierung des Diensts ändern. Außerdem können die Ergebnisse zwischen praktisch gleichwertigen Routen jederzeit und beliebig oft variieren.Hinweis: Distanzmatrix-Anfragen, in denendeparture_timeangegeben ist, wennmode=driving, sind auf maximal 100 Elemente pro Anfrage beschränkt. Die Anzahl der Elemente ergibt sich aus der Anzahl der Startorte multipliziert mit der Anzahl der Zielorte. -
Für Anfragen mit öffentlichen Verkehrsmitteln als Mobilitätsform: Sie können optional
-
Sprache
Die Sprache, in der die Ergebnisse zurückgegeben werden sollen.
- Hier finden Sie eine Liste der unterstützten Sprachen. Die unterstützten Sprachen werden regelmäßig von Google aktualisiert, sodass diese Liste unter Umständen nicht vollständig ist.
-
Wenn
languagenicht angegeben ist, versucht die API, die im HeaderAccept-Languageangegebene bevorzugte Sprache zu verwenden. - Die API versucht, eine Adresse anzugeben, die sowohl für den Nutzer als auch für Einheimische lesbar ist. Dazu werden Adressen in der Landessprache zurückgegeben, die bei Bedarf in eine für den Nutzer lesbare Schrift transliteriert werden. Dabei wird die bevorzugte Sprache berücksichtigt. Alle anderen Adressen werden in der bevorzugten Sprache zurückgegeben. Adresskomponenten werden alle in derselben Sprache zurückgegeben, die von der ersten Komponente ausgewählt wird.
- Wenn ein Name in der bevorzugten Sprache nicht verfügbar ist, verwendet die API die nächstgelegene Übereinstimmung.
- Die bevorzugte Sprache hat einen geringen Einfluss auf die von der API zurückgegebenen Ergebnisse und die Reihenfolge, in der sie zurückgegeben werden. Der Geocoder interpretiert Abkürzungen je nach Sprache unterschiedlich, z. B. Abkürzungen für Straßentypen oder Synonyme, die in einer Sprache gültig sind, in einer anderen jedoch nicht. Beispiel: utca und tér sind Synonyme für „Straße“ auf Ungarisch.
-
Modus
Für die Berechnung von Entfernungen und Wegbeschreibungen können Sie die zu verwendende Mobilitätsform angeben. Standardmäßig wird der Modus
DRIVINGverwendet. Standardmäßig erfolgt die Routenberechnung mit dem Wert driving . Folgende Mobilitätsformen werden unterstützt:-
Bei
driving(Standardeinstellung) wird eine standardmäßige Wegbeschreibung oder Entfernung auf Grundlage des Straßennetzes angefordert. -
Bei
walkingwerden Fußgängerrouten oder Entfernungen auf Fußgängerwegen und Bürgersteigen (sofern vorhanden) angefordert. -
Bei
bicyclingwerden Fahrradrouten oder Entfernungen mit Radwegen und bevorzugten Straßen (sofern vorhanden) angefordert. -
Bei
transitwerden Routen oder Entfernungen mit öffentlichen Verkehrsmitteln (sofern verfügbar) angefordert. Wenn Sie den Modus auf „Öffentliche Verkehrsmittel“ festlegen, können Sie optional entwederdeparture_timeoderarrival_timeangeben. Wenn keine der beiden Zeiten angegeben ist, wird fürdeparture_timestandardmäßig die aktuelle Uhrzeit verwendet (d. h. die Abfahrtszeit entspricht der aktuellen Uhrzeit). Optional können Sie auch einetransit_modeund/oder einetransit_routing_preferenceangeben.
Hinweis: Fußgänger- und Fahrradrouten enthalten unter Umständen keine ausgewiesenen Fußgänger- oder Fahrradwege. In diesen Fällen werden Warnungen im zurückgegebenen Ergebnis zurückgegeben, die Sie dem Nutzer anzeigen müssen.Hinweis: Fahrten mit öffentlichen Verkehrsmitteln sind bis zu 7 Tage in der Vergangenheit oder bis zu 100 Tage in der Zukunft verfügbar, sofern die entsprechenden Informationen von Datenanbietern bereitgestellt werden. Fahrpläne ändern sich häufig, verfügbare Fahrten können sich im Laufe der Zeit ändern und es gibt keine Garantie für konsistente Ergebnisse bei Vorhersagen, die weit im Voraus getroffen werden. -
Bei
-
Region
Der Regionscode, angegeben als zweistelliger Wert der Ländercode-Top-Level-Domain (ccTLD). Die meisten ccTLD-Codes entsprechen den ISO-3166-1-Codes. Es gibt jedoch einige Ausnahmen. So lautet beispielsweise die ccTLD des Vereinigten Königreichs „uk“ (.co.uk), der ISO-3166-1-Code dagegen „gb“ (technisch gesehen für die Entität „Vereinigtes Königreich Großbritannien und Nordirland“).
-
traffic_model
Gibt die Annahmen an, die bei der Berechnung der Reisezeit verwendet werden sollen. Diese Einstellung wirkt sich auf den Wert für die voraussichtliche Reisezeit aus, der in der Antwort im Feld „duration_in_traffic“ zurückgegeben und anhand bisheriger Durchschnittswerte berechnet wird. Der Parameter
traffic_modeldarf nur für Wegbeschreibungen angegeben werden, wenn die Anfrage einendeparture_timeenthält. Verfügbare Werte für diesen Parameter sind:-
best_guess(Standardwert) gibt an, dass die zurückgegebene „duration_in_traffic“ die beste Schätzung der Reisezeit sein sollte. Dazu werden Verlaufs- und Echtzeitdaten zur Verkehrslage herangezogen. Die aktuelle Verkehrslage wird umso stärker gewichtet, je näher diedeparture_timerückt. -
pessimisticgibt an, dass die zurückgegebene duration_in_traffic an den meisten Tagen länger sein sollte als die tatsächliche Reisezeit. An Tagen mit besonders schlechter Verkehrslage kann dieser Wert jedoch überschritten werden. -
optimisticgibt an, dass die zurückgegebene „duration_in_traffic“ an den meisten Tagen kürzer als die tatsächliche Reisezeit sein dürfte. An Tagen mit besonders guter Verkehrslage kann dieser Wert jedoch unterschritten werden.
Der Standardwert
best_guessliefert für die meisten Anwendungsfälle die nützlichsten Vorhersagen. Es ist möglich, dass die Vorhersage der Reisedauer fürbest_guesskürzer alsoptimisticoder länger alspessimisticist, da das Vorhersagemodell fürbest_guessEchtzeit-Verkehrsinformationen einbezieht. -
-
transit_mode
Gibt ein oder mehrere bevorzugte Verkehrsmittel an. Dieser Parameter darf nur für Routen für öffentliche Verkehrsmittel angegeben werden. Der Parameter unterstützt die folgenden Argumente:
-
busgibt an, dass für die berechnete Route Busse bevorzugt werden sollen. -
subwaygibt an, dass für die berechnete Route U-Bahnen bevorzugt werden sollen. -
traingibt an, dass für die berechnete Route Züge bevorzugt werden sollen. -
tramgibt an, dass für die berechnete Route Straßen- und Stadtbahnen bevorzugt werden sollen. -
railgibt an, dass für die berechnete Route Züge, Straßenbahnen, Stadtbahnen und U-Bahnen bevorzugt werden sollen. Dies entsprichttransit_mode=train|tram|subway.
-
-
transit_routing_preference
Gibt Einstellungen für Routen mit öffentlichen Verkehrsmitteln an. Mit diesem Parameter können Sie die zurückgegebenen Optionen beeinflussen, anstatt die standardmäßige beste Route der API zu verwenden. Dieser Parameter darf nur für Routen für öffentliche Verkehrsmittel angegeben werden. Dieser Parameter unterstützt die folgenden Argumente:
-
less_walkinggibt an, dass die berechnete Route möglichst wenige Gehstrecken enthalten soll. -
fewer_transfersgibt an, dass die berechnete Route möglichst wenige Umstiege beinhalten soll.
-
-
Einheiten
Gibt das Einheitensystem an, das beim Anzeigen von Ergebnissen verwendet werden soll.
Hinweis: Die Einstellung für das Einheitensystem wirkt sich nur auf den Text aus, der in Entfernungsfeldern angezeigt wird. Die Entfernungsfelder enthalten auch Werte, die immer in Metern angegeben werden.
Beispielanfragen
In diesem Beispiel werden die Zielkoordinaten mithilfe von Breiten- und Längengraden angegeben:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=40.659569%2C-73.933783%7C40.729029%2C-73.851524%7C40.6860072%2C-73.6334271%7C40.598566%2C-73.7527626 &origins=40.6655101%2C-73.89188969999998 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=40.6655101%2C-73.89188969999998&destinations=40.659569%2C-73.933783%7C40.729029%2C-73.851524%7C40.6860072%2C-73.6334271%7C40.598566%2C-73.7527626&key=YOUR_API_KEY'
In diesem Beispiel werden Plus Codes verwendet, um die Zielkoordinaten anzugeben:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=San%20Francisco &origins=849VCWC8%2BR9 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=849VCWC8%2BR9&destinations=San%20Francisco&key=YOUR_API_KEY'
In diesem Beispiel wird dieselbe Anfrage mit einer codierten Polylinie verwendet:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=enc%3A_kjwFjtsbMt%60EgnKcqLcaOzkGari%40naPxhVg%7CJjjb%40cqLcaOzkGari%40naPxhV%3A &origins=40.6655101%2C-73.89188969999998 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=40.6655101%2C-73.89188969999998&destinations=enc%3A_kjwFjtsbMt%60EgnKcqLcaOzkGari%40naPxhVg%7CJjjb%40cqLcaOzkGari%40naPxhV%3A&key=YOUR_API_KEY'
Verkehrsinformationen
Verkehrsinformationen werden verwendet, wenn alle folgenden Bedingungen zutreffen (sie sind erforderlich, um das Feld duration_in_traffic in der Distanzmatrix-Antwort zu erhalten):
- Der Parameter
modeistdrivingoder nicht angegeben (drivingist die Standardmobilitätsform). - Die Anfrage enthält einen gültigen Parameter
departure_time. Fürdeparture_timekann die aktuelle oder eine Zeit in der Zukunft festgelegt werden. Der Wert darf nicht in der Vergangenheit liegen.
Optional können Sie den Parameter traffic_model in Ihre Anfrage aufnehmen, um die Annahmen anzugeben, die bei der Berechnung der Reisezeit verwendet werden sollen.
Mit der folgenden URL wird eine Distanzmatrix-Anfrage für die Fahrstrecken zwischen Boston, MA oder Charlestown, MA und Lexington, MA und Concord, MA initiiert. Die Anfrage enthält eine Abfahrtszeit und erfüllt alle Anforderungen, um das Feld duration_in_traffic in der Distanzmatrix-Antwort zurückzugeben.
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?departure_time=now &destinations=Lexington%2CMA%7CConcord%2CMA &origins=Boston%2CMA%7CCharlestown%2CMA &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=Boston%2CMA%7CCharlestown%2CMA&destinations=Lexington%2CMA%7CConcord%2CMA&departure_time=now&key=YOUR_API_KEY'
JSON
{ "destination_addresses": ["Lexington, MA, USA", "Concord, MA, USA"], "origin_addresses": ["Boston, MA, USA", "Charlestown, Boston, MA, USA"], "rows": [ { "elements": [ { "distance": { "text": "33.3 km", "value": 33253 }, "duration": { "text": "27 mins", "value": 1620 }, "duration_in_traffic": { "text": "34 mins", "value": 2019 }, "status": "OK", }, { "distance": { "text": "41.5 km", "value": 41491 }, "duration": { "text": "33 mins", "value": 1981 }, "duration_in_traffic": { "text": "39 mins", "value": 2342 }, "status": "OK", }, ], }, { "elements": [ { "distance": { "text": "31.1 km", "value": 31100 }, "duration": { "text": "26 mins", "value": 1543 }, "duration_in_traffic": { "text": "29 mins", "value": 1754 }, "status": "OK", }, { "distance": { "text": "39.3 km", "value": 39338 }, "duration": { "text": "32 mins", "value": 1904 }, "duration_in_traffic": { "text": "35 mins", "value": 2077 }, "status": "OK", }, ], }, ], "status": "OK", }
XML
OK Boston, MA, USA Charlestown, Boston, MA, USA Lexington, MA, USA Concord, MA, USA |
OK 1620 27 mins 33253 33.3 km 2018 34 mins OK 1981 33 mins 41491 41.5 km 2342 39 mins |
OK 1543 26 mins 31100 31.1 km 1759 29 mins OK 1904 32 mins 39338 39.3 km 2077 35 mins
Standortmodifikatoren
Mit Standortmodifikatoren können Sie angeben, aus welcher Richtung die Fahrer einen bestimmten Standort anfahren sollen. Verwenden Sie dazu den Modifikator side_of_road, um die Straßenseite anzugeben, oder geben Sie einen Kurs an, um die richtige Fahrtrichtung anzugeben.
Festlegen, dass berechnete Routen über eine bestimmte Straßenseite führen müssen
Wenn Sie einen Ort angeben, können Sie mit dem Präfix side_of_road: festlegen, dass die berechnete Route über die Straßenseite führen soll, auf der sich der Wegpunkt befindet. Mit dieser Anfrage wird beispielsweise die Entfernung für eine lange Route zurückgegeben, sodass das Fahrzeug auf der Straßenseite endet, auf der sich der Wegpunkt befindet:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=side_of_road%3A37.7663444%2C-122.4412006 &origins=37.7680296%2C-122.4375126 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=37.7680296%2C-122.4375126&destinations=side_of_road%3A37.7663444%2C-122.4412006&key=YOUR_API_KEY'
Wenn Sie side_of_road: mit codierten Polylinien verwenden, wird der Modifikator auf jeden Ort entlang der Polylinie angewendet. Beispielsweise verwenden die beiden Ziele in dieser Anfrage den Parameter:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=side_of_road%3Aenc%3A%7BoqeF%60fejV%5BnC%3A &origins=San%20Francisco%20City%20hall &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=San%20Francisco%20City%20hall&destinations=side_of_road%3Aenc%3A%7BoqeF%60fejV%5BnC%3A&key=YOUR_API_KEY'
Der Modifikator side_of_road: darf nur mit dieser Einschränkung verwendet werden:
- Der Parameter
modeistdrivingoder nicht angegeben (drivingist die Standardmobilitätsform).
Angeben, dass berechnete Routen einen bestimmten Kurs haben sollen
Wenn Sie einen Ort angeben, können Sie festlegen, dass die berechnete Route in einer bestimmten Richtung durch den Ort verlaufen soll. Dieser Kurs wird mit dem Präfix heading=X: angegeben, wobei X ein ganzzahliger Gradwert zwischen 0 (einschließlich) und 360 (ausschließlich) ist. Ein Kurs von 0 zeigt nach Norden, 90 nach Osten und so weiter im Uhrzeigersinn. In dieser Anfrage führt die berechnete Route beispielsweise vom Startpunkt aus nach Osten und macht dann eine Kehrtwende:
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=37.773245%2C-122.469502 &origins=heading%3D90%3A37.773279%2C-122.468780 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=heading%3D90%3A37.773279%2C-122.468780&destinations=37.773245%2C-122.469502&key=YOUR_API_KEY'
Der Modifikator heading=X: darf nur mit den folgenden Einschränkungen verwendet werden:
- Der Parameter
modeistdriving,bicyclingoder nicht angegeben (drivingist die Standardmobilitätsform). - Der Modifikator
side_of_roadist nicht für denselben Standort angegeben. - Der Standort wird mit einem Breiten-/Längengradwert angegeben. Sie dürfen
headingnicht mit Adressen, Orts-IDs oder codierten Polylinien verwenden.
Distanzmatrix-Anfragen und -Antworten
Im Folgenden finden Sie eine HTTP-Beispielanfrage, mit der die Entfernung und Dauer von Vancouver, BC, Kanada und Seattle, WA, USA nach San Francisco, CA, USA und Victoria, BC, Kanada angefordert werden.
URL
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=San%20Francisco%7CVictoria%20BC &language=fr-FR &mode=bicycling &origins=Vancouver%20BC%7CSeattle &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=Vancouver%20BC%7CSeattle&destinations=San%20Francisco%7CVictoria%20BC&mode=bicycling&language=fr-FR&key=YOUR_API_KEY'
Diese Anforderung gibt vier Elemente zurück - zwei Ursprungsorte mal zwei Zielorte:
| Vancouver nach San Francisco | Vancouver nach Victoria |
| Seattle nach San Francisco | Seattle nach Victoria |
Die Ergebnisse werden in Zeilen zurückgegeben, wobei jede Zeile einen Startort enthält, der mit jedem Zielort kombiniert ist.
JSON
{ "destination_addresses": ["San Francisco, Californie, États-Unis", "Victoria, BC, Canada"], "origin_addresses": ["Vancouver, BC, Canada", "Seattle, Washington, États-Unis"], "rows": [ { "elements": [ { "distance": { "text": "1 712 km", "value": 1711765 }, "duration": { "text": "3 jours 16 heures", "value": 318119 }, "status": "OK", }, { "distance": { "text": "140 km", "value": 139695 }, "duration": { "text": "6 heures 49 minutes", "value": 24567 }, "status": "OK", }, ], }, { "elements": [ { "distance": { "text": "1 452 km", "value": 1451704 }, "duration": { "text": "3 jours 2 heures", "value": 266680 }, "status": "OK", }, { "distance": { "text": "146 km", "value": 146500 }, "duration": { "text": "2 heures 53 minutes", "value": 10374 }, "status": "OK", }, ], }, ], "status": "OK", }
XML
OK Vancouver, BC, Canada Seattle, Washington, États-Unis San Francisco, Californie, États-Unis Victoria, BC, Canada |
OK 318119 3 jours 16 heures 1711765 1 712 km OK 24567 6 heures 49 minutes 139695 140 km |
OK 266680 3 jours 2 heures 1451704 1 452 km OK 10374 2 heures 53 minutes 146500 146 km
DistanceMatrixResponse
| Feld | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
|
required | Array<string> |
Ein Array von Adressen, die von der API aus Ihrer ursprünglichen Anfrage zurückgegeben wurden. Wie bei |
|
required | Array<string> |
Ein Array von Adressen, die von der API aus Ihrer ursprünglichen Anfrage zurückgegeben wurden. Diese werden vom Geocoder formatiert und entsprechend dem mit der Anfrage übergebenen Sprachparameter lokalisiert. Der Inhalt ist so zu lesen, wie er ist. Die formatierten Adressen dürfen nicht programmatisch geparst werden. |
|
required | Array<DistanceMatrixRow> |
Ein Array von Elementen, die jeweils ein Weitere Informationen finden Sie unter DistanceMatrixRow. |
|
required | DistanceMatrixStatus |
Enthält den Status der Anfrage und evtl. Debugging-Informationen, mit deren Hilfe Sie herausfinden können, warum die Anfrage zu Fehlern geführt hat. Weitere Informationen finden Sie unter DistanceMatrixStatus. |
|
optional | String |
Ein String, der den menschenlesbaren Text aller Fehler enthält, die bei der Verarbeitung der Anfrage aufgetreten sind. |
DistanceMatrixStatus
Vom Dienst zurückgegebene Statuscodes.
OKgibt an, dass die Antwort ein gültiges Ergebnis enthält.-
INVALID_REQUESTgibt an, dass die Anfrage ungültig war. -
MAX_ELEMENTS_EXCEEDED: Das Produkt aus Start- und Zielorten überschreitet die Begrenzung pro Anfrage. -
MAX_DIMENSIONS_EXCEEDED: Die Anzahl der Start- oder Zielorte überschreitet die Begrenzung pro Anfrage. -
OVER_DAILY_LIMITgibt einen der folgenden Werte an:- Der API-Schlüssel fehlt oder ist ungültig.
- Die Abrechnung wurde für Ihr Konto nicht aktiviert.
- Das von Ihnen festgelegte Nutzungslimit wurde überschritten.
- Die angegebene Zahlungsmethode ist nicht mehr gültig. Das kann z. B. bei einer abgelaufenen Kreditkarte der Fall sein.
-
OVER_QUERY_LIMITgibt an, dass der Dienst innerhalb des zulässigen Zeitraums zu viele Anfragen von Ihrer Anwendung erhalten hat. -
REQUEST_DENIEDgibt an, dass die Verwendung des „Distance Matrix“-Diensts durch Ihre Anwendung abgelehnt wurde. -
UNKNOWN_ERRORgibt an, dass eine Distanzmatrix-Anfrage aufgrund eines Serverfehlers nicht verarbeitet werden konnte. Die Anfrage ist möglicherweise erfolgreich, wenn Sie es erneut versuchen.
DistanceMatrixRow
| Feld | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
|
required | Array<DistanceMatrixElement> |
Wenn die Distance Matrix API Ergebnisse zurückgibt, werden sie in einem JSON-Zeilenarray platziert. Auch wenn keine Ergebnisse zurückgegeben werden (z. B. wenn die Start- und/oder Zielorte nicht vorhanden sind), wird ein leeres Array zurückgegeben. Die Zeilen werden nach den Werten im Parameter „origin“ der Anfrage sortiert. Jede Zeile entspricht einem Startort und jedes Element in dieser Zeile entspricht einem Paar aus dem Startort und einem Zielwert. Jedes Zeilenarray enthält einen oder mehrere Elementeinträge, die wiederum die Informationen zu einem einzelnen Start-Ziel-Paar enthalten. Weitere Informationen finden Sie unter DistanceMatrixElement. |
DistanceMatrixElement
| Feld | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
|
required | DistanceMatrixElementStatus |
Ein Status für das Element. Weitere Informationen finden Sie unter DistanceMatrixElementStatus. |
|
optional | TextValueObject |
Die Gesamtstrecke dieser Route in Metern (Wert) und als Text. Der Textwert verwendet das Einheitensystem, das mit dem Parameter „unit“ der ursprünglichen Anfrage oder der Region des Startpunkts angegeben wurde. Weitere Informationen finden Sie unter TextValueObject. |
|
optional | TextValueObject |
Die Reisezeit in Sekunden (Feld „value“) und als Text. Die Textdarstellung wird entsprechend dem Sprachparameter der Abfrage lokalisiert. Weitere Informationen finden Sie unter TextValueObject. |
|
optional | TextValueObject |
Die Reisezeit für diese Route, basierend auf der aktuellen und historischen Verkehrslage. Informationen zu den Optionen, mit denen Sie anfordern können, dass der zurückgegebene Wert optimistisch, pessimistisch oder eine Schätzung ist, finden Sie im Anfrageparameter
Weitere Informationen finden Sie unter TextValueObject. |
|
optional | Fahrpreis |
Falls vorhanden, enthält dieses Feld den Gesamtfahrpreis (die gesamten Fahrkartenkosten) für diese Route. Diese Eigenschaft wird nur für Anfragen für Routen mit öffentlichen Verkehrsmitteln zurückgegeben und nur, wenn der entsprechende Anbieter Fahrpreisinformationen zur Verfügung stellt. Weitere Informationen finden Sie unter Fahrpreis. |
Preis
Der Gesamtfahrpreis für die Route.
{
"currency" : "USD",
"value" : 6,
"text" : "$6.00"
}
| Feld | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
|
erforderlich | String |
Ein Währungscode nach ISO 4217 für die Währung des Betrags. |
|
required | String |
Der Gesamtbetrag im Format der angeforderten Sprache. |
|
required | Zahl |
Der Gesamtfahrpreis in der angegebenen Währung. |
DistanceMatrixElementStatus
OKgibt an, dass die Antwort ein gültiges Ergebnis enthält.-
NOT_FOUNDgibt an, dass der Start- und/oder Zielort dieses Paars nicht geocodiert werden konnte. -
ZERO_RESULTSgibt an, dass keine Route zwischen Start- und Zielort gefunden werden konnte. -
MAX_ROUTE_LENGTH_EXCEEDEDgibt an, dass die angeforderte Route zu lang ist und nicht verarbeitet werden kann.
TextValueObject
Ein Objekt, das einen numerischen Wert und seine formatierte Textdarstellung enthält.
| Feld | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
|
erforderlich | String |
Stringwert. |
|
required | Zahl |
Numerischer Wert. |