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

2026-05-15
100%
2026-05-16
100%
2026-05-17
100%
2026-05-18
100%
2026-05-19
100%
2026-05-20
100%
2026-05-21
100%
2026-05-22
100%
2026-05-23
100%
2026-05-24
100%
2026-05-25
95.1%
2026-05-26
100%
2026-05-27
100%
2026-05-28
100%
2026-05-29
100%
2026-05-30
100%
2026-05-31
100%
2026-06-01
95.1%
2026-06-02
100%
2026-06-03
100%
2026-06-04
100%
2026-06-05
100%
2026-06-06
100%
2026-06-07
100%
2026-06-08
96.5%
2026-06-09
100%
2026-06-10
100%
2026-06-11
100%
2026-06-12
100%
2026-06-13
100%
2026-06-14
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

⚠️27 warnings

Validation carried out using the current GTFS file and the GTFS-RT the 2026-06-14 at 09:11 Europe/Paris using the MobilityData GTFS-RT validator.

Warnings

vehicle_id not populated W002 9 errors

vehicle_id should be populated for TripUpdates and VehiclePositions

Sample errors
  • trip_id 1101D-0920 does not have a vehicle_id
  • trip_id 1101D-0850 does not have a vehicle_id
  • trip_id 1101D-0905 does not have a vehicle_id
  • trip_id 1101D-0950 does not have a vehicle_id
  • trip_id 1101D-0935 does not have a vehicle_id

schedule_relationship not populated W009 18 errors

trip.schedule_relationship and stop_time_update.schedule_relationship should be populated

Sample errors
  • 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
  • trip_id 1101D-0850 does not have a schedule_relationship
  • trip_id 1101D-0905 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 1,046 30 times (100 % of validations)
