Description
L'interface de programmation (ou API) utilisée par le site M fournit une grande partie des données de transport comme la description des différents réseaux, et les horaires des lignes de transport en commun de la Métropole grenobloise.
Toutes les données sont accessibles au format json (geojson pour les données à caractère géographique), pour être plus facilement exploitable depuis JavaScript ou toute autre technologie web.
Mais pour un plus grand confort d'utilisation, chaque jeu de données de type 'Point' est accessible aux formats csv ou xls. Le format csv est encodé en UTF8 et peut être ouvert dans tout éditeur de texte.
Réferentiel
Description des objets du référentiel à localisation ponctuel
URL : http://data.mobilites-m.fr/api/bbox/{json,xls,csv}
Permet de connaître la description d'objets de type 'point' tels que les arrêts, les agence M, les consigne MétroVélo etc... Ces objets étant localisés par leurs coordonnées GPS (WGS 84).
Cette fonctionnalité est, par exemple, utilisée sur ce site à l'adresse : velo.html
En savoir
Paramètre | Explication | Type | Obligatoire |
types | Liste des types disponibles :
agenceM - Agences Mobilité
arret - Zones d'arrêt, toutes lignes confondues
citelib - Emplacements des stations Cité Lib
dat - Distributeurs Automatiques de Titre
depositaire - Emplacements des dépositaires de titres de transport
hamo - Emplacements des stations Citélib by Ha:Mo
lieux - Lieux remarquables, bâtiments publics, etc…
MVA - Emplacements des agences MétroVélo
MVC - Emplacements des consignes MétroVélo
PAR - Parking Relais
PKG - Parking
PMV - Emplacements des panneaux à messages variables
pointArret - Poteaux d’arrêt de ligne, selon le sens de l’arrêt
pointService - Point de vente de ticket
On peut requêter plusieurs types en une seule fois en les séparant par des virgules. | string | non par défaut retourne tous les types |
xmin | Longitude minimale du rectangle englobant Doit être accompagné des 3 autres paramètres de position, sinon utilisation du rectangle englobant par défaut. | float | non |
xmax | Longitude maximale du rectangle englobant Doit être accompagné des 3 autres paramètres de position, sinon utilisation du rectangle englobant par défaut. | float | non |
ymin | Latitude minimale du rectangle englobant Doit être accompagné des 3 autres paramètres de position, sinon utilisation du rectangle englobant par défaut. | float | non |
ymax | Latitude maximale du rectangle englobant Doit être accompagné des 3 autres paramètres de position, sinon utilisation du rectangle englobant par défaut. | float | non |
Exemples :
http://data.mobilites-m.fr/api/bbox/csv?types=lieux -- permet d'obtenir tous les lieux.
http://data.mobilites-m.fr/api/bbox/json?types=METRO-VELO BOX,CONSIGNE METRO-VELO -- permet d'obtenir plusieurs types de données.
http://data.mobilites-m.fr/api/bbox/xls?xmin=5.7029&xmax=5.71146&ymin=45.10554&ymax=45.223&types=arret -- permet d'obtenir tous les arrêts dans un rectangle donné.
Masquer
Recherche d'objets du référentiel à localisation ponctuel
URL : http://data.mobilites-m.fr/api/findType/json
Permet de rechercher des objets de type 'point' tels que les arrêts, les agence M, les consigne MétroVélo etc... Et ce, en effectuant une recherche simple sur un nom et type.
Cette fonctionnalité est, par exemple, utilisée sur ce site à l'adresse : planTitresTag.html
En savoir
Paramètre | Explication | Type | Obligatoire |
types | Liste des types disponibles :
agenceM - Agences Mobilité
arret - Zones d'arrêt, toutes lignes confondues
citelib - Emplacements des stations Cité Lib
dat - Distributeurs Automatiques de Titre
depositaire - Emplacements des dépositaires de titres de transport
hamo - Emplacements des stations Citélib by Ha:Mo
lieux - Lieux remarquables, bâtiments publics, etc…
MVA - Emplacements des agences MétroVélo
MVC - Emplacements des consignes MétroVélo
PAR - Parking Relais
PKG - Parking
PMV - Emplacements des panneaux à messages variables
pointArret - Poteaux d’arrêt de ligne, selon le sens de l’arrêt
pointService - Point de vente de ticket
On peut requêter plusieurs types en une seule fois en les séparant par des virgules.
| string | oui |
query | Nom à rechercher | string | non Si non, retour tous les éléments du type |
Exemple :
http://data.mobilites-m.fr/api/findType/json?types=arret&query=chavant -- permet d'obtenir tous les arrêts Chavant.
Masquer
Liste des lignes de transport
URL : http://data.mobilites-m.fr/api/routers/default/index/routes
Permet de connaître la liste des lignes de transport ainsi que leurs descriptions (nom court, nom long, type, couleur...). Un filtre sur des codes lignes peuvent être appliqué afin de ne pas retourner les caratéristiques de toutes les lignes.
Cette fonctionnalité est, par exemple, utilisée sur ce site à l'adresse : horaires.html
En savoir
Liste des lignes de transport à proximité d'un point
URL : http://data.mobilites-m.fr/api/linesNear/json?x={X}&y={Y}&dist={Z}&details={bool}
Permet de connaître la liste des lignes de transport à proximité d'un point décrit par ses coordonnées GPS (WGS 84).
Cette fonctionnalité est, par exemple, utilisée par les applications mobiles M, fonctionnalité "A Proximité". Par défaut la distance du rayon de la recherche est de 300m. Il est possible de la modifier
Un paramètre permet d'avoir une description plus précise des éléments retournés.
En savoir
Paramètre | Explication | Type | Obligatoire |
x={X} | Longitude du point de référence, centre du cercle de recherche (en mode 'details' uniquement) | float | oui |
y={Y} | Latitude du point de référence, centre du cercle de recherche (en mode 'details' uniquement) | float | oui |
dist | Distance, en mètre, du centre de recherche (en mode 'details' uniquement) | int | non Si non, 300 par défaut |
details | Détail dans la liste de ligne retourné (en mode 'details' uniquement) | bool | non Si non, non, par défaut |
Exemple :
http://data.mobilites-m.fr/api/linesNear/json?x=5.709360123&y=45.176494599999984&dist=400&details=true -- permet d'obtenir la liste des lignes à proximité d'un point dans un rayon de 400m, avec un détail maximal.
Masquer
Description des lignes de transport
URL : http://data.mobilites-m.fr/api/lines/json ou URL : http://data.mobilites-m.fr/api/lines/poly
Permet de connaître la description des lignes de transport... Ces objets étant representés par une collection de coordonnées GPS (WGS 84) correspondant à leurs tracés. Si l'URL finie par
'json' le champ 'geometry' est renseigné, sinon le champ 'shape' est une representation de données de polylignes encodées, cf. : https://developers.google.com/maps/documentation/utilities/polylinealgorithm.
Cette fonctionnalité est, par exemple, utilisée sur ce site à l'adresse : planTC.html
En savoir
Paramètre | Explication | Type | Obligatoire |
types | Liste des types disponibles :
ligne - Tracé des lignes de transports
| string | oui |
reseaux | Liste des réseaux disponibles :
SEM - Tracé des lignes du réseau TAG
| string | oui si paramètre 'codes' non renseigné |
codes | Identifiant de la ligne au format :
SEM_{XXX}
Les identifiants de ligne sont accessibles en utilisant l'API Points et Recherche avec le paramètre 'reseaux'
| string | oui si paramètre 'reseaux' non renseigné |
xmin | Longitude minimale du rectangle englobant Doit être accompagné des 3 autres paramètres de position, sinon utilisation du rectangle englobant par défaut. | float | non |
xmax | Longitude maximale du rectangle englobant Doit être accompagné des 3 autres paramètres de position, sinon utilisation du rectangle englobant par défaut. | float | non |
ymin | Latitude minimale du rectangle englobant Doit être accompagné des 3 autres paramètres de position, sinon utilisation du rectangle englobant par défaut. | float | non |
ymax | Latitude maximale du rectangle englobant Doit être accompagné des 3 autres paramètres de position, sinon utilisation du rectangle englobant par défaut. | float | non |
Exemple :
http://data.mobilites-m.fr/api/lines/json?types=ligne&codes=SEM_C1 -- permet d'obtenir la géométrie de la ligne C1.
Masquer
Description des tronçons routier
URL : http://data.mobilites-m.fr/api/troncons/json ou http://data.mobilites-m.fr/api/troncons/poly
Permet de connaître la description des tronçons routier par niveau de zoom (haut et bas). Les tronçons routier sont representés par une collection de coordonnées GPS (WGS 84) correspondant à leurs tracés. Ces tronçons sont utilisés par le traficolor, leurs niveaux de service sont mis jour en temps réel dans l'API.
Si l'URL finie par 'json' le champ 'geometry' est renseigné, sinon le champ 'shape' est une representation de données de polylignes encodées, cf. : https://developers.google.com/maps/documentation/utilities/polylinealgorithm
Cette fonctionnalité est, par exemple, utilisée sur ce site à l'adresse : trafic.html
En savoir
Horaires
Fiche horaire d'une lignes de transport
URL : http://data.mobilites-m.fr/api/ficheHoraires/json?route={SEM,C38,SNC}:{X}&time={Y}
Permet de connaître les horaires d'une ligne de transport en commun à partir d'une heure donnée.
Cette fonctionnalité est, par exemple, utilisée sur ce site à l'adresse : horaires.html
En savoir
Paramètre | Explication | Type | Obligatoire |
route | Identifiant de la ligne :
SEM:{X} pour la TAG, C38:{X} pour TransIsère, ou SNC:{X} pour la SNCF | string | oui |
time | Heure de début de la recherche, au format timestamp en milliseconde | int | non Si non, retourne la fiche horaire par rapport l'heure courante |
Exemple :
http://data.mobilites-m.fr/api/ficheHoraires/json?route=SEM:C&time=1449593400000 -- la fiche horaire de la ligne C de la TAG pour 08 décembre 2015 à 16h50 (attention ces horaires risquent de ne pas être disponibles lors d'une consultation ultérieure).
Masquer
Horaires pour une zone d'arrêt
URL : http://data.mobilites-m.fr/api/routers/default/index/clusters/{SEM,C38}:{X}/stoptimes
Permet de connaître les horaires d'un ou de tous les véhicules de transport en commun (bus, tram, car) passant par une zone arrêt en précisant son identifiant TAG (SEM) ou TransIsère (C38). Les véhicules TransIsère sont inclus dans les zone d'arrêts TAG et inversement.
Cette fonctionnalité est, par exemple, utilisée sur ce site à l'adresse : planTC.html
En savoir
Les horaires affichés sont les horaires en "temps réel", quand ils sont disponibles, théoriques sinon (parametre de sortie realtime à "true").
Les identifiants de zone d'arrêt sont accessibles en utilisant l'API Points et Recherche avec le type 'arret'
Paramètre | Explication | Type | Obligatoire |
{SEM,C38}:{X} | Identifiant de la zone d'arrêt au format :
SEM:{X} pour la TAG ou C38:{X} pour TransIsère | string | oui |
Exemple :
http://data.mobilites-m.fr/api/routers/default/index/clusters/SEM:GENCONDORCE/stoptimes -- permet d'obtenir les horaires des lignes TAG et Transisère passant pas la zone d'arrêt Condorcet
Masquer
Horaires au poteau
URL : http://data.mobilites-m.fr/api/routers/default/index/stops/{SEM,C38}:id/stoptimes/
Permet de connaître les horaires d'un ou de tous les véhicules de transport en commun (bus, tram, car) passant par un arrêt en précisant son identifiant TAG (SEM) ou TransIsère (C38).Les véhicules TransIsère sont inclus dans arrêts TAG et inversement.
Cette fonctionnalité est, par exemple, utilisée sur ce site à l'adresse : planTC.html
En savoir
Les horaires affichés sont les horaires en "temps réel", quand ils sont disponibles, théoriques sinon (parametre de sortie realtime à "true").
Les identifiants des points d'arrêt sont accessibles en utilisant l'API Points et Recherche avec le type 'pointArret'.
Paramètre | Explication | Type | Obligatoire |
id | Identifiant du point d'arrêt au format :
SEM:{X} pour la TAG ou C38:{X} pour TransIsère
| string | oui |
Exemple :
http://data.mobilites-m.fr/api/routers/default/index/stops/SEM:3207/stoptimes -- permet d'obtenir les horaires des lignes TAG et Transisère passant à l'arrêt Condorcet pour la ligne E direction Le Paluel
Masquer
Horaires OTP
API Horaires OTP
URL : http://data.mobilites-m.fr/otp/routers/default/index/
Le calculateur OTP permet la mise à disposition des horaires via sa propre API. A la différence des appels précédents, cet appel ne concerne que les horaires théoriques.
Les spécifications de cette API sont disponibles, en anglais, sur le site d'OpenTripPlanner à l'adresse suivante : http://dev.opentripplanner.org/apidoc/0.15.0/resource_IndexAPI.html.
API Calculateur OTP
URL : http://data.mobilites-m.fr/otp/routers/default/plan
Cette API permet l'interrogation du calculateur Metromobilité basé sur OpenTripPlanner.
Pour le moment, cette API est donnée à titre expérimental, nous la finaliserons prochainement.
Les spécifications de cette API sont disponibles, en anglais, sur le site d'OpentripPlanner à l'adresse suivante : http://dev.opentripplanner.org/apidoc/0.15.0/resource_PlannerResource.html.
Donnees dynamiques
Donnees dynamiques
URL : http://data.mobilites-m.fr/api/dyn/{X}/json
Permet de connaître les données dynamiques de différents objets.
Cette fonctionnalité est, par exemple, utilisée sur ce site à l'adresse : planTC.html
En savoir
Paramètre | Explication | Type | Obligatoire |
types | Liste des types disponibles :
indiceTr - Indices du trafic routier
indiceTc - Indices du trafic des transports en commun
indiceAtmo - Indice Atmosphérique
indiceAtmoFull - Nouvel indice atmosphérique
hamo - Disponibilités des citélib by Ha:mo
PMV - Messages sur les panneaux à message variable
PAR - Nombre de places disponibles dans les parking P+R
ligne - Données de lignes de transport
trr - Données de tronçons routiers
evt - Evènements
evtTC - Evènements transport en commun
evtTR - Evènements routiers
| string | oui un et un seul paramétre parmis la liste |
Exemple :
http://data.mobilites-m.fr/api/dyn/trr/json -- permet d'obtenir les niveaux de services temps réel de tronçons routiers.
Masquer
Vous voulez utiliser l'API M, et vous avez des remarques, des interrogations ?
Que ce soit sur le fonctionnement, les données, ou simplement pour nous signaler une réutilisation des données, vous pouvez nous contacter par le formulaire en bas de cette page.
Nous sommes à votre écoute, pour permettre de faire évoluer le système afin de l'adapter et l'améliorer. N'hésitez pas !