Resource details

File name: Horaires temps réel des lignes du réseau DISTRIBUS
Format: gtfs-rt

This resource file is part of the dataset Réseau urbain Distribus.

Download availability

2025-08-22
100%
2025-08-23
100%
2025-08-24
100%
2025-08-25
100%
2025-08-26
100%
2025-08-27
100%
2025-08-28
100%
2025-08-29
100%
2025-08-30
100%
2025-08-31
100%
2025-09-01
100%
2025-09-02
100%
2025-09-03
100%
2025-09-04
100%
2025-09-05
100%
2025-09-06
100%
2025-09-07
100%
2025-09-08
100%
2025-09-09
100%
2025-09-10
53.6%
2025-09-11
70.2%
2025-09-12
67.2%
2025-09-13
0%
2025-09-14
93.7%
2025-09-15
97.3%
2025-09-16
100%
2025-09-17
100%
2025-09-18
100%
2025-09-19
100%
2025-09-20
100%
2025-09-21
100%
Learn more
We test this resource download availability every hour by making an HTTP HEAD request with a timeout of 5 seconds. If we detect a downtime, we perform subsequent tests every 10 minutes, until the resource is back online.

For SIRI and SIRI Lite feeds, we perform a GET request: a 401 or 405 status code is considered successful. In case of HTTP 500, the feed will be considered unavailable, unless the body appears to contain SOAP.

Validation details

⚠️24 warnings

Validation carried out using the current GTFS file and the GTFS-RT the 2025-09-21 at 09:08 Europe/Paris using the MobilityData GTFS-RT validator.

Warnings

vehicle_id not populated W002 8 errors

vehicle_id should be populated for TripUpdates and VehiclePositions

Sample errors
  • trip_id 1101D-0905 does not have a vehicle_id
  • trip_id 1101D-0920 does not have a vehicle_id
  • trip_id 1101D-0850 does not have a vehicle_id
  • trip_id 401D-1000 does not have a vehicle_id
  • trip_id 401D-0930 does not have a vehicle_id

schedule_relationship not populated W009 16 errors

trip.schedule_relationship and stop_time_update.schedule_relationship should be populated

Sample errors
  • trip_id 1101D-0905 stop_sequence 1 (and potentially more for this trip) does not have a schedule_relationship
  • trip_id 1101D-0905 does not have a schedule_relationship
  • trip_id 1101D-0920 stop_sequence 1 (and potentially more for this trip) does not have a schedule_relationship
  • trip_id 1101D-0920 does not have a schedule_relationship
  • trip_id 1101D-0850 stop_sequence 1 (and potentially more for this trip) does not have a schedule_relationship
Validate this GTFS-RT now

Previous validations

Here is a recap of all the error types encountered over the last 30 days.

Error ID Description Errors count Number of occurences
W002 vehicle_id should be populated for TripUpdates and VehiclePositions 699 24 times (86 % of validations)
W009 trip.schedule_relationship and stop_time_update.schedule_relationship should be populated 1 393 24 times (86 % of validations)
W008 The data in a GTFS-realtime feed should always be less than one minute old 16 16 times (57 % of validations)
E025 Within the same stop_time_update, arrival and departures times can be the same, or the departure time can be later than the arrival time - the departure time should never come before the arrival time. 11 9 times (32 % of validations)

GTFS-RT feed content

Entities

Entities present in this feed at 2025-09-21 at 11:13 Europe/Paris.

trip_updates (9) vehicle_positions (0) service_alerts (0)

Entities seen in the last 7 days.

trip_updates

Decoded GTFS-RT feed

See full payload

Here is the decoded GTFS-RT feed Protobuf at 2025-09-21 at 11:13 Europe/Paris. You can look at the GTFS-RT documentation.

