这是indexloc提供的服务,不要输入任何密码

Resource details

File name: GTFS-RT GRATIBUS Flux en temps réel
Format: gtfs-rt

Flux temps réel Gratibus

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

Download availability

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

6 errors, 1 warning

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

Errors

Sequential stop_time_update times are not increasing E022 4 errors

stop_time_update arrival/departure times between sequential stops should always increase - they should never be the same or decrease.

Sample errors
  • trip_id B_01 stop_sequence 18 arrival_time 09:23:20 (1753255400) is equal to previous stop arrival_time 09:23:20 (1753255400) - times must increase between two sequential stops
  • trip_id B_01 stop_sequence 18 arrival_time 09:23:20 (1753255400) is equal to previous stop departure_time 09:23:20 (1753255400) - times must increase between two sequential stops
  • trip_id B_01 stop_sequence 18 departure_time 09:23:20 (1753255400) is equal to previous stop departure_time 09:23:20 (1753255400) - times must increase between two sequential stops
  • trip_id B_01 stop_sequence 18 departure_time 09:23:20 (1753255400) is equal to previous stop arrival_time 09:23:20 (1753255400) - times must increase between two sequential stops

stop_time_update doesn't have arrival or departure E043 1 error

If a stop_time_update doesn't have a schedule_relationship of SKIPPED or NO_DATA, then either arrival or departure must be provided

Sample errors
  • trip_id Z_R_02 stop_sequence 0 doesn't have arrival or departure

VehiclePosition and TripUpdate ID pairing mismatch E047 1 error

If separate `VehiclePositions` and `TripUpdates` feeds are provided, `VehicleDescriptor` or `TripDescriptor` ID value pairing should match between the two feeds.

Sample errors
  • trip_id Z_R_02 and vehicle_id 60efd6e3556b6d0001d90ef8 pairing in VehiclePositions does not match trip_id Z_A_01 and vehicle_id 60efd6e3556b6d0001d90ef8 pairing in TripUpdates feed and trip block_ids aren't the same - ID pairing between feeds should match

Warnings

ID in one feed missing from the other W003 1 error

a trip_id that is provided in the VehiclePositions feed should be provided in the TripUpdates feed, and a vehicle_id that is provided in the TripUpdates feed should be provided in the VehiclePositions feed

Sample errors
  • trip_id Z_A_01 is in TripUpdates but not in VehiclePositions feed
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
E022 stop_time_update arrival/departure times between sequential stops should always increase - they should never be the same or decrease. 188 26 times (96 % of validations)
W003 a trip_id that is provided in the VehiclePositions feed should be provided in the TripUpdates feed, and a vehicle_id that is provided in the TripUpdates feed should be provided in the VehiclePositions feed 25 18 times (67 % of validations)
E043 If a stop_time_update doesn't have a schedule_relationship of SKIPPED or NO_DATA, then either arrival or departure must be provided 71 16 times (59 % of validations)
E047 If separate `VehiclePositions` and `TripUpdates` feeds are provided, `VehicleDescriptor` or `TripDescriptor` ID value pairing should match between the two feeds. 12 11 times (41 % of validations)
E037 Sequential GTFS-rt trip stop_time_updates shouldn't have the same stop_id 7 5 times (19 % 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. 2 2 times (7 % of validations)

GTFS-RT feed content

Entities

Entities present in this feed at 2025-07-24 at 09:11 Europe/Paris.

trip_updates (5) vehicle_positions (4) service_alerts (0)

Entities seen in the last 7 days.

trip_updates vehicle_positions

Decoded GTFS-RT feed

See full payload

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