W009 trip.schedule_relationship and stop_time_update.schedule_relationship should be populated 2,076 30 times (100 % 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. 1 1 times (3 % of validations)
W008 The data in a GTFS-realtime feed should always be less than one minute old 1 1 times (3 % of validations)

GTFS-RT feed content

Entities

Entities present in this feed at 2026-06-14 at 17:49 Europe/Paris.

trip_updates (8) 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 2026-06-14 at 17:49 Europe/Paris. You can look at the GTFS-RT documentation.

{ "entity": [ { "id": "SM:1103D-1835", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "time": "1781454900" }, "stopId": "EuroAirport_AR", "stopSequence": 1 } ], "timestamp": "1781451958", "trip": { "directionId": 1, "routeId": "11", "tripId": "1103D-1835" } } }, { "id": "SM:1103D-1735", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 562, "time": "1781451862" }, "stopId": "EuroAirport_AR", "stopSequence": 1 }, { "arrival": { "delay": 593, "time": "1781452493" }, "stopId": "Saint-Louis_Gare_Ouest_AR", "stopSequence": 2 } ], "timestamp": "1781451876", "trip": { "directionId": 1, "routeId": "11", "tripId": "1103D-1735" } } }, { "id": "SM:1103D-1805", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "time": "1781453100" }, "stopId": "EuroAirport_AR", "stopSequence": 1 }, { "arrival": { "time": "1781453700" }, "stopId": "Saint-Louis_Gare_Ouest_AR", "stopSequence": 2 } ], "timestamp": "1781451866", "trip": { "directionId": 1, "routeId": "11", "tripId": "1103D-1805" } } }, { "id": "SM:1103D-1750", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "time": "1781452200" }, "stopId": "Saint-Louis_Gare_Ouest_AR", "stopSequence": 1 }, { "arrival": { "delay": -49, "time": "1781452751" }, "stopId": "EuroAirport_AR", "stopSequence": 2 } ], "timestamp": "1781451907", "trip": { "routeId": "11", "tripId": "1103D-1750" } } }, { "id": "SM:1103D-1820", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "time": "1781454000" }, "stopId": "Saint-Louis_Gare_Ouest_AR", "stopSequence": 1 }, { "arrival": { "time": "1781454600" }, "stopId": "EuroAirport_AR", "stopSequence": 2 } ], "timestamp": "1781451948", "trip": { "routeId": "11", "tripId": "1103D-1820" } } }, { "id": "SM:402DT-1830", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 210, "time": "1781454810" }, "stopId": "Schifflände_R", "stopSequence": 1 }, { "arrival": { "delay": 210, "time": "1781454930" }, "departure": { "delay": 210, "time": "1781454930" }, "stopId": "Kinderspital_UKBB_R", "stopSequence": 2 }, { "arrival": { "delay": 210, "time": "1781455170" }, "departure": { "delay": 210, "time": "1781455170" }, "stopId": "Voltaplatz_R", "stopSequence": 3 }, { "arrival": { "delay": 210, "time": "1781455230" }, "departure": { "delay": 210, "time": "1781455230" }, "stopId": "Hüningerstrasse_R", "stopSequence": 4 }, { "arrival": { "delay": 210, "time": "1781455350" }, "departure": { "delay": 210, "time": "1781455350" }, "stopId": "Frontière_R", "stopSequence": 5 }, { "arrival": { "delay": 210, "time": "1781455410" }, "departure": { "delay": 210, "time": "1781455410" }, "stopId": "Notre-Dame_de_la_Paix_R", "stopSequence": 6 }, { "arrival": { "delay": 210, "time": "1781455470" }, "departure": { "delay": 210, "time": "1781455470" }, "stopId": "Rhin_R", "stopSequence": 7 }, { "arrival": { "delay": 210, "time": "1781455530" }, "departure": { "delay": 210, "time": "1781455530" }, "stopId": "Claude_Hess_R", "stopSequence": 8 }, { "arrival": { "delay": 210, "time": "1781455590" }, "departure": { "delay": 210, "time": "1781455590" }, "stopId": "Croisée_des_Lys_R", "stopSequence": 9 }, { "arrival": { "delay": 210, "time": "1781455650" }, "departure": { "delay": 210, "time": "1781455650" }, "stopId": "Breisach_R", "stopSequence": 10 }, { "arrival": { "delay": 180, "time": "1781455680" }, "departure": { "delay": 180, "time": "1781455680" }, "stopId": "Église_Saint-Louis_R", "stopSequence": 11 }, { "arrival": { "delay": 210, "time": "1781455710" }, "departure": { "delay": 210, "time": "1781455710" }, "stopId": "Saint-Louis_Gare_Est_AR", "stopSequence": 12 } ], "timestamp": "1781452142", "trip": { "directionId": 1, "routeId": "604", "tripId": "402DT-1830" } } }, { "id": "SM:402DT-1730", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 263, "time": "1781451263" }, "stopId": "Schifflände_R", "stopSequence": 1 }, { "arrival": { "delay": 263, "time": "1781451383" }, "departure": { "delay": 263, "time": "1781451383" }, "stopId": "Kinderspital_UKBB_R", "stopSequence": 2 }, { "arrival": { "delay": 263, "time": "1781451623" }, "departure": { "delay": 263, "time": "1781451623" }, "stopId": "Voltaplatz_R", "stopSequence": 3 }, { "arrival": { "delay": 263, "time": "1781451683" }, "departure": { "delay": 263, "time": "1781451683" }, "stopId": "Hüningerstrasse_R", "stopSequence": 4 }, { "arrival": { "delay": 263, "time": "1781451803" }, "departure": { "delay": 263, "time": "1781451803" }, "stopId": "Frontière_R", "stopSequence": 5 }, { "arrival": { "delay": 536, "time": "1781451863" }, "departure": { "delay": 536, "time": "1781452136" }, "stopId": "Notre-Dame_de_la_Paix_R", "stopSequence": 6 }, { "arrival": { "delay": 536, "time": "1781452196" }, "departure": { "delay": 536, "time": "1781452196" }, "stopId": "Rhin_R", "stopSequence": 7 }, { "arrival": { "delay": 536, "time": "1781452256" }, "departure": { "delay": 536, "time": "1781452256" }, "stopId": "Claude_Hess_R", "stopSequence": 8 }, { "arrival": { "delay": 536, "time": "1781452316" }, "departure": { "delay": 536, "time": "1781452316" }, "stopId": "Croisée_des_Lys_R", "stopSequence": 9 }, { "arrival": { "delay": 536, "time": "1781452376" }, "departure": { "delay": 536, "time": "1781452376" }, "stopId": "Breisach_R", "stopSequence": 10 }, { "arrival": { "delay": 506, "time": "1781452406" }, "departure": { "delay": 506, "time": "1781452406" }, "stopId": "Église_Saint-Louis_R", "stopSequence": 11 }, { "arrival": { "delay": 536, "time": "1781452436" }, "departure": { "delay": 536, "time": "1781452436" }, "stopId": "Saint-Louis_Gare_Est_AR", "stopSequence": 12 }, { "arrival": { "delay": 536, "time": "1781452496" }, "departure": { "delay": 536, "time": "1781452496" }, "stopId": "Trois_Lys_R", "stopSequence": 13 }, { "arrival": { "delay": 536, "time": "1781452616" }, "departure": { "delay": 536, "time": "1781452616" }, "stopId": "Cité_du_Rail_R", "stopSequence": 14 }, { "arrival": { "delay": 536, "time": "1781452676" }, "departure": { "delay": 536, "time": "1781452676" }, "stopId": "Rue_de_Séville_R", "stopSequence": 15 }, { "arrival": { "delay": 536, "time": "1781452736" }, "departure": { "delay": 536, "time": "1781452736" }, "stopId": "Chapelle_R", "stopSequence": 16 }, { "arrival": { "delay": 506, "time": "1781452766" }, "departure": { "delay": 506, "time": "1781452766" }, "stopId": "Saint-Claude_R", "stopSequence": 17 }, { "arrival": { "delay": 536, "time": "1781452796" }, "departure": { "delay": 536, "time": "1781452796" }, "stopId": "Petite_Camargue_Alsacienne_R", "stopSequence": 18 }, { "arrival": { "delay": 536, "time": "1781452856" }, "departure": { "delay": 536, "time": "1781452856" }, "stopId": "Parc_des_Maréchaux_R", "stopSequence": 19 }, { "arrival": { "delay": 566, "time": "1781453126" }, "departure": { "delay": 566, "time": "1781453126" }, "stopId": "Cité_Beaulieu_R", "stopSequence": 20 }, { "arrival": { "delay": 536, "time": "1781453156" }, "departure": { "delay": 536, "time": "1781453156" }, "stopId": "Muguet_R", "stopSequence": 21 } ], "timestamp": "1781451307", "trip": { "directionId": 1, "routeId": "604", "tripId": "402DT-1730" } } }, { "id": "SM:402DT-1800", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 386, "time": "1781453186" }, "stopId": "Professeur_Coste_A", "stopSequence": 1 }, { "arrival": { "delay": 386, "time": "1781453246" }, "departure": { "delay": 386, "time": "1781453246" }, "stopId": "Rousserolles_A", "stopSequence": 2 }, { "arrival": { "delay": 406, "time": "1781453266" }, "departure": { "delay": 406, "time": "1781453266" }, "stopId": "Muguet_A", "stopSequence": 3 }, { "arrival": { "delay": 366, "time": "1781453286" }, "departure": { "delay": 366, "time": "1781453286" }, "stopId": "Cité_Beaulieu_A", "stopSequence": 4 }, { "arrival": { "delay": 386, "time": "1781453306" }, "departure": { "delay": 386, "time": "1781453306" }, "stopId": "Parc_des_Maréchaux_A", "stopSequence": 5 }, { "arrival": { "delay": 446, "time": "1781453546" }, "departure": { "delay": 446, "time": "1781453546" }, "stopId": "Petite_Camargue_Alsacienne_A", "stopSequence": 6 }, { "arrival": { "delay": 416, "time": "1781453576" }, "departure": { "delay": 416, "time": "1781453576" }, "stopId": "Saint-Claude_A", "stopSequence": 7 }, { "arrival": { "delay": 386, "time": "1781453606" }, "departure": { "delay": 386, "time": "1781453606" }, "stopId": "Chapelle_A", "stopSequence": 8 }, { "arrival": { "delay": 446, "time": "1781453666" }, "departure": { "delay": 446, "time": "1781453666" }, "stopId": "Rue_de_Séville_A", "stopSequence": 9 }, { "arrival": { "delay": 506, "time": "1781453786" }, "departure": { "delay": 506, "time": "1781453786" }, "stopId": "Cité_du_Rail_A", "stopSequence": 10 }, { "arrival": { "delay": 446, "time": "1781453846" }, "departure": { "delay": 446, "time": "1781453846" }, "stopId": "Trois_Lys_A", "stopSequence": 11 }, { "arrival": { "delay": 446, "time": "1781453906" }, "departure": { "delay": 446, "time": "1781453906" }, "stopId": "Saint-Louis_Gare_Est_AR", "stopSequence": 12 }, { "arrival": { "delay": 446, "time": "1781453966" }, "departure": { "delay": 446, "time": "1781453966" }, "stopId": "Église_Saint-Louis_A", "stopSequence": 13 }, { "arrival": { "delay": 446, "time": "1781454026" }, "departure": { "delay": 446, "time": "1781454026" }, "stopId": "Breisach_A", "stopSequence": 14 }, { "arrival": { "delay": 506, "time": "1781454146" }, "departure": { "delay": 506, "time": "1781454146" }, "stopId": "Croisée_des_Lys_A", "stopSequence": 15 }, { "arrival": { "delay": 446, "time": "1781454206" }, "departure": { "delay": 446, "time": "1781454206" }, "stopId": "Claude_Hess_A", "stopSequence": 16 }, { "arrival": { "delay": 446, "time": "1781454266" }, "departure": { "delay": 446, "time": "1781454266" }, "stopId": "Rhin_A", "stopSequence": 17 }, { "arrival": { "delay": 446, "time": "1781454326" }, "departure": { "delay": 446, "time": "1781454326" }, "stopId": "Notre-Dame_de_la_Paix_A", "stopSequence": 18 }, { "arrival": { "delay": 506, "time": "1781454446" }, "departure": { "delay": 506, "time": "1781454446" }, "stopId": "Frontière_A", "stopSequence": 19 }, { "arrival": { "delay": 446, "time": "1781454506" }, "departure": { "delay": 446, "time": "1781454506" }, "stopId": "Hüningerstrasse_A", "stopSequence": 20 }, { "arrival": { "delay": 566, "time": "1781454686" }, "departure": { "delay": 566, "time": "1781454686" }, "stopId": "Voltaplatz_A", "stopSequence": 21 } ], "timestamp": "1781452142", "trip": { "routeId": "604", "tripId": "402DT-1800" } } } ], "header": { "gtfsRealtimeVersion": "1.0", "timestamp": "1781452170" } }