Ouvrir le tableau de bord

Documentation de l'API et Playground

Introduction

L'API OSRMRoute Directions est un service web RESTful conçu pour intégrer un routage géospatial rapide et hautes performances, des matrices de trajets, la recherche d'adresses (géocodage) et l'optimisation d'itinéraires dans vos applications. Cette documentation explique en détail toutes les capacités de l'API, les paramètres et les étapes d'intégration.

Authentification

Les requêtes à l'API OSRMRoute utilisent une clé API unique pour l'authentification. Vous pouvez ajouter votre clé API à chaque requête en tant que paramètre de requête (?key=YOUR_KEY) ou via l'en-tête HTTP Authorization (comme jeton Bearer).

GETAny endpoint

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
keystringObligatoire-La clé API unique obtenue depuis votre tableau de bord personnel. Cette clé détermine les limites de vos requêtes.

Codes d'erreur

OSRMRoute utilise des codes de statut HTTP standard et des messages d'erreur JSON détaillés pour indiquer l'état d'une requête.

Explication de la structure de la réponse

Principaux codes de statut et leur signification : - **200 OK** : La requête a abouti. - **400 Bad Request** : Les paramètres sont invalides ou manquants. - **401 Unauthorized** : La clé API n'a pas été fournie ou est invalide. - **403 Forbidden** : La clé API est bloquée ou inactive. - **429 Too Many Requests** : La limite quotidienne de crédits a été dépassée. - **500 Internal Error** : Une erreur interne du système s'est produite.

Routing API

Calcule l'itinéraire le plus rapide et le plus court du point A au point B (avec des points via intermédiaires). Renvoie des instructions détaillées (turn-by-turn) et une géométrie GeoJSON pour différents profils de transport (driving, cycling, walking).

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

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
profilestringObligatoiredrivingProfil du mode de transport. Valeurs prises en charge : driving (voiture), cycling (vélo), walking (piéton).
coordinatesstringObligatoire-Coordonnées des points. Format : lon,lat;lon,lat;lon,lat... (au moins 2 points).
overviewstringFacultatiffullNiveau de détail de la géométrie d'itinéraire renvoyée : simplified (simplifiée), full (géométrie complète), false (sans géométrie).
geometriesstringFacultatifgeojsonFormat de géométrie : geojson (objet GeoJSON), polyline (chaîne encodée).
stepsbooleanFacultatiftrueSi des instructions étape par étape sont renvoyées pour chaque virage.

Explication de la structure de la réponse

Une réponse réussie contient la distance totale de l'itinéraire (en mètres), la durée du trajet (en secondes), les points de passage et la ligne d'itinéraire en GeoJSON.

Matrix API

Calcule une matrice rapide de distance et de temps de trajet entre plusieurs points (un tableau NxM). Un outil idéal pour optimiser les itinéraires logistiques.

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

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
profilestringObligatoiredrivingProfil de transport (driving, cycling, walking).
coordinatesstringObligatoire-Points de la matrice. Format : lon,lat;lon,lat;lon,lat...
annotationsstringFacultatifduration,distanceDonnées à calculer : duration (temps), distance ou les deux.

Explication de la structure de la réponse

Une réponse réussie renvoie un tableau-matrice bidimensionnel de distances et de durations (durées) pour chaque combinaison de point de départ et d'arrivée.

Map Matching API

Aligne des traces GPS imprécises sur le réseau routier réel (snap to road). Utilisé pour nettoyer le bruit dans les signaux GPS.

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

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
profilestringObligatoiredrivingProfil de transport.
coordinatesstringObligatoire-La séquence de coordonnées GPS à aligner (lon,lat;lon,lat...)
overviewstringFacultatiffullPrécision de la géométrie de l'itinéraire aligné.

Nearest API

Aligne n'importe quelle coordonnée sur le segment de route réel le plus proche (snap) et renvoie des informations sur le nom de la route.

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

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
profilestringObligatoiredrivingProfil de transport.
coordinatesstringObligatoire-Le point à proximité duquel chercher. Format : lon,lat (une seule paire).
numberintegerFacultatif3Le nombre de routes candidates les plus proches à trouver.

Trip API

Résout le problème du voyageur de commerce (TSP) : trouve l'itinéraire circulaire (ou ouvert) le plus optimal pour visiter un ensemble de points donné et ordonne les points.

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

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
profilestringObligatoiredrivingProfil de transport.
coordinatesstringObligatoire-Points à visiter. Format : lon,lat;lon,lat...
sourcestringFacultatifanyLe point où l'itinéraire peut commencer (any ou le premier point).
destinationstringFacultatifanyLe point où l'itinéraire se termine (any ou le dernier point).

Geocoding API

Convertit des adresses en coordonnées géographiques (ou inversement). Idéal pour les systèmes de recherche intégrés.

GET/api/1/geocode

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
qstringObligatoire-L'adresse à rechercher (par ex. : « rue Nizami, Bakou »).
reversebooleanFacultatiffalseDoit être true pour effectuer un géocodage inverse (recherche de coordonnée vers adresse).

Isochrone API

Renvoie des polygones des zones géographiques accessibles depuis un point donné dans un temps ou une distance donnés.

GET/api/1/isochrone

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
pointstringObligatoire-Point central. Format : lat,lon.
time_limitintegerFacultatif600Limite de temps de trajet (en secondes).

Route Optimization API

Optimise les itinéraires d'une flotte de véhicules (Vehicle Routing Problem). Calcule le plan de livraison et de transport des véhicules au moindre coût.

POST/api/1/vrp

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
vehiclesarrayObligatoire[]La liste des véhicules (id, capacité, adresse de départ, etc.).
servicesarrayObligatoire[]Les adresses à desservir (id, coordonnées, temps de service, etc.).

Location Clustering API

Regroupe (en clusters) les coordonnées données selon leur proximité et leur densité géographique.

POST/api/1/cluster

Paramètres (Query Params)

ParamètreTypeStatutPar défautDescription
customersarrayObligatoire[]Coordonnées des clients et poids à regrouper en clusters.