Resource details

File name: Position des véhicules du réseau FORBUS
Format: gtfs-rt

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

Download availability

2026-03-08
60%
2026-03-09
74.7%
2026-03-10
82.6%
2026-03-11
100%
2026-03-12
93.6%
2026-03-13
88.9%
2026-03-14
69.1%
2026-03-15
57.8%
2026-03-16
87.3%
2026-03-17
78.5%
2026-03-18
74.8%
2026-03-19
77%
2026-03-20
74.5%
2026-03-21
68.9%
2026-03-22
55.8%
2026-03-23
74.6%
2026-03-24
84.1%
2026-03-25
87.7%
2026-03-26
95.7%
2026-03-27
92.1%
2026-03-28
69%
2026-03-29
58%
2026-03-30
94.1%
2026-03-31
96.4%
2026-04-01
96.4%
2026-04-02
84.2%
2026-04-03
71.1%
2026-04-04
84.7%
2026-04-05
50.7%
2026-04-06
60.1%
2026-04-07
62.5%
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

2 errors, 24 warnings

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

Errors

Vehicle position outside agency coverage area E028 2 errors

The vehicle position should be inside the agency coverage area. This is defined as within roughly 1/8 of a mile (200 meters) of the GTFS shapes.txt data, or stops.txt locations if the GTFS feed doesn't include shapes.txt.

Sample errors
  • vehicle.id 226 at (0.0,0.0) is more than 1609.0 meters (1.00 mile(s)) outside entire GTFS stops.txt coverage area - vehicle should be within area
  • vehicle.id 217 at (0.0,0.0) is more than 1609.0 meters (1.00 mile(s)) outside entire GTFS stops.txt coverage area - vehicle should be within area

Warnings

timestamp not populated W001 2 errors

Timestamps should be populated for all elements

Sample errors
  • vehicle_id 226 does not have a timestamp
  • vehicle_id 217 does not have a timestamp

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 1 min 28 sec old which is greater than the recommended age of 65 seconds

schedule_relationship not populated W009 21 errors

trip.schedule_relationship and stop_time_update.schedule_relationship should be populated

Sample errors
  • trip_id f9f535c6-238c-42ff-b403-f0233238a870 does not have a schedule_relationship
  • trip_id b931e7d4-604b-434a-9979-e55b96d12071 does not have a schedule_relationship
  • trip_id 4a3771e4-28c7-4926-b8cb-a284e4246024 does not have a schedule_relationship
  • trip_id a145c8a1-0f90-442e-a327-7516c8753fb1 does not have a schedule_relationship
  • trip_id 9dde860d-3b67-4c80-b25e-4f660532491f 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
W009 trip.schedule_relationship and stop_time_update.schedule_relationship should be populated 522 24 times (80 % of validations)
E028 The vehicle position should be inside the agency coverage area. This is defined as within roughly 1/8 of a mile (200 meters) of the GTFS shapes.txt data, or stops.txt locations if the GTFS feed doesn't include shapes.txt. 159 23 times (77 % of validations)
W001 Timestamps should be populated for all elements 50 22 times (73 % of validations)
W008 The data in a GTFS-realtime feed should always be less than one minute old 18 18 times (60 % of validations)

GTFS-RT feed content

Entities

Entities present in this feed at 2026-04-07 at 10:01 Europe/Paris.

vehicle_positions (14) service_alerts (0) trip_updates (0)

Entities seen in the last 7 days.

vehicle_positions

Decoded GTFS-RT feed

See full payload

Here is the decoded GTFS-RT feed Protobuf at 2026-04-07 at 10:01 Europe/Paris. You can look at the GTFS-RT documentation.

