Dashboard öffnen

API-Dokumentation & Playground

Einführung

Die OSRMRoute Directions API ist ein RESTful-Webdienst, der entwickelt wurde, um schnelles, hochleistungsfähiges Geo-Routing, Reisematrizen, Adresssuche (Geocoding) und Routenoptimierung in Ihre Anwendungen zu integrieren. Diese Dokumentation erläutert alle Funktionen der API, die Parameter und die Integrationsschritte im Detail.

Authentifizierung

OSRMRoute-API-Anfragen verwenden einen eindeutigen API-Schlüssel zur Authentifizierung. Sie können Ihren API-Schlüssel jeder Anfrage als Query-Parameter (?key=YOUR_KEY) oder über den HTTP-Authorization-Header (als Bearer-Token) hinzufügen.

GETAny endpoint

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
keystringErforderlich-Der eindeutige API-Schlüssel aus Ihrem persönlichen Dashboard. Dieser Schlüssel bestimmt die Limits Ihrer Anfragen.

Fehlercodes

OSRMRoute verwendet Standard-HTTP-Statuscodes und detaillierte JSON-Fehlermeldungen, um den Zustand einer Anfrage anzuzeigen.

Erläuterung der Antwortstruktur

Wichtigste Statuscodes und ihre Bedeutung: - **200 OK**: Die Anfrage wurde erfolgreich abgeschlossen. - **400 Bad Request**: Parameter sind ungültig oder fehlen. - **401 Unauthorized**: Der API-Schlüssel wurde nicht angegeben oder ist ungültig. - **403 Forbidden**: Der API-Schlüssel ist gesperrt oder inaktiv. - **429 Too Many Requests**: Das tägliche Credit-Limit wurde überschritten. - **500 Internal Error**: Ein interner Systemfehler ist aufgetreten.

Routing API

Berechnet die schnellste und kürzeste Route von Punkt A nach Punkt B (mit Zwischen-Via-Punkten). Gibt Turn-by-Turn-Anweisungen und GeoJSON-Geometrie für verschiedene Transportprofile (driving, cycling, walking) zurück.

GET/api/v1/osrm/route/v1/{profile}/{coordinates}

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
profilestringErforderlichdrivingTransportmodus-Profil. Unterstützte Werte: driving (Auto), cycling (Fahrrad), walking (Fußgänger).
coordinatesstringErforderlich-Koordinaten der Punkte. Format: lon,lat;lon,lat;lon,lat... (mindestens 2 Punkte).
overviewstringOptionalfullDetailgrad der zurückgegebenen Routengeometrie: simplified (vereinfacht), full (vollständige Geometrie), false (ohne Geometrie).
geometriesstringOptionalgeojsonGeometrieformat: geojson (GeoJSON-Objekt), polyline (kodierte Zeichenfolge).
stepsbooleanOptionaltrueOb für jede Abbiegung Schritt-für-Schritt-Anweisungen zurückgegeben werden.

Erläuterung der Antwortstruktur

Eine erfolgreiche Antwort enthält die Gesamtdistanz der Route (in Metern), die Fahrzeit (in Sekunden), Wegpunkte und die GeoJSON-Routenlinie.

Matrix API

Berechnet eine schnelle Distanz- und Fahrzeitmatrix zwischen mehreren Punkten (eine NxM-Tabelle). Ein ideales Werkzeug zur Optimierung von Logistikrouten.

GET/api/v1/osrm/table/v1/{profile}/{coordinates}

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
profilestringErforderlichdrivingTransportprofil (driving, cycling, walking).
coordinatesstringErforderlich-Matrixpunkte. Format: lon,lat;lon,lat;lon,lat...
annotationsstringOptionalduration,distanceZu berechnende Daten: duration (Zeit), distance (Distanz) oder beides.

Erläuterung der Antwortstruktur

Eine erfolgreiche Antwort gibt eine zweidimensionale distances- (Distanzen) und durations-Matrixtabelle (Dauern) für jede Kombination aus Start- und Endpunkt zurück.

Map Matching API

Ordnet ungenaue GPS-Spuren dem realen Straßennetz zu (snap to road). Wird verwendet, um Rauschen in GPS-Signalen zu bereinigen.

GET/api/v1/osrm/match/v1/{profile}/{coordinates}

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
profilestringErforderlichdrivingTransportprofil.
coordinatesstringErforderlich-Die Folge von GPS-Koordinaten zum Zuordnen (lon,lat;lon,lat...)
overviewstringOptionalfullGeometriegenauigkeit der zugeordneten Route.

Nearest API

Ordnet jede Koordinate dem nächstgelegenen realen Straßensegment zu (snap) und gibt Informationen zum Straßennamen zurück.

GET/api/v1/osrm/nearest/v1/{profile}/{coordinates}

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
profilestringErforderlichdrivingTransportprofil.
coordinatesstringErforderlich-Der Punkt, in dessen Nähe gesucht wird. Format: lon,lat (ein einzelnes Paar).
numberintegerOptional3Die Anzahl der zu findenden nächstgelegenen Straßenkandidaten.

Trip API

Löst das Problem des Handlungsreisenden (TSP): findet die optimalste Rund- (oder offene) Route, um eine gegebene Punktmenge zu besuchen, und ordnet die Punkte.

GET/api/v1/osrm/trip/v1/{profile}/{coordinates}

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
profilestringErforderlichdrivingTransportprofil.
coordinatesstringErforderlich-Zu besuchende Punkte. Format: lon,lat;lon,lat...
sourcestringOptionalanyDer Punkt, an dem die Route beginnen kann (any oder der erste Punkt).
destinationstringOptionalanyDer Punkt, an dem die Route endet (any oder der letzte Punkt).

Geocoding API

Wandelt Adressen in geografische Koordinaten um (oder umgekehrt). Ideal für integrierte Suchsysteme.

GET/api/1/geocode

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
qstringErforderlich-Die zu suchende Adresse (z. B. „Nizami-Straße, Baku“).
reversebooleanOptionalfalseMuss true sein, um Reverse-Geocoding durchzuführen (Suche von Koordinate zu Adresse).

Isochrone API

Gibt Polygone der geografischen Zonen zurück, die von einem gegebenen Punkt aus innerhalb einer gegebenen Zeit oder Distanz erreichbar sind.

GET/api/1/isochrone

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
pointstringErforderlich-Mittelpunkt. Format: lat,lon.
time_limitintegerOptional600Fahrzeitlimit (in Sekunden).

Route Optimization API

Optimiert die Routen einer Fahrzeugflotte (Vehicle Routing Problem). Berechnet den Liefer- und Transportplan der Fahrzeuge zu den geringsten Kosten.

POST/api/1/vrp

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
vehiclesarrayErforderlich[]Die Liste der Fahrzeuge (id, Kapazität, Startadresse usw.).
servicesarrayErforderlich[]Die zu bedienenden Adressen (id, Koordinaten, Servicezeit usw.).

Location Clustering API

Gruppiert (clustert) gegebene Koordinaten nach ihrer geografischen Nähe und Dichte.

POST/api/1/cluster

Parameter (Query Params)

ParameterTypStatusStandardBeschreibung
customersarrayErforderlich[]Kundenkoordinaten und Gewichte, die geclustert werden sollen.