Die Roads API gibt die zulässige Höchstgeschwindigkeit für bestimmte Straßenabschnitte zurück. Bei Straßenabschnitten mit variablen Geschwindigkeitsbegrenzungen wird die maximale Geschwindigkeitsbegrenzung für Autos auf diesem Abschnitt zurückgegeben.
Die Genauigkeit der von der Roads API zurückgegebenen Daten zu Geschwindigkeitsbegrenzungen kann nicht garantiert werden. Die bereitgestellten Daten zu Geschwindigkeitsbegrenzungen sind nicht in Echtzeit verfügbar und können geschätzt, ungenau, unvollständig oder veraltet sein. In den Abdeckungsdetails finden Sie die Regionen, für die Daten zu Geschwindigkeitsbegrenzungen verfügbar sind.
Anfragen
Senden Sie Anfragen zu Geschwindigkeitsbegrenzungen über HTTPS im folgenden Format:
https://roads.googleapis.com/v1/speedLimits?parameters&key=YOUR_API_KEYVerwendung von Parametern
Erforderliche Parameter
Entweder ein
path- oder einplaceId-Parameter.path: Eine Liste mit bis zu 100 Breiten-/Längengradpaaren, die einen Pfad darstellen. Breiten- und Längengrad müssen durch Kommas getrennt werden. Die Paare aus Breiten- und Längengrad müssen durch einen senkrechten Strich („|“) getrennt werden. Wenn Sie den Parameterpathangeben, wird der Pfad zuerst an der Straße ausgerichtet, die ein Fahrzeug am wahrscheinlichsten befahren hat (wie bei der AnfragesnapToRoads). Anschließend wird die Geschwindigkeitsbegrenzung für das entsprechende Straßensegment ermittelt. Wenn Sie nicht möchten, dass die API den Pfad anpasst, müssen Sie den ParameterplaceIdübergeben, wie unten erläutert. Im folgenden Beispiel wird der Parameterpathmit drei Paaren aus Breiten- und Längengraden verwendet:path=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796.placeId: Die Orts-ID(s) für ein oder mehrere Straßensegmente. Achten Sie darauf, dass sich jede Orts-ID auf ein Straßensegment und nicht auf einen anderen Ortstyp bezieht. Sie können pro Anfrage bis zu 100 Orts-IDs übergeben. Die Antwort enthält eine Geschwindigkeitsbegrenzung für jede Orts-ID in der Anfrage.Die API führt kein Road-Snapping für die angegebenen Orts-IDs durch. Sie können eine
snapToRoads- odernearestRoads-Anfrage senden, um die relevanten Orts-IDs zu finden, und diese dann als Eingabe für diespeedLimits-Anfrage angeben. Im folgenden Beispiel wird der ParameterplaceIdmit zwei Orts-IDs verwendet:placeId=ChIJs5ydyTiuEmsR0fRSlU0C7k0&placeId=ChIJW__r4ERXzpQRgkeRL6P0m3Y
key: Der API-Schlüssel Ihrer Anwendung. Ihre Anwendung muss sich bei jeder Anfrage an die Roads API identifizieren. Dazu muss jede Anfrage einen API-Schlüssel enthalten. Informationen zum Abrufen eines Schlüssels
Optionale Parameter
units: Gibt an, ob Geschwindigkeitsbegrenzungen in Kilometern oder Meilen pro Stunde zurückgegeben werden sollen. Dies kann entweder aufKPHoderMPHfestgelegt werden. Die Standardeinstellung istKPH.
Antworten
Eine speedLimits-Antwort kann die folgenden Elemente enthalten:
speedLimits: Ein Array mit Straßenmetadaten. Jedes Element besteht aus den folgenden Feldern:placeId: Eine eindeutige Kennung für einen Ort. Alle von der Roads API zurückgegebenen Orts-IDs entsprechen Straßensegmenten.speedLimit: Die Geschwindigkeitsbegrenzung für diesen Straßenabschnitt.units: Gibt entwederKPHoderMPHzurück.
snappedPoints: ein Array von eingerasteten Punkten. Dieses Array ist nur vorhanden, wenn die Anfrage einenpath-Parameter enthielt. Jeder Punkt besteht aus den folgenden Feldern:location: Enthält einenlatitude- und einenlongitude-Wert.originalIndex: Eine Ganzzahl, die den entsprechenden Wert in der ursprünglichen Anfrage angibt. Jeder Wert in der Anfrage sollte einem eingerasteten Wert in der Antwort zugeordnet werden. Diese Werte werden ab0indexiert. Ein Punkt mit einemoriginalIndexvon4ist also der eingerastete Wert des fünften Breiten-/Längengrads, der an den Parameterpathübergeben wird.placeId: Eine eindeutige Kennung für einen Ort. Alle von der Roads API zurückgegebenen Orts-IDs entsprechen Straßensegmenten. DieplaceIdkann in einer Anfrage zu Geschwindigkeitsbegrenzungen übergeben werden, um die Geschwindigkeitsbegrenzung für diesen Straßenabschnitt zu ermitteln.
warning_message: Ein String, der eine für Nutzer sichtbare Warnung enthält.
Beispielanfrage mit einem Pfad
Mit dieser Anfrage wird das Tempolimit für jedes Straßensegment abgerufen, das den angegebenen Breiten-/Längengradpaaren auf einem Pfad über die Vasco-da-Gama-Brücke in Lissabon, Portugal, am nächsten liegt.
Ersuchen
https://roads.googleapis.com/v1/speedLimits?path=38.75807927603043,-9.03741754643809|38.6896537,-9.1770515|41.1399289,-8.6094075&key=YOUR_API_KEYAntwort
{
speedLimits:
[
{
placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE",
speedLimit: 105,
units: "KPH"
},
{
placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU",
speedLimit: 70,
units: "KPH"
},
{
placeId: "ChIJJ4vQRudkJA0RpednU70A-5M",
speedLimit: 55,
units: "KPH"
}
],
snappedPoints:
[
{
location:
{
latitude: 38.75807927603043,
longitude: -9.037417546438084
},
originalIndex: 0,
placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE"
},
{
location:
{
latitude: 38.689653701836896,
longitude: -9.177051486847693
},
originalIndex: 1,
placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU"
},
{
location:
{
latitude: 41.13993011767777,
longitude: -8.609400794783655
},
originalIndex: 2,
placeId: "ChIJJ4vQRudkJA0RpednU70A-5M"
}
],
warningMessage: "Input path is too sparse. You should provide a path where consecutive points are closer to each other. Refer to the 'path' parameter in Google Roads API documentation."
}Beachten Sie die Warnmeldung zur dünnen Besetzung der Punkte in der obigen Antwort. Wenn Sie Geschwindigkeitsbegrenzungen für die nächstgelegenen Straßensegmente an beliebigen Punkten anfordern, müssen Sie stattdessen speedLimits mit Orts-IDs aufrufen, die vom Endpunkt nearestRoads abgerufen wurden.
Beispielanfrage mit Orts-IDs
Anstatt Breiten- und Längengradpaare zu verwenden, können Sie die Orts-IDs der Straßensegmente übergeben. Wir empfehlen, Orts-IDs für Straßensegmente über snapToRoads- oder nearestRoads-Anfragen abzurufen. Wenn Sie Orts-IDs übergeben, gibt die API das Tempolimit für das Straßensegment zurück, das durch die jeweilige Orts-ID dargestellt wird. Die API wendet kein Einrasten an Straßen auf die angegebenen Orts-IDs an.
Im folgenden Beispiel werden die Geschwindigkeitsbegrenzungen für einige der Straßensegmente angefordert, die über die Vasco-da-Gama-Brücke in Lissabon, Portugal, führen.
Ersuchen
https://roads.googleapis.com/v1/speedLimits?placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU&placeId=ChIJJ4vQRudkJA0RpednU70A-5M&key=YOUR_API_KEYAntwort
{
"speedLimits": [
{
placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE",
speedLimit: 105,
units: "KPH"
},
{
placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU",
speedLimit: 70,
units: "KPH"
},
{
placeId: "ChIJJ4vQRudkJA0RpednU70A-5M",
speedLimit: 55,
units: "KPH"
}
]
}Nutzungsempfehlungen
Wenn Sie die Anzahl der Aufrufe an den Speed Limit-Dienst reduzieren möchten, sollten Sie die Standorte Ihrer Assets im Intervall von 5 bis 15 Minuten abfragen. Der genaue Wert hängt von der Geschwindigkeit ab, mit der ein Asset bewegt wird. Wenn ein Asset nicht in Bewegung ist, reicht ein einzelnes Standortbeispiel aus. Es sind keine weiteren Aufrufe erforderlich.
Zur Minimierung der Gesamtlatenz wird empfohlen, den Speed Limit-Dienst für die Geschwindigkeitsbegrenzung aufzurufen, sobald du einige Daten erfasst hast, und nicht jedes Mal, wenn der Standort eines mobilen Assets empfangen wird.
Warum fehlen einige oder alle Geschwindigkeitsbegrenzungen?
Die häufigste Ursache für fehlende speedLimits ist die Anfrage des Tempolimits für einen Ort, der kein Straßensegment ist.
Im obigen Beispiel wird die Vasco-da-Gama-Brücke verwendet, um Konzepte zu veranschaulichen. Die Brücke ist Teil der Straße E90, die über den Tejo führt. Die Brücke selbst hat die Orts-ID ChIJUzt97ZEwGQ0RM1JzQfqoDtU. Das erste Straßensegment in der obigen Antwort ist Teil der E90 und hat die Orts-ID ChIJX12duJAwGQ0Ra0d4Oi4jOGE. Wenn Sie in der Beispielanfrage die Orts-ID der Straße durch die Orts-ID der Brücke ersetzen, enthält die Antwort nur zwei Geschwindigkeitsbegrenzungen im Array speedLimits, da sich die Orts-ID der Brücke nicht auf ein einzelnes Straßensegment bezieht. Wenn keine der Orts-IDs für Straßensegmente gilt, enthält die Antwort keine Geschwindigkeitsbegrenzungen.
Wenn Sie Tempolimits über Orts-IDs anfragen, muss jede Orts-ID auf ein Straßensegment und nicht auf einen anderen Ortstyp verweisen. Orts-IDs für einzelne Straßensegmente lassen sich am besten mit snapToRoads- oder nearestRoads-Anfragen abrufen. Beide können mehrere Orts-IDs aus einem einzigen Aufruf zurückgeben.
Was ist, wenn für einen Straßenabschnitt separate Geschwindigkeitsbegrenzungen für Pkw und Lkw gelten?
Die Roads API gibt die maximal zulässige Höchstgeschwindigkeit nur für Autos zurück.