{ "entity": [ { "id": "VM:9edb355a-37c7-4782-a511-caf41dad93e5", "vehicle": { "currentStopSequence": 21, "position": { "latitude": 49.19205856323242, "longitude": 6.8875651359558105 }, "stopId": "STP-STP-RUE-GRAPPELLI", "timestamp": "1775548753", "trip": { "routeId": "LIGNE-A", "tripId": "9edb355a-37c7-4782-a511-caf41dad93e5" }, "vehicle": { "id": "57" } } }, { "id": "VM:87dffe7f-c8ce-4e70-9b9b-237bc7c333f5", "vehicle": { "currentStopSequence": 35, "position": { "latitude": 49.18832015991211, "longitude": 6.899074077606201 }, "stopId": "STP-FORBACH-GARE-ROUTIERE-B", "timestamp": "1775548242", "trip": { "directionId": 1, "routeId": "LIGNE-124", "tripId": "87dffe7f-c8ce-4e70-9b9b-237bc7c333f5" }, "vehicle": { "id": "189" } } }, { "id": "VM:3655d648-01da-49d2-a04e-d41808f1030d", "vehicle": { "currentStopSequence": 1, "position": { "latitude": 49.17975997924805, "longitude": 6.900014877319336 }, "stopId": "STP-PISCINE-OLYMPIQUE", "timestamp": "1775548006", "trip": { "routeId": "LIGNE-B", "tripId": "3655d648-01da-49d2-a04e-d41808f1030d" }, "vehicle": { "id": "226" } } }, { "id": "VM:c3e7a473-d57a-4145-a1b4-f0a68c17a7e1", "vehicle": { "currentStopSequence": 1, "position": {}, "stopId": "STP-STP-EGLISE-DU-HABSTERDICK", "trip": { "directionId": 1, "routeId": "LIGNE-B", "tripId": "c3e7a473-d57a-4145-a1b4-f0a68c17a7e1" }, "vehicle": { "id": "18" } } }, { "id": "VM:885619b5-26b8-4dba-b9ef-9ab9e46b2b82", "vehicle": { "currentStopSequence": 1, "position": {}, "stopId": "STP-STP-PLACE-DES-BOULEAUX", "trip": { "directionId": 1, "routeId": "LIGNE-D", "tripId": "885619b5-26b8-4dba-b9ef-9ab9e46b2b82" }, "vehicle": { "id": "14" } } }, { "id": "VM:31c9f2ae-d232-4e1c-9d90-aebefb1d4e25", "vehicle": { "currentStopSequence": 1, "position": { "latitude": 49.18880081176758, "longitude": 6.899888038635254 }, "stopId": "STP-PUTTELANGE-AUX-LACS-RUE-LONGUE", "timestamp": "1775543913", "trip": { "routeId": "LIGNE-AS-124", "tripId": "31c9f2ae-d232-4e1c-9d90-aebefb1d4e25" }, "vehicle": { "id": "219" } } }, { "id": "VM:1918ac4a-59ab-47f1-b4f1-073e35f3c4ae", "vehicle": { "currentStopSequence": 19, "position": { "latitude": 49.175228118896484, "longitude": 6.931364059448242 }, "stopId": "STP-STP-RUE-PFISTERQUELLE", "timestamp": "1775548744", "trip": { "routeId": "LIGNE-F", "tripId": "1918ac4a-59ab-47f1-b4f1-073e35f3c4ae" }, "vehicle": { "id": "227" } } }, { "id": "VM:cf48ecd8-f1fa-4ffd-a199-86c9bc0cc294", "vehicle": { "currentStopSequence": 21, "position": { "latitude": 49.172630310058594, "longitude": 6.879746913909912 }, "stopId": "STP-STP-MORSBACH-GIRATOIRE", "timestamp": "1775548771", "trip": { "routeId": "LIGNE-E", "tripId": "cf48ecd8-f1fa-4ffd-a199-86c9bc0cc294" }, "vehicle": { "id": "61" } } }, { "id": "VM:e742a263-2459-4ca2-b231-833b32eb1029", "vehicle": { "currentStopSequence": 10, "position": { "latitude": 49.20771026611328, "longitude": 6.931241989135742 }, "stopId": "STP-STP-ZI-DU-PUITS-SIMON-IV", "timestamp": "1775548651", "trip": { "routeId": "LIGNE-H", "tripId": "e742a263-2459-4ca2-b231-833b32eb1029" }, "vehicle": { "id": "9" } } }, { "id": "VM:78f560e1-8774-47e6-9580-a2881b0fc1b8", "vehicle": { "currentStopSequence": 1, "position": {}, "stopId": "STP-STP-POSTE-DE-STIRING-WENDEL", "trip": { "routeId": "LIGNE-D", "tripId": "78f560e1-8774-47e6-9580-a2881b0fc1b8" }, "vehicle": { "id": "13" } } }, { "id": "VM:f1db212e-d67e-4a0e-b649-80de9715530d", "vehicle": { "currentStopSequence": 1, "position": {}, "stopId": "STP-STP-AVENUE-DE-STIRING-WENDEL", "trip": { "directionId": 1, "routeId": "LIGNE-A", "tripId": "f1db212e-d67e-4a0e-b649-80de9715530d" }, "vehicle": { "id": "56" } } }, { "id": "VM:7a6b9868-5a63-4ef2-9320-65ff99fe291b", "vehicle": { "currentStopSequence": 17, "position": { "latitude": 49.185569763183594, "longitude": 6.894868850708008 }, "stopId": "STP-STP-HOTEL-DE-VILLE-B", "timestamp": "1775548740", "trip": { "directionId": 1, "routeId": "LIGNE-F", "tripId": "7a6b9868-5a63-4ef2-9320-65ff99fe291b" }, "vehicle": { "id": "225" } } }, { "id": "VM:0d7c1ad8-702f-4478-a589-625685837fc9", "vehicle": { "currentStopSequence": 31, "position": { "latitude": 49.16033935546875, "longitude": 6.93031120300293 }, "stopId": "STP-STP-DESCARTES", "timestamp": "1775548774", "trip": { "routeId": "LIGNE-G", "tripId": "0d7c1ad8-702f-4478-a589-625685837fc9" }, "vehicle": { "id": "230" } } }, { "id": "VM:f78b4d92-b20b-4078-b8d9-daadee393d54", "vehicle": { "currentStopSequence": 28, "position": { "latitude": 49.19232940673828, "longitude": 6.887050151824951 }, "stopId": "STP-STP-CIMETIERE-DE-FORBACH-B", "timestamp": "1775548756", "trip": { "directionId": 1, "routeId": "LIGNE-A", "tripId": "f78b4d92-b20b-4078-b8d9-daadee393d54" }, "vehicle": { "id": "12" } } } ], "header": { "gtfsRealtimeVersion": "1.0", "timestamp": "1775548860" } }