Resource details

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

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

Download availability

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

1 error, 61 warnings

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

Errors

stop_time_update departure time is before arrival time E025 1 error

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.

Sample errors
  • trip_id 3-839057409 stop_sequence 13 departure_time 07:13:50 (1764569630) is less than the same stop arrival_time 07:19:13 (1764569953) - departure time must be equal to or greater than arrival time

Warnings

vehicle_id not populated W002 20 errors

vehicle_id should be populated for TripUpdates and VehiclePositions

Sample errors
  • trip_id 3-292487183 does not have a vehicle_id
  • trip_id 3-305037561 does not have a vehicle_id
  • trip_id 3-839057409 does not have a vehicle_id
  • trip_id 3-839057410 does not have a vehicle_id
  • trip_id 3-839057411 does not have a vehicle_id

Header timestamp is older than 65 seconds W008 1 error

The data in a GTFS-realtime feed should always be less than one minute old

Sample errors
  • header.timestamp is 1252 min 5 sec old which is greater than the recommended age of 65 seconds

schedule_relationship not populated W009 40 errors

trip.schedule_relationship and stop_time_update.schedule_relationship should be populated

Sample errors
  • trip_id 3-292487183 stop_sequence 1 (and potentially more for this trip) does not have a schedule_relationship
  • trip_id 3-292487183 does not have a schedule_relationship
  • trip_id 3-305037561 stop_sequence 1 (and potentially more for this trip) does not have a schedule_relationship
  • trip_id 3-305037561 does not have a schedule_relationship
  • trip_id 3-839057409 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 224 26 times (87 % of validations)
