GTFS Schedule décrit l’offre de transport planifiée. GTFS Realtime, souvent appelé GTFS-RT, transmet des informations actualisées sur le service. GBFS décrit les services de mobilité partagée, notamment leurs stations et les véhicules disponibles selon les flux publiés. Choisissez le format à partir de la question que votre application doit résoudre.
Ces formats organisent les données ; ils ne garantissent ni leur disponibilité partout ni la qualité de chaque flux.
GTFS pour représenter l’offre planifiée
Un jeu GTFS Schedule réunit des fichiers tabulaires décrivant notamment les opérateurs, les arrêts, les lignes, les courses et leurs passages. Les calendriers indiquent les jours concernés. Les fichiers sont reliés par des identifiants. Référence GTFS Schedule.
Il permet de répondre à des questions comme « où se trouve cet arrêt ? » ou « quel passage est prévu pour ce service ? ». Pour exploiter un horaire, vous devez interpréter le calendrier et les relations entre les fichiers.
Lire uniquement une liste d’arrêts ne suffit donc pas à reconstruire les passages. Inversement, une position d’arrêt peut être utile sans afficher d’horaires.
GTFS-RT pour actualiser l’information de service
GTFS Realtime peut fournir des mises à jour de courses, des positions de véhicules et des alertes. Les mises à jour de courses concernent notamment les passages et les changements de service. Les flux utilisent Protocol Buffers, un format de sérialisation structuré. Introduction GTFS Realtime.
Un producteur peut publier certaines catégories sans fournir toutes les autres. La présence d’un flux de positions ne garantit pas des estimations pour tous les arrêts.
Pour l’interface, distinguez le passage planifié de l’estimation actualisée. Notre guide horaires théoriques et temps réel explique cette différence du point de vue de l’utilisateur.
GBFS pour la mobilité partagée
GBFS utilise des flux JSON pour décrire un service de mobilité partagée. Selon le système et la version, ils peuvent renseigner les stations, leur état, les véhicules et d’autres caractéristiques du service. La documentation distingue notamment les informations de station et les états de disponibilité. Documentation GBFS.
Séparez dans votre application les emplacements relativement stables des états qui évoluent rapidement. Conservez la version du format et l’horodatage pertinent lors de l’interprétation.
Un flux de disponibilité n’est pas une API de réservation ou de déverrouillage. Il aide à découvrir l’offre ; l’opération de location relève du service concerné.
Comparer selon le cas d’usage
| Besoin | Format à examiner |
|---|---|
| Décrire les arrêts et les lignes planifiés | GTFS Schedule |
| Interpréter les passages prévus et les jours de service | GTFS Schedule |
| Actualiser les passages ou recevoir des informations de service | GTFS-RT, selon les flux publiés |
| Localiser des stations ou véhicules de mobilité partagée | GBFS, selon les données publiées |
Exemple de conception : une carte affiche des arrêts de tram et des stations de vélos. Elle utilise des données structurelles pour les lieux et des états actualisés pour la disponibilité des vélos. Les deux couches ont des besoins différents de cache et de mise à jour.
Prévoir les limites de chaque source
Vérifiez les versions, les champs facultatifs, la couverture et les droits d’utilisation. Un identifiant n’a de sens que dans son contexte : deux producteurs peuvent utiliser des chaînes identiques pour des entités différentes.
Prévoyez également les données manquantes ou périmées. Une liste vide issue d’un flux indisponible ne doit pas être présentée comme une absence de service. Évitez de remplacer silencieusement une information inconnue par zéro.
Utiliser les flux directement ou une API
Une intégration directe vous laisse la responsabilité de collecter, valider et interpréter les sources. Une API peut proposer un contrat commun, mais vous devez toujours lire sa couverture, ses avertissements et ses conditions.
Pour un premier cas d’usage ROOTE, consultez comment rechercher les arrêts à proximité avec une API. Commencez par le besoin de votre interface, puis vérifiez les champs réellement disponibles.
Lire des extraits et choisir une architecture
Dans GTFS Schedule, un extrait de stop_times.txt relie une course, un arrêt et un passage planifié. L’exemple réduit ci-dessous est pédagogique : il ne constitue pas un jeu GTFS complet et ses identifiants doivent être reliés à trips.txt, stops.txt et aux calendriers.
Pour GTFS Realtime, recherchez l’entité utile : une TripUpdate peut actualiser un passage, une VehiclePosition décrit une position, et une Alert transmet une information de service. Une position de véhicule n’est pas automatiquement une estimation d’arrivée. Le format transmis est Protocol Buffers ; une représentation JSON de diagnostic n’est pas le flux binaire de référence.
Dans GBFS, station_information décrit les stations tandis que station_status décrit leurs états publiés. Les noms de certains compteurs et les fichiers disponibles changent selon la version. L’extrait JSON ci-dessous illustre GBFS 2.3 et ses champs num_bikes_available et num_docks_available ; vérifiez la version avant de reprendre un exemple.
Une carte de lieux peut commencer par les données structurelles. Un écran de prochains passages nécessite ensuite les mises à jour correspondantes et un repli explicitement planifié. Un écran de vélos disponibles doit gérer des compteurs, des conditions de location et une validité temporelle. Ces trois écrans ne partagent pas automatiquement la même politique de cache.
# Extrait pédagogique de stop_times.txt
trip_id,arrival_time,departure_time,stop_id,stop_sequence
trip_demo,08:10:00,08:10:00,stop_demo,1
# Extrait pédagogique de station_status en GBFS 2.3
{
"station_id": "station_demo",
"num_bikes_available": 3,
"num_docks_available": 7,
"is_installed": true,
"is_renting": true,
"is_returning": true,
"last_reported": 1720000000
}
Mettre en forme une disponibilité vélo et sa fraîcheur
Choisir une API ou un MCP pour votre produit
Questions fréquentes
GTFS contient-il automatiquement du temps réel ?
Non. GTFS Schedule représente l’offre planifiée ; les informations actualisées relèvent d’autres flux, notamment GTFS-RT.
GBFS permet-il de déverrouiller un vélo ?
Il décrit le service et ses données publiques. La location passe par les capacités proposées par l’opérateur.
Un format standard garantit-il une couverture complète ?
Non. Le format définit une structure ; la couverture et les informations publiées dépendent des sources.