WatriFeed-API : Web API pour faciliter l'exploitation des données de transport en Afrique
Présentation WatriFeed-API
WatriFeed-API est une API Web , conçu et développé par l’équipe du projet Data-Transport.
WatriFeed-API a pour objectif principal de fournir des informations techniques aux développeurs, pour leurs offrir la possibilité de mettre en place des solutions basées sur les données de transport.
WatriFeed-API met à disposition une interface de programmation ( API ) qui permet aux développeurs d’exploiter au maximum les données sur le réseau de transport des villes africaines , sans avoir une connaissance technique sur le fichier GTFS dans lequel les données sont disponible.
Elle permet l’accès aux services suivants :
- Les lignes de transport dans la ville
- Les trajets sur une ligne
- Les arrêts sur chaque trajet
- Le temps de parcours de chaque trajet
- L’ensemble des arrêts
- La fréquence de chaque trajet
- Le calcul de trajets vers une destination.
WatriFeed-API - Sotrama_Bamako
Exploiter au maximum les données sur le réseau de transport des SOTRAMAs de la ville de Bamako via notre API
Les requêtes
Toutes les requêtes de WatriFeed-API utilisent une structure commune.
La syntaxe suivante s’applique à tous les services, sauf indication contraire.
/api/12/[{service_id}/]{service}[?option=valeur[&option=valeur][&…]…]
Options générales
Parametre | Description |
---|---|
service_id | Désigne l’identifiant du service demander, |
service | Peut prendre l’une des valeur suivantes : route, routes, trip, trips, stop, stops, destinations, shape, shapes, |
Exemples de requêtes
Les réponses
Chaque réponse de l’API est un objet json avec des propriétés qui contiennent une numérique, chaîne de caractères, objet ou tableau.
Exemple de réponse
Les services
Service Routes
Ce service permet d’accéder aux lignes du réseau de transport des SOTRAMAs de Bamako.
Obtenir toutes les lignes du réseau de transport :
La requête
GET | /api/12/routes |
---|
Exemple de requête
La réponse
La réponse est un tableau d’objets json, chaque objet représente une ligne de transports avec les attributs suivants :
Attribut | Description |
---|---|
route_id | Identifiant de la ligne |
agency_id | Identifiant de l’agence du réseau de transport |
route_short_name | Version courte du nom de la ligne |
route_long_name | Le nom complet de la ligne |
route_desc | Description de la ligne |
route_type | Décrit le moyen de transport utilisé pour la ligne. |
route_url | Adresse web de la ligne |
route_color | Couleur de la ligne correspondant à celle utilisée dans les supports
destinés au public. Ex : FFFFFF |
route_text_color | Couleur lisible pour le texte à afficher sur la couleur d’arrière plan
route_color |
route_sort_order | Spécifie l’ordre dans lequel les lignes seront présentés aux usagers. |
Obtenir une seule ligne
La requête
GET | /api/12/[{route_id}/]route[?[trips={true | false}][&stops={true | false}] |
---|
En plus des options générales, les options suivantes peuvent êtres prises en charge pour ce service
Option | Valeurs | La description |
---|---|---|
trips | true, false | Avoir une route avec ses trajets |
stops | true, false | Avoir une route avec ses stops |
Exemple de requête :
La réponse
Le nœud trips est un tableau de trajets sur la ligne L1. Chaque trajet est un objet json.
Service Stops
Ce service permet d’accéder aux stops du réseau de transport des SOTRAMAs de Bamako.
Obtenir tous les arrêts du réseau de transport
La requête
GET | /api/12/stops |
---|
Exemple de requête
La réponse
La réponse est un tableau d’objets json, chaque objet représente un arrêt avec les attributs suivants
Attributs | Description |
---|---|
stop_id | Identifiant de l’arrêt |
stop_code | Texte ou numéro identifiant l’emplacement pour les usagers. |
stop_name | Nom de l’arrêt |
stop_desc | Description de l’arrêt |
stop_lat | Latitude de l’arrêt |
stop_lon | Longitude de l’arrêt |
zone_id | Identifiant de la zone tarifaire de l’arrêt |
stop_url | Url d’une page web qui décrit l’arrêt |
location_type | Type d’arrêt |
parent_station | Spécifie la hiérarchie entre les différents arrêt |
stop_timezone | Fuseau horaire de l’arrêt. |
wheelchair_boardings | Indique si l'arrêt est aménagé pour les usagers en fauteuil roulant |
level_id | Niveau auquel l’arrêt se trouve |
platform_code | Identifiant de quai pour un arrêt de type quai. |
Obtenir un seul arrêt
La requête
GET | /api/12/[{stop_id}/]stop |
---|
Exemple de requête
La réponse
Service Trajets (trips)
Ce service permet d’accéder aux trajets du réseau de transport des SOTRAMAs de Bamako.
Obtenir tous les trajets du réseau de transport
La requête
GET | /api/12/trips |
---|
Exemple de requête
La réponse
La réponse est un tableau d’objets json, chaque objet représente un trajet avec les attributs suivants :
Attribut | Description |
---|---|
route_id | Identifiant de la ligne du trajet |
service_id | Jours auxquels le service est disponible |
trip_id | Identifiant du trajet |
trip_headsign | Destination du trajet |
trip_short_name | Numéro du trajet |
direction_id | Direction du trajet (0= Aller, 1=Retour) |
block_id | Identifiant du bloc auquel appartient le trajet |
shape_id | Identifiant de la forme géo-spatiale décrivant le parcours du
véhicule lors du trajet |
wheelchair_accessible | Indique si le trajet est aménagé pour les usagers en fauteuil
roulant. |
bikes_allowed | Indique si les vélos sont autorisés pour le trajet spécifié. |
route_long_name | Nom complet de la ligne du trajet |
Obtenir un seul trajet
La requête
GET | /api/12/[{trip_id}/]trip[?[stops={true | false}][&shapes={true | false}] |
---|
En plus des options générales, les options suivantes peuvent êtres prises en charge pour ce service :
Option | Valeurs | La description |
---|---|---|
stops | true, false | Avoir un trajet avec ses stops |
shapes | true, false | Avoir un trajet avec sa forme géo-spatiale |
Exemple de requête
La réponse
Service formes géo-spatiale des trajets
Ce service permet d’accéder aux formes géo-spatiale des trajets du réseau de transport des SOTRAMAs de Bamako.
Obtenir toutes les formes géo-spatiale des trajets du réseau de transport
La requête
GET | /api/12/shapes |
---|
Exemple de requête
La réponse
La réponse est un tableau d’objets json, chaque objet représente un point du tracé décrivant le parcours emprunté par un véhicule sur la totalité d'un itinéraire, avec les attributs suivants :
Attribut | Description |
---|---|
shape_id | Identifie un tracé |
shape_pt_lat | Latitude d’un point du tracé |
shape_pt_lon | Longitude d’un point du tracé |
shape_pt_sequence | Séquence selon laquelle les points du tracé sont reliés les uns aux
shape_pt_sequence autres pour former le tracé |
shape_dist_traveled | Distance réelle parcourue le long du tracé entre le premier point du tracé jusqu'à celui spécifié dans cet enregistrement. |