{ "entity": [ { "id": "SM:T3DF-3-1135", "tripUpdate": { "stopTimeUpdate": [ { "arrival": { "time": "1758447360" }, "departure": { "time": "1758447360" }, "stopId": "Salinenstrasse_AR", "stopSequence": 2 }, { "arrival": { "time": "1758447480" }, "departure": { "time": "1758447480" }, "stopId": "Bären_AR", "stopSequence": 4 }, { "arrival": { "time": "1758447540" }, "departure": { "time": "1758447540" }, "stopId": "Breite_AR", "stopSequence": 5 }, { "arrival": { "time": "1758447600" }, "departure": { "time": "1758447600" }, "stopId": "Waldenburgerstrasse_AR", "stopSequence": 6 }, { "arrival": { "time": "1758448260" }, "departure": { "time": "1758448260" }, "stopId": "Spalentor_AR", "stopSequence": 14 }, { "arrival": { "time": "1758448560" }, "departure": { "time": "1758448560" }, "stopId": "Im_Westfeld_AR", "stopSequence": 18 }, { "arrival": { "time": "1758448740" }, "departure": { "time": "1758448740" }, "stopId": "Burgfelderhof_A", "stopSequence": 21 }, { "arrival": { "time": "1758448920" }, "departure": { "time": "1758448920" }, "stopId": "Saint-Exupéry_T3", "stopSequence": 22 } ], "timestamp": "1758443762", "trip": { "routeId": "T3", "tripId": "T3DF-3-1135" } } }, { "id": "SM:T3DF-7-1137", "tripUpdate": { "stopTimeUpdate": [ { "arrival": { "time": "1758447600" }, "departure": { "time": "1758447600" }, "stopId": "Soleil_R", "stopSequence": 2 }, { "arrival": { "time": "1758448260" }, "departure": { "time": "1758448260" }, "stopId": "Strassburgerallee_AR", "stopSequence": 9 }, { "arrival": { "delay": 120, "time": "1758448920" }, "departure": { "delay": 120, "time": "1758448920" }, "stopId": "Bankverein_AR", "stopSequence": 16 }, { "arrival": { "delay": 120, "time": "1758449220" }, "departure": { "delay": 120, "time": "1758449220" }, "stopId": "Waldenburgerstrasse_AR", "stopSequence": 20 } ], "timestamp": "1758444006", "trip": { "directionId": 1, "routeId": "T3", "tripId": "T3DF-7-1137" } } }, { "id": "SM:T3DF-3-1107", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 240, "time": "1758445860" }, "stopId": "Burgfelderhof_R", "stopSequence": 1 }, { "arrival": { "delay": 360, "time": "1758446640" }, "departure": { "delay": 360, "time": "1758446640" }, "stopId": "Barfüsserplatz_AR", "stopSequence": 11 } ], "timestamp": "1758442266", "trip": { "directionId": 1, "routeId": "T3", "tripId": "T3DF-3-1107" } } }, { "id": "SM:1101D-1105", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 99, "time": "1758445599" }, "stopId": "EuroAirport_AR", "stopSequence": 1 }, { "arrival": { "delay": 69, "time": "1758446169" }, "stopId": "Saint-Louis_Gare_Ouest_AR", "stopSequence": 2 } ], "timestamp": "1758445617", "trip": { "directionId": 1, "routeId": "11", "tripId": "1101D-1105" } } }, { "id": "SM:401D-1100", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 419, "time": "1758445619" }, "stopId": "Professeur_Coste_A", "stopSequence": 1 }, { "arrival": { "delay": 419, "time": "1758445679" }, "departure": { "delay": 419, "time": "1758445679" }, "stopId": "Rousserolles_A", "stopSequence": 2 }, { "arrival": { "delay": 389, "time": "1758445709" }, "departure": { "delay": 389, "time": "1758445709" }, "stopId": "Muguet_A", "stopSequence": 3 }, { "arrival": { "delay": 392, "time": "1758445712" }, "departure": { "delay": 392, "time": "1758445712" }, "stopId": "Cité_Beaulieu_A", "stopSequence": 4 }, { "arrival": { "delay": 419, "time": "1758445739" }, "departure": { "delay": 419, "time": "1758445739" }, "stopId": "Parc_des_Maréchaux_A", "stopSequence": 5 }, { "arrival": { "delay": 425, "time": "1758445925" }, "departure": { "delay": 425, "time": "1758445925" }, "stopId": "Petite_Camargue_Alsacienne_A", "stopSequence": 6 }, { "arrival": { "delay": 449, "time": "1758446009" }, "departure": { "delay": 449, "time": "1758446009" }, "stopId": "Saint-Claude_A", "stopSequence": 7 }, { "arrival": { "delay": 419, "time": "1758446039" }, "departure": { "delay": 419, "time": "1758446039" }, "stopId": "Chapelle_A", "stopSequence": 8 }, { "arrival": { "delay": 479, "time": "1758446099" }, "departure": { "delay": 479, "time": "1758446099" }, "stopId": "Rue_de_Séville_A", "stopSequence": 9 }, { "arrival": { "delay": 539, "time": "1758446219" }, "departure": { "delay": 539, "time": "1758446219" }, "stopId": "Cité_du_Rail_A", "stopSequence": 10 }, { "arrival": { "delay": 479, "time": "1758446279" }, "departure": { "delay": 479, "time": "1758446279" }, "stopId": "Trois_Lys_A", "stopSequence": 11 }, { "arrival": { "delay": 479, "time": "1758446339" }, "departure": { "delay": 479, "time": "1758446339" }, "stopId": "Saint-Louis_Gare_Est_AR", "stopSequence": 12 }, { "arrival": { "delay": 539, "time": "1758446459" }, "departure": { "delay": 539, "time": "1758446459" }, "stopId": "Église_Saint-Louis_A", "stopSequence": 13 }, { "arrival": { "delay": 599, "time": "1758446579" }, "departure": { "delay": 599, "time": "1758446579" }, "stopId": "Breisach_A", "stopSequence": 14 }, { "arrival": { "delay": 599, "time": "1758446639" }, "departure": { "delay": 599, "time": "1758446639" }, "stopId": "Croisée_des_Lys_A", "stopSequence": 15 }, { "arrival": { "delay": 539, "time": "1758446699" }, "departure": { "delay": 539, "time": "1758446699" }, "stopId": "Claude_Hess_A", "stopSequence": 16 }, { "arrival": { "delay": 539, "time": "1758446759" }, "departure": { "delay": 539, "time": "1758446759" }, "stopId": "Rhin_A", "stopSequence": 17 }, { "arrival": { "delay": 599, "time": "1758446879" }, "departure": { "delay": 599, "time": "1758446879" }, "stopId": "Notre-Dame_de_la_Paix_A", "stopSequence": 18 }, { "arrival": { "delay": 599, "time": "1758446939" }, "departure": { "delay": 599, "time": "1758446939" }, "stopId": "Frontière_A", "stopSequence": 19 }, { "arrival": { "delay": 659, "time": "1758447119" }, "departure": { "delay": 659, "time": "1758447119" }, "stopId": "Hüningerstrasse_A", "stopSequence": 20 } ], "timestamp": "1758445627", "trip": { "routeId": "604", "tripId": "401D-1100" } } }, { "id": "SM:401D-1200", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 93, "time": "1758448893" }, "stopId": "Professeur_Coste_A", "stopSequence": 1 }, { "arrival": { "delay": 93, "time": "1758448953" }, "departure": { "delay": 93, "time": "1758448953" }, "stopId": "Rousserolles_A", "stopSequence": 2 }, { "arrival": { "delay": 63, "time": "1758448983" }, "departure": { "delay": 63, "time": "1758448983" }, "stopId": "Muguet_A", "stopSequence": 3 }, { "arrival": { "delay": 73, "time": "1758448993" }, "departure": { "delay": 73, "time": "1758448993" }, "stopId": "Cité_Beaulieu_A", "stopSequence": 4 }, { "arrival": { "delay": 93, "time": "1758449013" }, "departure": { "delay": 93, "time": "1758449013" }, "stopId": "Parc_des_Maréchaux_A", "stopSequence": 5 }, { "arrival": { "delay": 168, "time": "1758449268" }, "departure": { "delay": 168, "time": "1758449268" }, "stopId": "Petite_Camargue_Alsacienne_A", "stopSequence": 6 }, { "arrival": { "delay": 81, "time": "1758449301" }, "departure": { "delay": 81, "time": "1758449301" }, "stopId": "Chapelle_A", "stopSequence": 8 } ], "timestamp": "1758445627", "trip": { "routeId": "604", "tripId": "401D-1200" } } }, { "id": "SM:401D-1030", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 799, "time": "1758444199" }, "scheduleRelationship": "SKIPPED", "stopId": "Schifflände_R", "stopSequence": 1 }, { "arrival": { "delay": 988, "time": "1758444748" }, "departure": { "delay": 988, "time": "1758444748" }, "scheduleRelationship": "SKIPPED", "stopId": "Voltaplatz_R", "stopSequence": 3 }, { "arrival": { "delay": 988, "time": "1758444808" }, "departure": { "delay": 988, "time": "1758444808" }, "scheduleRelationship": "SKIPPED", "stopId": "Hüningerstrasse_R", "stopSequence": 4 }, { "arrival": { "delay": 988, "time": "1758444928" }, "departure": { "delay": 988, "time": "1758444928" }, "scheduleRelationship": "SKIPPED", "stopId": "Frontière_R", "stopSequence": 5 }, { "arrival": { "delay": 988, "time": "1758444988" }, "departure": { "delay": 988, "time": "1758444988" }, "scheduleRelationship": "SKIPPED", "stopId": "Notre-Dame_de_la_Paix_R", "stopSequence": 6 }, { "arrival": { "delay": 988, "time": "1758445048" }, "departure": { "delay": 988, "time": "1758445048" }, "scheduleRelationship": "SKIPPED", "stopId": "Rhin_R", "stopSequence": 7 }, { "arrival": { "delay": 827, "time": "1758445187" }, "departure": { "delay": 827, "time": "1758445187" }, "stopId": "Trois_Lys_R", "stopSequence": 13 }, { "arrival": { "delay": 792, "time": "1758445272" }, "departure": { "delay": 792, "time": "1758445272" }, "stopId": "Cité_du_Rail_R", "stopSequence": 14 }, { "arrival": { "delay": 768, "time": "1758445308" }, "departure": { "delay": 768, "time": "1758445308" }, "stopId": "Rue_de_Séville_R", "stopSequence": 15 }, { "arrival": { "delay": 759, "time": "1758445359" }, "departure": { "delay": 759, "time": "1758445359" }, "stopId": "Chapelle_R", "stopSequence": 16 }, { "arrival": { "delay": 729, "time": "1758445389" }, "departure": { "delay": 729, "time": "1758445389" }, "stopId": "Saint-Claude_R", "stopSequence": 17 }, { "arrival": { "delay": 795, "time": "1758445455" }, "departure": { "delay": 795, "time": "1758445455" }, "stopId": "Petite_Camargue_Alsacienne_R", "stopSequence": 18 }, { "arrival": { "delay": 975, "time": "1758445695" }, "departure": { "delay": 975, "time": "1758445695" }, "stopId": "Parc_des_Maréchaux_R", "stopSequence": 19 } ], "timestamp": "1758444201", "trip": { "directionId": 1, "routeId": "604", "tripId": "401D-1030" } } }, { "id": "SM:401D-1130", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 243, "time": "1758447243" }, "stopId": "Schifflände_R", "stopSequence": 1 }, { "arrival": { "delay": 243, "time": "1758447363" }, "departure": { "delay": 243, "time": "1758447363" }, "stopId": "Kinderspital_UKBB_R", "stopSequence": 2 }, { "arrival": { "delay": 243, "time": "1758447603" }, "departure": { "delay": 243, "time": "1758447603" }, "stopId": "Voltaplatz_R", "stopSequence": 3 }, { "arrival": { "delay": 243, "time": "1758447663" }, "departure": { "delay": 243, "time": "1758447663" }, "stopId": "Hüningerstrasse_R", "stopSequence": 4 }, { "arrival": { "delay": 243, "time": "1758447783" }, "departure": { "delay": 243, "time": "1758447783" }, "stopId": "Frontière_R", "stopSequence": 5 }, { "arrival": { "delay": 243, "time": "1758447843" }, "departure": { "delay": 243, "time": "1758447843" }, "stopId": "Notre-Dame_de_la_Paix_R", "stopSequence": 6 }, { "arrival": { "delay": 243, "time": "1758447903" }, "departure": { "delay": 243, "time": "1758447903" }, "stopId": "Rhin_R", "stopSequence": 7 }, { "arrival": { "delay": 243, "time": "1758447963" }, "departure": { "delay": 243, "time": "1758447963" }, "stopId": "Claude_Hess_R", "stopSequence": 8 }, { "arrival": { "delay": 243, "time": "1758448023" }, "departure": { "delay": 243, "time": "1758448023" }, "stopId": "Croisée_des_Lys_R", "stopSequence": 9 }, { "arrival": { "delay": 243, "time": "1758448083" }, "departure": { "delay": 243, "time": "1758448083" }, "stopId": "Breisach_R", "stopSequence": 10 }, { "arrival": { "delay": 213, "time": "1758448113" }, "departure": { "delay": 213, "time": "1758448113" }, "stopId": "Église_Saint-Louis_R", "stopSequence": 11 }, { "arrival": { "delay": 243, "time": "1758448143" }, "departure": { "delay": 243, "time": "1758448143" }, "stopId": "Saint-Louis_Gare_Est_AR", "stopSequence": 12 }, { "arrival": { "delay": 363, "time": "1758448323" }, "departure": { "delay": 363, "time": "1758448323" }, "stopId": "Trois_Lys_R", "stopSequence": 13 }, { "arrival": { "delay": 303, "time": "1758448383" }, "departure": { "delay": 303, "time": "1758448383" }, "stopId": "Cité_du_Rail_R", "stopSequence": 14 }, { "arrival": { "delay": 303, "time": "1758448443" }, "departure": { "delay": 303, "time": "1758448443" }, "stopId": "Rue_de_Séville_R", "stopSequence": 15 }, { "arrival": { "delay": 273, "time": "1758448473" }, "departure": { "delay": 273, "time": "1758448473" }, "stopId": "Chapelle_R", "stopSequence": 16 }, { "arrival": { "delay": 243, "time": "1758448503" }, "departure": { "delay": 243, "time": "1758448503" }, "stopId": "Saint-Claude_R", "stopSequence": 17 }, { "arrival": { "delay": 303, "time": "1758448563" }, "departure": { "delay": 303, "time": "1758448563" }, "stopId": "Petite_Camargue_Alsacienne_R", "stopSequence": 18 }, { "arrival": { "delay": 483, "time": "1758448803" }, "departure": { "delay": 483, "time": "1758448803" }, "stopId": "Parc_des_Maréchaux_R", "stopSequence": 19 }, { "arrival": { "delay": 303, "time": "1758448863" }, "departure": { "delay": 303, "time": "1758448863" }, "stopId": "Cité_Beaulieu_R", "stopSequence": 20 } ], "timestamp": "1758445627", "trip": { "directionId": 1, "routeId": "604", "tripId": "401D-1130" } } }, { "id": "SM:1103D-1050", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 126, "time": "1758444726" }, "stopId": "Saint-Louis_Gare_Ouest_AR", "stopSequence": 1 }, { "arrival": { "delay": 25, "time": "1758445225" }, "stopId": "EuroAirport_AR", "stopSequence": 2 } ], "timestamp": "1758444733", "trip": { "routeId": "11", "tripId": "1103D-1050" } } } ], "header": { "gtfsRealtimeVersion": "1.0", "timestamp": "1758445997" } }