W009 trip.schedule_relationship and stop_time_update.schedule_relationship should be populated 448 26 times (87 % of validations)
W008 The data in a GTFS-realtime feed should always be less than one minute old 10 10 times (33 % 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. 9 7 times (23 % of validations)
E003 All trip_ids provided in the GTFS-rt feed must exist in the GTFS data, unless the schedule_relationship is ADDED 11 5 times (17 % of validations)
E011 All stop_ids referenced in GTFS-rt feeds must exist in GTFS stops.txt 8 4 times (13 % of validations)
E045 If GTFS-rt stop_time_update contains both stop_sequence and stop_id, the values must match the GTFS data in stop_times.txt 33 1 times (3 % of validations)

GTFS-RT feed content

Entities

Entities present in this feed at 2025-12-02 at 14:15 Europe/Paris.

trip_updates (6) 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-12-02 at 14:15 Europe/Paris. You can look at the GTFS-RT documentation.

{ "entity": [ { "id": "SM:3-292487195", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 29, "time": "1764680429" }, "stopId": "138", "stopSequence": 1 }, { "arrival": { "delay": 4, "time": "1764680450" }, "departure": { "delay": 4, "time": "1764680464" }, "stopId": "140", "stopSequence": 2 }, { "arrival": { "delay": 51, "time": "1764680503" }, "departure": { "delay": 51, "time": "1764680571" }, "stopId": "139", "stopSequence": 3 }, { "arrival": { "delay": 86, "time": "1764680871" }, "departure": { "delay": 86, "time": "1764680906" }, "stopId": "65", "stopSequence": 4 }, { "arrival": { "delay": 64, "time": "1764680935" }, "departure": { "delay": 64, "time": "1764680944" }, "stopId": "25", "stopSequence": 5 }, { "arrival": { "delay": 133, "time": "1764681003" }, "departure": { "delay": 133, "time": "1764681073" }, "stopId": "47", "stopSequence": 6 }, { "arrival": { "delay": 139, "time": "1764681092" }, "departure": { "delay": 139, "time": "1764681139" }, "stopId": "54", "stopSequence": 7 }, { "arrival": { "delay": 140, "time": "1764681320" }, "departure": { "delay": 140, "time": "1764681320" }, "stopId": "71", "stopSequence": 8 }, { "arrival": { "delay": 140, "time": "1764681380" }, "departure": { "delay": 140, "time": "1764681380" }, "stopId": "37", "stopSequence": 9 }, { "arrival": { "delay": 140, "time": "1764681440" }, "departure": { "delay": 140, "time": "1764681440" }, "stopId": "4", "stopSequence": 10 }, { "arrival": { "delay": 140, "time": "1764681560" }, "departure": { "delay": 140, "time": "1764681560" }, "stopId": "50", "stopSequence": 11 }, { "arrival": { "delay": 140, "time": "1764681680" }, "departure": { "delay": 140, "time": "1764681680" }, "stopId": "44", "stopSequence": 12 }, { "arrival": { "delay": 140, "time": "1764681740" }, "departure": { "delay": 140, "time": "1764681740" }, "stopId": "32", "stopSequence": 13 }, { "arrival": { "delay": 140, "time": "1764681800" }, "departure": { "delay": 140, "time": "1764681800" }, "stopId": "64", "stopSequence": 14 }, { "arrival": { "delay": 140, "time": "1764681860" }, "departure": { "delay": 140, "time": "1764681860" }, "stopId": "78", "stopSequence": 15 }, { "arrival": { "delay": 140, "time": "1764681920" }, "departure": { "delay": 140, "time": "1764681920" }, "stopId": "34", "stopSequence": 16 }, { "arrival": { "delay": 140, "time": "1764681980" }, "departure": { "delay": 140, "time": "1764681980" }, "stopId": "62", "stopSequence": 17 }, { "arrival": { "delay": 140, "time": "1764682040" }, "departure": { "delay": 140, "time": "1764682040" }, "stopId": "20", "stopSequence": 18 }, { "arrival": { "delay": 140, "time": "1764682100" }, "stopId": "69", "stopSequence": 19 } ], "timestamp": "1764681238", "trip": { "routeId": "17", "tripId": "3-292487195" } } }, { "id": "SM:3-305037573", "tripUpdate": { "stopTimeUpdate": [ { "arrival": { "delay": 69, "time": "1764680363" }, "departure": { "delay": 69, "time": "1764680409" }, "stopId": "19", "stopSequence": 7 }, { "arrival": { "delay": 9, "time": "1764680435" }, "departure": { "delay": 9, "time": "1764680469" }, "stopId": "22", "stopSequence": 8 }, { "arrival": { "delay": 32, "time": "1764680574" }, "departure": { "delay": 32, "time": "1764680612" }, "stopId": "58", "stopSequence": 9 }, { "arrival": { "delay": 30, "time": "1764680671" }, "departure": { "delay": 30, "time": "1764680730" }, "stopId": "75", "stopSequence": 10 }, { "arrival": { "delay": 121, "time": "1764680779" }, "departure": { "delay": 121, "time": "1764680881" }, "stopId": "79", "stopSequence": 11 }, { "arrival": { "delay": 190, "time": "1764681190" }, "departure": { "delay": 190, "time": "1764681250" }, "stopId": "12", "stopSequence": 12 }, { "arrival": { "delay": 190, "time": "1764681370" }, "departure": { "delay": 190, "time": "1764681370" }, "stopId": "27", "stopSequence": 14 }, { "arrival": { "delay": 190, "time": "1764681430" }, "stopId": "17", "stopSequence": 15 } ], "timestamp": "1764681237", "trip": { "routeId": "18", "tripId": "3-305037573" } } }, { "id": "SM:3-332660747", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "time": "1764681660" }, "stopId": "98", "stopSequence": 1 }, { "arrival": { "time": "1764681780" }, "departure": { "time": "1764681780" }, "stopId": "110", "stopSequence": 2 }, { "arrival": { "time": "1764681840" }, "departure": { "time": "1764681840" }, "stopId": "112", "stopSequence": 3 }, { "arrival": { "time": "1764681900" }, "departure": { "time": "1764681900" }, "stopId": "109", "stopSequence": 4 }, { "arrival": { "time": "1764681960" }, "departure": { "time": "1764681960" }, "stopId": "99", "stopSequence": 5 }, { "arrival": { "time": "1764682020" }, "departure": { "time": "1764682020" }, "stopId": "104", "stopSequence": 6 }, { "arrival": { "time": "1764682080" }, "departure": { "time": "1764682080" }, "stopId": "107", "stopSequence": 7 }, { "arrival": { "time": "1764682200" }, "departure": { "time": "1764682200" }, "stopId": "103", "stopSequence": 8 }, { "arrival": { "time": "1764682320" }, "departure": { "time": "1764682320" }, "stopId": "96", "stopSequence": 9 }, { "arrival": { "time": "1764682440" }, "departure": { "time": "1764682440" }, "stopId": "101", "stopSequence": 10 }, { "arrival": { "time": "1764682500" }, "departure": { "time": "1764682500" }, "stopId": "106", "stopSequence": 11 }, { "arrival": { "time": "1764682560" }, "departure": { "time": "1764682560" }, "stopId": "114", "stopSequence": 12 }, { "arrival": { "time": "1764682620" }, "departure": { "time": "1764682620" }, "stopId": "94", "stopSequence": 13 }, { "arrival": { "time": "1764682740" }, "departure": { "time": "1764682740" }, "stopId": "55", "stopSequence": 14 }, { "arrival": { "time": "1764682800" }, "departure": { "time": "1764682800" }, "stopId": "66", "stopSequence": 15 }, { "arrival": { "time": "1764682860" }, "departure": { "time": "1764682860" }, "stopId": "73", "stopSequence": 16 }, { "arrival": { "time": "1764682980" }, "departure": { "time": "1764682980" }, "stopId": "37", "stopSequence": 17 }, { "arrival": { "time": "1764683040" }, "departure": { "time": "1764683040" }, "stopId": "4", "stopSequence": 18 }, { "arrival": { "time": "1764683100" }, "departure": { "time": "1764683100" }, "stopId": "76", "stopSequence": 19 }, { "arrival": { "time": "1764683220" }, "departure": { "time": "1764683220" }, "stopId": "14", "stopSequence": 20 }, { "arrival": { "time": "1764683340" }, "stopId": "65", "stopSequence": 21 } ], "timestamp": "1764681238", "trip": { "routeId": "19", "tripId": "3-332660747" } } }, { "id": "SM:3-839057413", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 175, "time": "1764680575" }, "stopId": "91", "stopSequence": 1 }, { "arrival": { "delay": 165, "time": "1764680796" }, "departure": { "delay": 165, "time": "1764680805" }, "stopId": "83", "stopSequence": 2 }, { "arrival": { "delay": 288, "time": "1764680979" }, "departure": { "delay": 288, "time": "1764680988" }, "stopId": "30", "stopSequence": 3 }, { "arrival": { "delay": 302, "time": "1764681110" }, "departure": { "delay": 302, "time": "1764681182" }, "stopId": "37", "stopSequence": 4 }, { "arrival": { "delay": 300, "time": "1764681201" }, "departure": { "delay": 300, "time": "1764681240" }, "stopId": "79", "stopSequence": 5 }, { "arrival": { "delay": 300, "time": "1764681540" }, "departure": { "delay": 300, "time": "1764681540" }, "stopId": "10", "stopSequence": 6 }, { "arrival": { "delay": 300, "time": "1764681600" }, "departure": { "delay": 300, "time": "1764681600" }, "stopId": "7", "stopSequence": 7 }, { "arrival": { "delay": 300, "time": "1764681660" }, "departure": { "delay": 300, "time": "1764681660" }, "stopId": "41", "stopSequence": 8 }, { "arrival": { "delay": 300, "time": "1764681720" }, "departure": { "delay": 300, "time": "1764681720" }, "stopId": "5", "stopSequence": 9 }, { "arrival": { "delay": 300, "time": "1764681780" }, "departure": { "delay": 300, "time": "1764681780" }, "stopId": "70", "stopSequence": 10 }, { "arrival": { "delay": 300, "time": "1764681840" }, "departure": { "delay": 300, "time": "1764681840" }, "stopId": "18", "stopSequence": 11 }, { "arrival": { "delay": 300, "time": "1764681900" }, "departure": { "delay": 300, "time": "1764681900" }, "stopId": "77", "stopSequence": 12 }, { "arrival": { "delay": 300, "time": "1764681960" }, "departure": { "delay": 300, "time": "1764681960" }, "stopId": "90", "stopSequence": 13 }, { "arrival": { "delay": 300, "time": "1764682020" }, "departure": { "delay": 300, "time": "1764682020" }, "stopId": "88", "stopSequence": 14 }, { "arrival": { "delay": 300, "time": "1764682080" }, "stopId": "86", "stopSequence": 15 } ], "timestamp": "1764681237", "trip": { "routeId": "50", "tripId": "3-839057413" } } }, { "id": "SM:3-282329110", "tripUpdate": { "stopTimeUpdate": [ { "arrival": { "delay": 64, "time": "1764680391" }, "departure": { "delay": 64, "time": "1764680404" }, "stopId": "73", "stopSequence": 4 }, { "arrival": { "delay": 174, "time": "1764680613" }, "departure": { "delay": 174, "time": "1764680634" }, "stopId": "72", "stopSequence": 5 }, { "arrival": { "delay": 830, "time": "1764681410" }, "departure": { "delay": 830, "time": "1764681410" }, "stopId": "76", "stopSequence": 6 }, { "arrival": { "delay": 890, "time": "1764681590" }, "departure": { "delay": 890, "time": "1764681590" }, "stopId": "14", "stopSequence": 7 }, { "arrival": { "delay": 1130, "time": "1764681890" }, "departure": { "delay": 1130, "time": "1764681890" }, "stopId": "15", "stopSequence": 8 }, { "arrival": { "delay": 1250, "time": "1764682070" }, "departure": { "delay": 1250, "time": "1764682070" }, "stopId": "136", "stopSequence": 9 }, { "arrival": { "delay": 1130, "time": "1764682190" }, "departure": { "delay": 1130, "time": "1764682190" }, "stopId": "124", "stopSequence": 10 }, { "arrival": { "delay": 1190, "time": "1764682310" }, "departure": { "delay": 1190, "time": "1764682310" }, "stopId": "120", "stopSequence": 11 }, { "arrival": { "delay": 1070, "time": "1764682370" }, "departure": { "delay": 1070, "time": "1764682370" }, "stopId": "141", "stopSequence": 12 }, { "arrival": { "delay": 890, "time": "1764682490" }, "departure": { "delay": 890, "time": "1764682490" }, "stopId": "142", "stopSequence": 13 }, { "arrival": { "delay": 830, "time": "1764682610" }, "departure": { "delay": 830, "time": "1764682610" }, "stopId": "144", "stopSequence": 14 }, { "arrival": { "delay": 770, "time": "1764682670" }, "departure": { "delay": 770, "time": "1764682670" }, "stopId": "134", "stopSequence": 15 }, { "arrival": { "delay": 830, "time": "1764682850" }, "departure": { "delay": 830, "time": "1764682850" }, "stopId": "132", "stopSequence": 16 }, { "arrival": { "delay": 890, "time": "1764682970" }, "departure": { "delay": 890, "time": "1764682970" }, "stopId": "147", "stopSequence": 17 }, { "arrival": { "delay": 830, "time": "1764683030" }, "departure": { "delay": 830, "time": "1764683030" }, "stopId": "145", "stopSequence": 18 }, { "arrival": { "delay": 830, "time": "1764683150" }, "departure": { "delay": 830, "time": "1764683150" }, "stopId": "123", "stopSequence": 19 }, { "arrival": { "delay": 830, "time": "1764683210" }, "departure": { "delay": 830, "time": "1764683210" }, "stopId": "119", "stopSequence": 20 } ], "timestamp": "1764681239", "trip": { "directionId": 1, "routeId": "16", "tripId": "3-282329110" } } }, { "id": "SM:3-299040798", "tripUpdate": { "stopTimeUpdate": [ { "departure": { "delay": 71, "time": "1764680771" }, "stopId": "69", "stopSequence": 1 }, { "arrival": { "delay": 86, "time": "1764680832" }, "departure": { "delay": 86, "time": "1764680846" }, "stopId": "61", "stopSequence": 2 }, { "arrival": { "delay": 108, "time": "1764680857" }, "departure": { "delay": 108, "time": "1764680928" }, "stopId": "33", "stopSequence": 3 }, { "arrival": { "delay": 112, "time": "1764680950" }, "departure": { "delay": 112, "time": "1764680992" }, "stopId": "53", "stopSequence": 4 }, { "arrival": { "delay": 84, "time": "1764681012" }, "departure": { "delay": 84, "time": "1764681024" }, "stopId": "63", "stopSequence": 5 }, { "arrival": { "delay": 64, "time": "1764681052" }, "departure": { "delay": 64, "time": "1764681064" }, "stopId": "31", "stopSequence": 6 }, { "arrival": { "delay": 26, "time": "1764681072" }, "departure": { "delay": 26, "time": "1764681086" }, "stopId": "43", "stopSequence": 7 }, { "arrival": { "delay": 43, "time": "1764681179" }, "departure": { "delay": 43, "time": "1764681223" }, "stopId": "49", "stopSequence": 8 }, { "arrival": { "delay": 10, "time": "1764681310" }, "departure": { "delay": 10, "time": "1764681310" }, "stopId": "71", "stopSequence": 9 }, { "arrival": { "delay": 10, "time": "1764681430" }, "departure": { "delay": 10, "time": "1764681430" }, "stopId": "37", "stopSequence": 10 }, { "arrival": { "delay": 10, "time": "1764681490" }, "departure": { "delay": 10, "time": "1764681490" }, "stopId": "4", "stopSequence": 11 }, { "arrival": { "delay": 10, "time": "1764681670" }, "departure": { "delay": 10, "time": "1764681670" }, "stopId": "24", "stopSequence": 12 }, { "arrival": { "delay": 10, "time": "1764681730" }, "departure": { "delay": 10, "time": "1764681730" }, "stopId": "26", "stopSequence": 13 }, { "arrival": { "delay": 10, "time": "1764681790" }, "departure": { "delay": 10, "time": "1764681790" }, "stopId": "85", "stopSequence": 14 }, { "arrival": { "delay": 10, "time": "1764681850" }, "departure": { "delay": 10, "time": "1764681850" }, "stopId": "15", "stopSequence": 15 }, { "arrival": { "delay": 10, "time": "1764681970" }, "stopId": "138", "stopSequence": 16 } ], "timestamp": "1764681238", "trip": { "directionId": 1, "routeId": "17", "tripId": "3-299040798" } } } ], "header": { "gtfsRealtimeVersion": "1.0", "timestamp": "1764681351" } }