Resource details
This resource file is part of the dataset Réseau urbain Distribus.
Download availability
Learn more
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
⚠️123 warnings
Validation carried out using the current GTFS file and the GTFS-RT the 2026-07-31 at 09:08 Europe/Paris using the MobilityData GTFS-RT validator.
Warnings
vehicle_id not populated W002 42 errors
vehicle_id should be populated for TripUpdates and VehiclePositions
Sample errors
- trip_id 1101-0850 does not have a vehicle_id
- trip_id 103-0905 does not have a vehicle_id
- trip_id 101-0910 does not have a vehicle_id
- trip_id 105-0833 does not have a vehicle_id
- trip_id 103-0820 does not have a vehicle_id
schedule_relationship not populated W009 81 errors
trip.schedule_relationship and stop_time_update.schedule_relationship should be populated
Sample errors
- trip_id 1101-0850 stop_sequence 1 (and potentially more for this trip) does not have a schedule_relationship
- trip_id 1101-0850 does not have a schedule_relationship
- trip_id 103-0905 stop_sequence 1 (and potentially more for this trip) does not have a schedule_relationship
- trip_id 103-0905 does not have a schedule_relationship
- trip_id 101-0910 stop_sequence 1 (and potentially more for this trip) does not have a schedule_relationship
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,147 | 30 times (100 % of validations) |
| W009 | trip.schedule_relationship and stop_time_update.schedule_relationship should be populated | 2,135 | 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. | 3 | 3 times (10 % of validations) |
| W008 | The data in a GTFS-realtime feed should always be less than one minute old | 2 | 2 times (7 % of validations) |
GTFS-RT feed content
Entities
Entities present in this feed at 2026-07-31 at 23:01 Europe/Paris.
trip_updates (8) vehicle_positions (0) service_alerts (0)Entities seen in the last 7 days.
trip_updatesDecoded GTFS-RT feed
See full payload
Here is the decoded GTFS-RT feed Protobuf at 2026-07-31 at 23:01 Europe/Paris. You can look at the GTFS-RT documentation.
{
"entity": [
{
"id": "SM:1106-2250",
"tripUpdate": {
"stopTimeUpdate": [
{
"departure": {
"delay": 32,
"time": "1785531032"
},
"stopId": "Saint-Louis_Gare_Ouest_AR",
"stopSequence": 1
},
{
"arrival": {
"delay": -117,
"time": "1785531483"
},
"stopId": "EuroAirport_AR",
"stopSequence": 2
}
],
"timestamp": "1785531053",
"trip": {
"routeId": "11",
"tripId": "1106-2250"
}
}
},
{
"id": "SM:1106-2320",
"tripUpdate": {
"stopTimeUpdate": [
{
"departure": {
"time": "1785532800"
},
"stopId": "Saint-Louis_Gare_Ouest_AR",
"stopSequence": 1
},
{
"arrival": {
"time": "1785533400"
},
"stopId": "EuroAirport_AR",
"stopSequence": 2
}
],
"timestamp": "1785531063",
"trip": {
"routeId": "11",
"tripId": "1106-2320"
}
}
},
{
"id": "SM:1106-2305",
"tripUpdate": {
"stopTimeUpdate": [
{
"departure": {
"time": "1785531900"
},
"stopId": "EuroAirport_AR",
"stopSequence": 1
},
{
"arrival": {
"time": "1785532500"
},
"stopId": "Saint-Louis_Gare_Ouest_AR",
"stopSequence": 2
}
],
"timestamp": "1785531604",
"trip": {
"directionId": 1,
"routeId": "11",
"tripId": "1106-2305"
}
}
},
{
"id": "SM:1106-2335",
"tripUpdate": {
"stopTimeUpdate": [
{
"departure": {
"time": "1785533700"
},
"stopId": "EuroAirport_AR",
"stopSequence": 1
},
{
"arrival": {
"time": "1785534300"
},
"stopId": "Saint-Louis_Gare_Ouest_AR",
"stopSequence": 2
}
],
"timestamp": "1785531604",
"trip": {
"directionId": 1,
"routeId": "11",
"tripId": "1106-2335"
}
}
},
{
"id": "SM:450T-2230",
"tripUpdate": {
"stopTimeUpdate": [
{
"departure": {
"delay": 449,
"time": "1785530249"
},
"scheduleRelationship": "SKIPPED",
"stopId": "Schifflände_R",
"stopSequence": 1
},
{
"arrival": {
"delay": 520,
"time": "1785530440"
},
"departure": {
"delay": 520,
"time": "1785530440"
},
"scheduleRelationship": "SKIPPED",
"stopId": "Kinderspital_UKBB_R",
"stopSequence": 2
},
{
"arrival": {
"delay": 345,
"time": "1785530497"
},
"departure": {
"delay": 345,
"time": "1785530505"
},
"stopId": "Voltaplatz_R",
"stopSequence": 3
},
{
"arrival": {
"delay": 351,
"time": "1785530571"
},
"departure": {
"delay": 351,
"time": "1785530571"
},
"stopId": "Hüningerstrasse_R",
"stopSequence": 4
},
{
"arrival": {
"delay": 315,
"time": "1785530650"
},
"departure": {
"delay": 315,
"time": "1785530655"
},
"stopId": "Frontière_R",
"stopSequence": 5
},
{
"arrival": {
"delay": 315,
"time": "1785530715"
},
"departure": {
"delay": 315,
"time": "1785530715"
},
"stopId": "Notre-Dame_de_la_Paix_R",
"stopSequence": 6
},
{
"arrival": {
"delay": 287,
"time": "1785530747"
},
"departure": {
"delay": 287,
"time": "1785530747"
},
"stopId": "Rhin_R",
"stopSequence": 7
},
{
"arrival": {
"delay": 329,
"time": "1785530849"
},
"departure": {
"delay": 329,
"time": "1785530849"
},
"stopId": "Claude_Hess_R",
"stopSequence": 8
},
{
"arrival": {
"delay": 329,
"time": "1785530909"
},
"departure": {
"delay": 329,
"time": "1785530909"
},
"stopId": "Croisée_des_Lys_R",
"stopSequence": 9
},
{
"arrival": {
"delay": 329,
"time": "1785530969"
},
"departure": {
"delay": 329,
"time": "1785530969"
},
"stopId": "Breisach_R",
"stopSequence": 10
},
{
"arrival": {
"delay": 299,
"time": "1785530999"
},
"departure": {
"delay": 299,
"time": "1785530999"
},
"stopId": "Église_Saint-Louis_R",
"stopSequence": 11
},
{
"arrival": {
"delay": 329,
"time": "1785531029"
},
"departure": {
"delay": 329,
"time": "1785531029"
},
"stopId": "Saint-Louis_Gare_Est_AR",
"stopSequence": 12
},
{
"arrival": {
"delay": 329,
"time": "1785531089"
},
"departure": {
"delay": 329,
"time": "1785531089"
},
"stopId": "Trois_Lys_R",
"stopSequence": 13
},
{
"arrival": {
"delay": 345,
"time": "1785531209"
},
"departure": {
"delay": 345,
"time": "1785531225"
},
"stopId": "Cité_du_Rail_R",
"stopSequence": 14
},
{
"arrival": {
"delay": 405,
"time": "1785531345"
},
"departure": {
"delay": 405,
"time": "1785531345"
},
"stopId": "Rue_de_Séville_R",
"stopSequence": 15
},
{
"arrival": {
"delay": 401,
"time": "1785531401"
},
"departure": {
"delay": 401,
"time": "1785531401"
},
"stopId": "Chapelle_R",
"stopSequence": 16
},
{
"arrival": {
"delay": 364,
"time": "1785531424"
},
"departure": {
"delay": 364,
"time": "1785531424"
},
"stopId": "Saint-Claude_R",
"stopSequence": 17
},
{
"arrival": {
"delay": 394,
"time": "1785531454"
},
"departure": {
"delay": 394,
"time": "1785531454"
},
"stopId": "Petite_Camargue_Alsacienne_R",
"stopSequence": 18
},
{
"arrival": {
"delay": 394,
"time": "1785531514"
},
"departure": {
"delay": 394,
"time": "1785531514"
},
"stopId": "Parc_des_Maréchaux_R",
"stopSequence": 19
},
{
"arrival": {
"delay": 452,
"time": "1785531692"
},
"departure": {
"delay": 452,
"time": "1785531692"
},
"scheduleRelationship": "SKIPPED",
"stopId": "Parc_Soleil_A",
"stopSequence": 20
},
{
"arrival": {
"delay": 424,
"time": "1785531784"
},
"departure": {
"delay": 424,
"time": "1785531784"
},
"stopId": "Cité_Beaulieu_R",
"stopSequence": 21
}
],
"timestamp": "1785530299",
"trip": {
"directionId": 1,
"routeId": "604",
"tripId": "450T-2230"
}
}
},
{
"id": "SM:450T-2300",
"tripUpdate": {
"stopTimeUpdate": [
{
"departure": {
"delay": 47,
"time": "1785531647"
},
"stopId": "Professeur_Coste_A",
"stopSequence": 1
},
{
"arrival": {
"delay": 47,
"time": "1785531707"
},
"departure": {
"delay": 47,
"time": "1785531707"
},
"stopId": "Rousserolles_A",
"stopSequence": 2
},
{
"arrival": {
"delay": 67,
"time": "1785531727"
},
"departure": {
"delay": 67,
"time": "1785531727"
},
"stopId": "Muguet_A",
"stopSequence": 3
},
{
"arrival": {
"delay": 27,
"time": "1785531747"
},
"departure": {
"delay": 27,
"time": "1785531747"
},
"stopId": "Cité_Beaulieu_A",
"stopSequence": 4
},
{
"arrival": {
"delay": 47,
"time": "1785531767"
},
"departure": {
"delay": 47,
"time": "1785531767"
},
"stopId": "Parc_des_Maréchaux_A",
"stopSequence": 5
},
{
"arrival": {
"delay": 47,
"time": "1785531887"
},
"departure": {
"delay": 47,
"time": "1785531887"
},
"stopId": "Parc_Soleil_A",
"stopSequence": 6
},
{
"arrival": {
"delay": 47,
"time": "1785531947"
},
"departure": {
"delay": 47,
"time": "1785531947"
},
"stopId": "Petite_Camargue_Alsacienne_A",
"stopSequence": 7
},
{
"arrival": {
"delay": 47,
"time": "1785532007"
},
"departure": {
"delay": 47,
"time": "1785532007"
},
"stopId": "Saint-Claude_A",
"stopSequence": 8
},
{
"arrival": {
"delay": 17,
"time": "1785532037"
},
"departure": {
"delay": 17,
"time": "1785532037"
},
"stopId": "Chapelle_A",
"stopSequence": 9
},
{
"arrival": {
"delay": 47,
"time": "1785532067"
},
"departure": {
"delay": 47,
"time": "1785532067"
},
"stopId": "Rue_de_Séville_A",
"stopSequence": 10
},
{
"arrival": {
"delay": 47,
"time": "1785532127"
},
"departure": {
"delay": 47,
"time": "1785532127"
},
"stopId": "Cité_du_Rail_A",
"stopSequence": 11
},
{
"arrival": {
"delay": 47,
"time": "1785532247"
},
"departure": {
"delay": 47,
"time": "1785532247"
},
"stopId": "Trois_Lys_A",
"stopSequence": 12
},
{
"arrival": {
"delay": 47,
"time": "1785532307"
},
"departure": {
"delay": 47,
"time": "1785532307"
},
"stopId": "Saint-Louis_Gare_Est_AR",
"stopSequence": 13
},
{
"arrival": {
"delay": 47,
"time": "1785532367"
},
"departure": {
"delay": 47,
"time": "1785532367"
},
"stopId": "Église_Saint-Louis_A",
"stopSequence": 14
},
{
"arrival": {
"delay": 47,
"time": "1785532427"
},
"departure": {
"delay": 47,
"time": "1785532427"
},
"stopId": "Breisach_A",
"stopSequence": 15
},
{
"arrival": {
"delay": 47,
"time": "1785532487"
},
"departure": {
"delay": 47,
"time": "1785532487"
},
"stopId": "Croisée_des_Lys_A",
"stopSequence": 16
},
{
"arrival": {
"delay": 47,
"time": "1785532607"
},
"departure": {
"delay": 47,
"time": "1785532607"
},
"stopId": "Claude_Hess_A",
"stopSequence": 17
},
{
"arrival": {
"delay": 47,
"time": "1785532667"
},
"departure": {
"delay": 47,
"time": "1785532667"
},
"stopId": "Rhin_A",
"stopSequence": 18
},
{
"arrival": {
"delay": 47,
"time": "1785532727"
},
"departure": {
"delay": 47,
"time": "1785532727"
},
"stopId": "Notre-Dame_de_la_Paix_A",
"stopSequence": 19
},
{
"arrival": {
"delay": 47,
"time": "1785532787"
},
"departure": {
"delay": 47,
"time": "1785532787"
},
"stopId": "Frontière_A",
"stopSequence": 20
},
{
"arrival": {
"delay": 47,
"time": "1785532907"
},
"departure": {
"delay": 47,
"time": "1785532907"
},
"stopId": "Hüningerstrasse_A",
"stopSequence": 21
},
{
"arrival": {
"delay": 47,
"time": "1785532967"
},
"departure": {
"delay": 47,
"time": "1785532967"
},
"stopId": "Voltaplatz_A",
"stopSequence": 22
},
{
"arrival": {
"delay": 47,
"time": "1785533147"
},
"departure": {
"delay": 47,
"time": "1785533147"
},
"stopId": "Kinderspital_UKBB_A",
"stopSequence": 23
},
{
"arrival": {
"delay": 47,
"time": "1785533267"
},
"stopId": "Schifflände_A",
"stopSequence": 24
}
],
"timestamp": "1785531675",
"trip": {
"routeId": "604",
"tripId": "450T-2300"
}
}
},
{
"id": "SM:450T-2330",
"tripUpdate": {
"stopTimeUpdate": [
{
"departure": {
"time": "1785533400"
},
"stopId": "Schifflände_R",
"stopSequence": 1
},
{
"arrival": {
"time": "1785533520"
},
"departure": {
"time": "1785533520"
},
"stopId": "Kinderspital_UKBB_R",
"stopSequence": 2
},
{
"arrival": {
"time": "1785533760"
},
"departure": {
"time": "1785533760"
},
"stopId": "Voltaplatz_R",
"stopSequence": 3
},
{
"arrival": {
"time": "1785533820"
},
"departure": {
"time": "1785533820"
},
"stopId": "Hüningerstrasse_R",
"stopSequence": 4
},
{
"arrival": {
"time": "1785533940"
},
"departure": {
"time": "1785533940"
},
"stopId": "Frontière_R",
"stopSequence": 5
},
{
"arrival": {
"time": "1785534000"
},
"departure": {
"time": "1785534000"
},
"stopId": "Notre-Dame_de_la_Paix_R",
"stopSequence": 6
},
{
"arrival": {
"time": "1785534060"
},
"departure": {
"time": "1785534060"
},
"stopId": "Rhin_R",
"stopSequence": 7
},
{
"arrival": {
"time": "1785534120"
},
"departure": {
"time": "1785534120"
},
"stopId": "Claude_Hess_R",
"stopSequence": 8
},
{
"arrival": {
"time": "1785534180"
},
"departure": {
"time": "1785534180"
},
"stopId": "Croisée_des_Lys_R",
"stopSequence": 9
},
{
"arrival": {
"time": "1785534240"
},
"departure": {
"time": "1785534240"
},
"stopId": "Breisach_R",
"stopSequence": 10
},
{
"arrival": {
"delay": -30,
"time": "1785534270"
},
"departure": {
"delay": -30,
"time": "1785534270"
},
"stopId": "Église_Saint-Louis_R",
"stopSequence": 11
},
{
"arrival": {
"time": "1785534300"
},
"departure": {
"time": "1785534300"
},
"stopId": "Saint-Louis_Gare_Est_AR",
"stopSequence": 12
},
{
"arrival": {
"time": "1785534360"
},
"departure": {
"time": "1785534360"
},
"stopId": "Trois_Lys_R",
"stopSequence": 13
},
{
"arrival": {
"time": "1785534480"
},
"departure": {
"time": "1785534480"
},
"stopId": "Cité_du_Rail_R",
"stopSequence": 14
},
{
"arrival": {
"time": "1785534540"
},
"departure": {
"time": "1785534540"
},
"stopId": "Rue_de_Séville_R",
"stopSequence": 15
},
{
"arrival": {
"time": "1785534600"
},
"departure": {
"time": "1785534600"
},
"stopId": "Chapelle_R",
"stopSequence": 16
},
{
"arrival": {
"delay": -30,
"time": "1785534630"
},
"departure": {
"delay": -30,
"time": "1785534630"
},
"stopId": "Saint-Claude_R",
"stopSequence": 17
},
{
"arrival": {
"time": "1785534660"
},
"departure": {
"time": "1785534660"
},
"stopId": "Petite_Camargue_Alsacienne_R",
"stopSequence": 18
},
{
"arrival": {
"time": "1785534720"
},
"departure": {
"time": "1785534720"
},
"stopId": "Parc_des_Maréchaux_R",
"stopSequence": 19
},
{
"arrival": {
"time": "1785534840"
},
"departure": {
"time": "1785534840"
},
"stopId": "Parc_Soleil_A",
"stopSequence": 20
},
{
"arrival": {
"delay": 30,
"time": "1785534990"
},
"departure": {
"delay": 30,
"time": "1785534990"
},
"stopId": "Cité_Beaulieu_R",
"stopSequence": 21
},
{
"arrival": {
"time": "1785535020"
},
"departure": {
"time": "1785535020"
},
"stopId": "Muguet_R",
"stopSequence": 22
},
{
"arrival": {
"delay": -30,
"time": "1785535050"
},
"departure": {
"delay": -30,
"time": "1785535050"
},
"stopId": "Rousserolles_R",
"stopSequence": 23
},
{
"arrival": {
"time": "1785535080"
},
"stopId": "Professeur_Coste_A",
"stopSequence": 24
}
],
"timestamp": "1785531583",
"trip": {
"directionId": 1,
"routeId": "604",
"tripId": "450T-2330"
}
}
},
{
"id": "SM:450T-2400",
"tripUpdate": {
"stopTimeUpdate": [
{
"departure": {
"time": "1785535200"
},
"stopId": "Professeur_Coste_A",
"stopSequence": 1
},
{
"arrival": {
"time": "1785535260"
},
"departure": {
"time": "1785535260"
},
"stopId": "Rousserolles_A",
"stopSequence": 2
}
],
"timestamp": "1785531604",
"trip": {
"routeId": "604",
"tripId": "450T-2400"
}
}
}
],
"header": {
"gtfsRealtimeVersion": "1.0",
"timestamp": "1785531685"
}
}