{ "entity": [ { "id": "vehicle:e1c40ca21e54afde", "vehicle": { "currentStatus": "STOPPED_AT", "currentStopSequence": 8, "position": { "latitude": 47.02372360229492, "longitude": -2.2990200519561768 }, "stopId": "HERBAUPORT_A", "timestamp": "1753341099", "trip": { "routeId": "Ligne C", "scheduleRelationship": "SCHEDULED", "tripId": "C_02" }, "vehicle": { "id": "e1c40ca21e54afde" } } }, { "id": "vehicle:686cec19be97c0a2d3f4f810", "vehicle": { "currentStopSequence": 8, "occupancyStatus": "MANY_SEATS_AVAILABLE", "position": { "latitude": 47.00092315673828, "longitude": -2.2211647033691406 }, "stopId": "MURETSABL_AR", "timestamp": "1753341099", "trip": { "routeId": "Ligne A", "scheduleRelationship": "SCHEDULED", "tripId": "A_01" }, "vehicle": { "id": "686cec19be97c0a2d3f4f810", "label": "972", "licensePlate": "GT-556-BT" } } }, { "id": "vehicle:60efd6e3556b6d0001d90ef8", "vehicle": { "currentStopSequence": 4, "occupancyStatus": "EMPTY", "position": { "latitude": 46.92384719848633, "longitude": -2.16437029838562 }, "stopId": "ONCHERE_R", "timestamp": "1753341097", "trip": { "routeId": "Ligne Z", "scheduleRelationship": "SCHEDULED", "tripId": "Z_R_02" }, "vehicle": { "id": "60efd6e3556b6d0001d90ef8", "label": "804", "licensePlate": "FR-142-SJ" } } }, { "id": "vehicle:727b840497a9c18a", "vehicle": { "currentStatus": "STOPPED_AT", "currentStopSequence": 9, "position": { "latitude": 47.02617263793945, "longitude": -2.250533103942871 }, "stopId": "PLAGEVIEIL_AR", "timestamp": "1753341095", "trip": { "routeId": "Ligne B", "scheduleRelationship": "SCHEDULED", "tripId": "B_01" }, "vehicle": { "id": "727b840497a9c18a" } } }, { "id": "trip:B_01", "tripUpdate": { "stopTimeUpdate": [ { "arrival": { "time": "1753340352" }, "departure": { "time": "1753340428" }, "stopId": "GARE-URB_AR", "stopSequence": 0 }, { "arrival": { "time": "1753340533" }, "departure": { "time": "1753340543" }, "stopId": "MAISONSANTE_A", "stopSequence": 1 }, { "arrival": { "time": "1753340595" }, "departure": { "time": "1753340604" }, "stopId": "CRF-PIERRBEA_A", "stopSequence": 2 }, { "arrival": { "time": "1753340675" }, "departure": { "time": "1753340695" }, "stopId": "RP-PIERRIER_A", "stopSequence": 4 }, { "arrival": { "time": "1753340812" }, "departure": { "time": "1753340859" }, "stopId": "ROUSSI_A", "stopSequence": 5 }, { "arrival": { "time": "1753340900" }, "departure": { "time": "1753340929" }, "stopId": "ENTRE-VIEIL_A", "stopSequence": 6 }, { "arrival": { "time": "1753340961" }, "departure": { "time": "1753340976" }, "stopId": "MARDI-GRA_A", "stopSequence": 7 }, { "arrival": { "time": "1753341018" }, "departure": { "time": "1753341038" }, "stopId": "ECOLE-VIEIL_A", "stopSequence": 8 }, { "arrival": { "time": "1753341084" }, "departure": { "time": "1753341100" }, "stopId": "PLAGEVIEIL_AR", "stopSequence": 9 }, { "arrival": { "time": "1753341160" }, "departure": { "time": "1753341160" }, "stopId": "CHEVRETTRES_AR", "stopSequence": 10 }, { "arrival": { "time": "1753341220" }, "departure": { "time": "1753341220" }, "stopId": "RESISTANCE_AR", "stopSequence": 11 }, { "arrival": { "time": "1753341280" }, "departure": { "time": "1753341280" }, "stopId": "TRAQUES_AR", "stopSequence": 12 }, { "arrival": { "time": "1753341340" }, "departure": { "time": "1753341340" }, "stopId": "ECOLE-VIEIL_R", "stopSequence": 13 }, { "arrival": { "time": "1753341460" }, "departure": { "time": "1753341460" }, "stopId": "MARDI-GRA_R", "stopSequence": 14 }, { "arrival": { "time": "1753341520" }, "departure": { "time": "1753341520" }, "stopId": "ENTRE-VIEIL_R", "stopSequence": 15 }, { "arrival": { "time": "1753341580" }, "departure": { "time": "1753341580" }, "stopId": "ROUSSI_R", "stopSequence": 16 }, { "arrival": { "time": "1753341700" }, "departure": { "time": "1753341700" }, "stopId": "RP-PIERRIER_R", "stopSequence": 17 }, { "arrival": { "time": "1753341700" }, "departure": { "time": "1753341700" }, "stopId": "CHAMPMART_R", "stopSequence": 18 }, { "arrival": { "time": "1753341760" }, "departure": { "time": "1753341760" }, "stopId": "CRF-PIERRBEA_R", "stopSequence": 19 }, { "arrival": { "time": "1753341820" }, "departure": { "time": "1753341820" }, "stopId": "MAISONSANTE_R", "stopSequence": 20 }, { "arrival": { "time": "1753341940" }, "departure": { "time": "1753341940" }, "stopId": "GARE-URB_AR", "stopSequence": 21 } ], "timestamp": "1753341095", "trip": { "routeId": "Ligne B", "scheduleRelationship": "SCHEDULED", "tripId": "B_01" }, "vehicle": { "id": "727b840497a9c18a" } } }, { "id": "trip:C_01", "tripUpdate": { "stopTimeUpdate": [ { "arrival": { "time": "1753335341" }, "departure": { "time": "1753336863" }, "stopId": "GARE-URB_AR", "stopSequence": 0 }, { "arrival": { "time": "1753336949" }, "departure": { "time": "1753336959" }, "stopId": "MAISONSANTE_A", "stopSequence": 1 }, { "arrival": { "time": "1753337061" }, "departure": { "time": "1753337071" }, "stopId": "HOUSSI_A", "stopSequence": 2 }, { "arrival": { "time": "1753337146" }, "departure": { "time": "1753337159" }, "stopId": "LUZAY_A", "stopSequence": 3 }, { "arrival": { "time": "1753337249" }, "departure": { "time": "1753337255" }, "stopId": "LUZERON_A", "stopSequence": 4 }, { "arrival": { "time": "1753337277" }, "departure": { "time": "1753337286" }, "stopId": "PAREEBLAN_A", "stopSequence": 5 }, { "arrival": { "time": "1753337304" }, "departure": { "time": "1753337313" }, "stopId": "EGLISE_A", "stopSequence": 6 }, { "arrival": { "time": "1753337368" }, "departure": { "time": "1753337380" }, "stopId": "MAIRIEANNEXE_A", "stopSequence": 7 }, { "arrival": { "time": "1753337417" }, "departure": { "time": "1753337637" }, "stopId": "HERBAUPORT_A", "stopSequence": 8 }, { "arrival": { "time": "1753337704" }, "departure": { "time": "1753337714" }, "stopId": "RUEECOLES_AR", "stopSequence": 9 }, { "arrival": { "time": "1753337777" }, "departure": { "time": "1753337792" }, "stopId": "DUNES_AR", "stopSequence": 10 }, { "arrival": { "time": "1753337815" }, "departure": { "time": "1753337830" }, "stopId": "MARTROGER_AR", "stopSequence": 11 }, { "arrival": { "time": "1753337985" }, "departure": { "time": "1753338006" }, "stopId": "TERRSPORT_AR", "stopSequence": 12 }, { "arrival": { "time": "1753338049" }, "departure": { "time": "1753338072" }, "stopId": "GRANDEDOUV_AR", "stopSequence": 13 }, { "arrival": { "time": "1753338126" }, "departure": { "time": "1753338321" }, "stopId": "HERBAUPORT_R", "stopSequence": 14 }, { "arrival": { "time": "1753338359" }, "departure": { "time": "1753338372" }, "stopId": "MAIRIEANNEXE_R", "stopSequence": 15 }, { "arrival": { "time": "1753338418" }, "departure": { "time": "1753338464" }, "stopId": "EGLISE_R", "stopSequence": 16 }, { "arrival": { "time": "1753338482" }, "departure": { "time": "1753338490" }, "stopId": "PAREEBLAN_R", "stopSequence": 17 }, { "arrival": { "time": "1753338518" }, "departure": { "time": "1753338589" }, "stopId": "LUZERON_R", "stopSequence": 18 }, { "arrival": { "time": "1753338627" }, "departure": { "time": "1753338637" }, "stopId": "LUZAY_R", "stopSequence": 19 }, { "arrival": { "time": "1753338722" }, "departure": { "time": "1753338731" }, "stopId": "HOUSSI_R", "stopSequence": 20 }, { "arrival": { "time": "1753338829" }, "departure": { "time": "1753338839" }, "stopId": "MAISONSANTE_R", "stopSequence": 21 }, { "arrival": { "time": "1753338921" }, "stopId": "GARE-URB_AR", "stopSequence": 22 } ], "timestamp": "1753341099", "trip": { "routeId": "Ligne C", "scheduleRelationship": "SCHEDULED", "tripId": "C_01" }, "vehicle": { "id": "686cec19be97c0a2d3f4f810", "label": "972", "licensePlate": "GT-556-BT" } } }, { "id": "trip:A_01", "tripUpdate": { "stopTimeUpdate": [ { "arrival": { "time": "1753340407" }, "departure": { "time": "1753340442" }, "stopId": "GARE-URB_AR", "stopSequence": 0 }, { "arrival": { "time": "1753340603" }, "departure": { "time": "1753340649" }, "stopId": "PLACE-DARME_A", "stopSequence": 1 }, { "arrival": { "time": "1753340724" }, "departure": { "time": "1753340736" }, "stopId": "TERRDEBOUL_A", "stopSequence": 2 }, { "arrival": { "time": "1753340760" }, "departure": { "time": "1753340793" }, "stopId": "LONGSEJOUR_A", "stopSequence": 3 }, { "arrival": { "time": "1753340810" }, "departure": { "time": "1753340822" }, "stopId": "CRF-BARBAU_A", "stopSequence": 4 }, { "arrival": { "time": "1753340954" }, "departure": { "time": "1753340971" }, "stopId": "CLAIRMAT_AR", "stopSequence": 5 }, { "arrival": { "time": "1753340992" }, "departure": { "time": "1753341014" }, "stopId": "HUTTOPIA_AR", "stopSequence": 6 }, { "arrival": { "time": "1753341030" }, "departure": { "time": "1753341052" }, "stopId": "MAISONBLANCHE_AR", "stopSequence": 7 }, { "arrival": { "time": "1753341140" }, "departure": { "time": "1753341140" }, "stopId": "MURETSABL_AR", "stopSequence": 8 }, { "arrival": { "time": "1753341260" }, "departure": { "time": "1753341260" }, "stopId": "CRF-BARBAU_R", "stopSequence": 9 }, { "arrival": { "time": "1753341320" }, "departure": { "time": "1753341320" }, "stopId": "LONGSEJOUR_R", "stopSequence": 10 }, { "arrival": { "time": "1753341380" }, "departure": { "time": "1753341380" }, "stopId": "TERRDEBOUL_R", "stopSequence": 11 }, { "arrival": { "time": "1753341500" }, "departure": { "time": "1753341500" }, "stopId": "PLACE-DARME_R", "stopSequence": 12 }, { "arrival": { "time": "1753341620" }, "departure": { "time": "1753341620" }, "stopId": "GARE-URB_AR", "stopSequence": 13 } ], "timestamp": "1753341099", "trip": { "routeId": "Ligne A", "scheduleRelationship": "SCHEDULED", "tripId": "A_01" }, "vehicle": { "id": "686cec19be97c0a2d3f4f810", "label": "972", "licensePlate": "GT-556-BT" } } }, { "id": "trip:Z_R_02", "tripUpdate": { "stopTimeUpdate": [ { "stopId": "RPFOSSE_AR", "stopSequence": 0 }, { "arrival": { "time": "1753340836" }, "departure": { "time": "1753340886" }, "stopId": "VILLAVAC_R", "stopSequence": 1 }, { "arrival": { "time": "1753340933" }, "departure": { "time": "1753340943" }, "stopId": "CROIXVERTE_R", "stopSequence": 2 }, { "arrival": { "time": "1753340982" }, "departure": { "time": "1753341044" }, "stopId": "NOURES_R", "stopSequence": 3 }, { "arrival": { "time": "1753341190" }, "departure": { "time": "1753341190" }, "stopId": "ONCHERE_R", "stopSequence": 4 }, { "arrival": { "time": "1753341370" }, "departure": { "time": "1753341370" }, "stopId": "CROIXROUG_R", "stopSequence": 5 }, { "arrival": { "time": "1753341610" }, "departure": { "time": "1753341610" }, "stopId": "RPGOIS_AR", "stopSequence": 6 }, { "arrival": { "time": "1753341790" }, "departure": { "time": "1753341790" }, "stopId": "CENTREVILL_R", "stopSequence": 7 }, { "arrival": { "time": "1753341850" }, "departure": { "time": "1753341850" }, "stopId": "PARCMAIRIE_R", "stopSequence": 8 }, { "arrival": { "time": "1753341970" }, "departure": { "time": "1753341970" }, "stopId": "MAIRSONROUG_R", "stopSequence": 9 }, { "arrival": { "time": "1753342210" }, "departure": { "time": "1753342210" }, "stopId": "TRESSON_AR", "stopSequence": 10 }, { "arrival": { "time": "1753342450" }, "departure": { "time": "1753342450" }, "stopId": "CAMPINGBONH_R", "stopSequence": 11 }, { "arrival": { "time": "1753342570" }, "departure": { "time": "1753342570" }, "stopId": "ECOLECOM_R", "stopSequence": 12 }, { "arrival": { "time": "1753342690" }, "departure": { "time": "1753342690" }, "stopId": "CROIXBLANCH_R", "stopSequence": 13 }, { "arrival": { "time": "1753342750" }, "departure": { "time": "1753342750" }, "stopId": "FRANCS_R", "stopSequence": 14 }, { "arrival": { "time": "1753342870" }, "departure": { "time": "1753342870" }, "stopId": "4VENTS_R", "stopSequence": 15 }, { "arrival": { "time": "1753343170" }, "departure": { "time": "1753343170" }, "stopId": "PRKCAMPING_R", "stopSequence": 16 }, { "arrival": { "time": "1753343410" }, "departure": { "time": "1753343410" }, "stopId": "PORTMORIN_AR", "stopSequence": 17 }, { "arrival": { "time": "1753343590" }, "departure": { "time": "1753343590" }, "stopId": "CAMPINGBOSS_AR", "stopSequence": 18 }, { "arrival": { "time": "1753343950" }, "departure": { "time": "1753343950" }, "stopId": "PISCINE_AR", "stopSequence": 19 }, { "arrival": { "time": "1753344070" }, "departure": { "time": "1753344070" }, "stopId": "GARE-INTERURB_AR", "stopSequence": 20 } ], "timestamp": "1753341097", "trip": { "routeId": "Ligne Z", "scheduleRelationship": "SCHEDULED", "tripId": "Z_R_02" }, "vehicle": { "id": "60efd6e3556b6d0001d90ef8", "label": "804", "licensePlate": "FR-142-SJ" } } }, { "id": "trip:C_02", "tripUpdate": { "stopTimeUpdate": [ { "arrival": { "time": "1753340279" }, "departure": { "time": "1753340439" }, "stopId": "GARE-URB_AR", "stopSequence": 0 }, { "arrival": { "time": "1753340541" }, "departure": { "time": "1753340552" }, "stopId": "MAISONSANTE_A", "stopSequence": 1 }, { "arrival": { "time": "1753340674" }, "departure": { "time": "1753340680" }, "stopId": "HOUSSI_A", "stopSequence": 2 }, { "arrival": { "time": "1753340799" }, "departure": { "time": "1753340808" }, "stopId": "LUZAY_A", "stopSequence": 3 }, { "arrival": { "time": "1753340858" }, "departure": { "time": "1753340866" }, "stopId": "LUZERON_A", "stopSequence": 4 }, { "arrival": { "time": "1753340891" }, "departure": { "time": "1753340904" }, "stopId": "PAREEBLAN_A", "stopSequence": 5 }, { "arrival": { "time": "1753340921" }, "departure": { "time": "1753340931" }, "stopId": "EGLISE_A", "stopSequence": 6 }, { "arrival": { "time": "1753340986" }, "departure": { "time": "1753341028" }, "stopId": "MAIRIEANNEXE_A", "stopSequence": 7 }, { "arrival": { "time": "1753341078" }, "departure": { "time": "1753341100" }, "stopId": "HERBAUPORT_A", "stopSequence": 8 }, { "arrival": { "time": "1753341340" }, "departure": { "time": "1753341340" }, "stopId": "RUEECOLES_AR", "stopSequence": 9 }, { "arrival": { "time": "1753341400" }, "departure": { "time": "1753341400" }, "stopId": "DUNES_AR", "stopSequence": 10 }, { "arrival": { "time": "1753341520" }, "departure": { "time": "1753341520" }, "stopId": "MARTROGER_AR", "stopSequence": 11 }, { "arrival": { "time": "1753341580" }, "departure": { "time": "1753341580" }, "stopId": "TERRSPORT_AR", "stopSequence": 12 }, { "arrival": { "time": "1753341640" }, "departure": { "time": "1753341640" }, "stopId": "GRANDEDOUV_AR", "stopSequence": 13 }, { "arrival": { "time": "1753341820" }, "departure": { "time": "1753341820" }, "stopId": "HERBAUPORT_R", "stopSequence": 14 }, { "arrival": { "time": "1753341880" }, "departure": { "time": "1753341880" }, "stopId": "MAIRIEANNEXE_R", "stopSequence": 15 }, { "arrival": { "time": "1753342000" }, "departure": { "time": "1753342000" }, "stopId": "EGLISE_R", "stopSequence": 16 }, { "arrival": { "time": "1753342060" }, "departure": { "time": "1753342060" }, "stopId": "PAREEBLAN_R", "stopSequence": 17 }, { "arrival": { "time": "1753342120" }, "departure": { "time": "1753342120" }, "stopId": "LUZERON_R", "stopSequence": 18 }, { "arrival": { "time": "1753342180" }, "departure": { "time": "1753342180" }, "stopId": "LUZAY_R", "stopSequence": 19 }, { "arrival": { "time": "1753342240" }, "departure": { "time": "1753342240" }, "stopId": "HOUSSI_R", "stopSequence": 20 }, { "arrival": { "time": "1753342360" }, "departure": { "time": "1753342360" }, "stopId": "MAISONSANTE_R", "stopSequence": 21 }, { "arrival": { "time": "1753342480" }, "departure": { "time": "1753342480" }, "stopId": "GARE-URB_AR", "stopSequence": 22 } ], "timestamp": "1753341099", "trip": { "routeId": "Ligne C", "scheduleRelationship": "SCHEDULED", "tripId": "C_02" }, "vehicle": { "id": "e1c40ca21e54afde" } } } ], "header": { "gtfsRealtimeVersion": "2.0", "timestamp": "1753341101" } }