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-07-07
75.9%
2026-07-08
84.8%
2026-07-09
75.4%
2026-07-10
75.5%
2026-07-11
87.9%
2026-07-12
59.6%
2026-07-13
81.7%
2026-07-14
71.2%
2026-07-15
74.7%
2026-07-16
87.4%
2026-07-17
90.8%
2026-07-18
84.7%
2026-07-19
81.6%
2026-07-20
84%
2026-07-21
77%
2026-07-22
90.2%
2026-07-23
87.9%
2026-07-24
87.4%
2026-07-25
90%
2026-07-26
59.5%
2026-07-27
75.3%
2026-07-28
75.3%
2026-07-29
86.7%
2026-07-30
80.4%
2026-07-31
86%
2026-08-01
88.8%
2026-08-02
59.9%
2026-08-03
77.7%
2026-08-04
87.4%
2026-08-05
98.2%
2026-08-06
95.6%
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, 18 warnings

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

Errors

Vehicle position outside agency coverage area E028 1 error

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 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 1 error

Timestamps should be populated for all elements

Sample errors
  • 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 5 min 27 sec old which is greater than the recommended age of 65 seconds

schedule_relationship not populated W009 16 errors

trip.schedule_relationship and stop_time_update.schedule_relationship should be populated

Sample errors
  • trip_id 94c299ec-b41c-4c67-808d-98ad9909e81f does not have a schedule_relationship
  • trip_id 9dde860d-3b67-4c80-b25e-4f660532491f does not have a schedule_relationship
  • trip_id e2f3f973-0928-42bd-84e6-bb97721459eb does not have a schedule_relationship
  • trip_id d10344ee-c271-49de-98f6-8b9f5d9ab358 does not have a schedule_relationship
  • trip_id 527a87f6-bc0e-40f5-9665-e142086d8740 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 400 25 times (83 % of validations)
W008 The data in a GTFS-realtime feed should always be less than one minute old 20 20 times (67 % 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. 27 18 times (60 % of validations)
W001 Timestamps should be populated for all elements 27 18 times (60 % of validations)

GTFS-RT feed content

Entities

Entities present in this feed at 2026-08-06 at 19:44 Europe/Paris.

vehicle_positions (12) 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-08-06 at 19:44 Europe/Paris. You can look at the GTFS-RT documentation.

{ "entity": [ { "id": "VM:0fbbcc1c-afd1-417d-898b-b6efe8c921c3", "vehicle": { "currentStopSequence": 14, "position": { "latitude": 49.21786880493164, "longitude": 6.859428882598877 }, "stopId": "STP-STP-RUE-SAINT-JOSEPH-B", "timestamp": "1786038170", "trip": { "directionId": 1, "routeId": "LIGNE-A", "tripId": "0fbbcc1c-afd1-417d-898b-b6efe8c921c3" }, "vehicle": { "id": "60" } } }, { "id": "VM:0d165d64-4c61-4128-abbb-1fd1a294adb4", "vehicle": { "currentStopSequence": 22, "position": { "bearing": 173.0, "latitude": 49.10898971557617, "longitude": 6.896551132202148 }, "stopId": "STP-FAREBERSVILLER-COLLEGE-HOLDERITH-B", "timestamp": "1786038200", "trip": { "routeId": "LIGNE-124", "tripId": "0d165d64-4c61-4128-abbb-1fd1a294adb4" }, "vehicle": { "id": "45" } } }, { "id": "VM:d5d47f9b-2c82-40e0-b292-5e8c7c24673e", "vehicle": { "currentStopSequence": 34, "position": { "latitude": 0.0, "longitude": 0.0 }, "stopId": "STP-STP-FAUVETTES", "trip": { "routeId": "LIGNE-G", "tripId": "d5d47f9b-2c82-40e0-b292-5e8c7c24673e" }, "vehicle": { "id": "231" } } }, { "id": "VM:d14018c2-de69-49fb-bb26-240b1dc0f1c4", "vehicle": { "position": { "bearing": 57.0, "latitude": 49.18391036987305, "longitude": 6.882204055786133 }, "timestamp": "1786037483", "trip": { "routeId": "LIGNE-C", "tripId": "d14018c2-de69-49fb-bb26-240b1dc0f1c4" }, "vehicle": { "id": "23" } } }, { "id": "VM:02c3c7db-2890-4796-9857-0b4d854ff3ea", "vehicle": { "currentStopSequence": 36, "position": { "latitude": 49.217899322509766, "longitude": 6.859686851501465 }, "stopId": "STP-STP-EGLISE-VIEILLE-VERRERIE", "timestamp": "1786038217", "trip": { "routeId": "LIGNE-A", "tripId": "02c3c7db-2890-4796-9857-0b4d854ff3ea" }, "vehicle": { "id": "57" } } }, { "id": "VM:86260a15-0cce-438d-b77f-eb303be4d6c6", "vehicle": { "currentStopSequence": 1, "position": { "latitude": 0.0, "longitude": 0.0 }, "stopId": "STP-STP-RUE-DE-LA-SEINE-2", "trip": { "routeId": "LIGNE-E", "tripId": "86260a15-0cce-438d-b77f-eb303be4d6c6" }, "vehicle": { "id": "61" } } }, { "id": "VM:8d7a1687-2e1e-4360-934c-2b7f636211f4", "vehicle": { "currentStopSequence": 1, "position": { "latitude": 0.0, "longitude": 0.0 }, "stopId": "STP-STP-MORSBACH-GIRATOIRE", "trip": { "directionId": 1, "routeId": "LIGNE-E", "tripId": "8d7a1687-2e1e-4360-934c-2b7f636211f4" }, "vehicle": { "id": "15" } } }, { "id": "VM:366d6c70-a754-4bba-9c40-971b41f16c45", "vehicle": { "currentStopSequence": 1, "position": { "latitude": 0.0, "longitude": 0.0 }, "stopId": "STP-STP-ECOLE-DE-LA-2EME-CHANCE", "trip": { "routeId": "LIGNE-F", "tripId": "366d6c70-a754-4bba-9c40-971b41f16c45" }, "vehicle": { "id": "261" } } }, { "id": "VM:295997d4-ef8c-4a82-ba2c-950148949611", "vehicle": { "currentStopSequence": 1, "position": { "latitude": 0.0, "longitude": 0.0 }, "stopId": "STP-STP-BREME-D-OR", "trip": { "routeId": "LIGNE-A", "tripId": "295997d4-ef8c-4a82-ba2c-950148949611" }, "vehicle": { "id": "56" } } }, { "id": "VM:35b1edcd-cac4-4f50-b32c-632c6cd03cd9", "vehicle": { "currentStopSequence": 1, "position": { "latitude": 0.0, "longitude": 0.0 }, "stopId": "STP-PISCINE-OLYMPIQUE", "trip": { "routeId": "LIGNE-B", "tripId": "35b1edcd-cac4-4f50-b32c-632c6cd03cd9" }, "vehicle": { "id": "18" } } }, { "id": "VM:387edc41-5bc8-4f70-9404-fc743b71f8c5", "vehicle": { "currentStopSequence": 3, "position": { "bearing": 240.0, "latitude": 49.19939041137695, "longitude": 6.877392768859863 }, "stopId": "STP-STP-ALLEE-DES-SAPINS-B", "timestamp": "1786038232", "trip": { "directionId": 1, "routeId": "LIGNE-D", "tripId": "387edc41-5bc8-4f70-9404-fc743b71f8c5" }, "vehicle": { "id": "54" } } }, { "id": "VM:87c49bd3-3dee-4db7-9220-91887aa7a018", "vehicle": { "currentStopSequence": 23, "position": { "latitude": 49.20880126953125, "longitude": 6.9489312171936035 }, "stopId": "STP-STP-EGLISE-DU-HABSTERDICK", "timestamp": "1786038229", "trip": { "routeId": "LIGNE-B", "tripId": "87c49bd3-3dee-4db7-9220-91887aa7a018" }, "vehicle": { "id": "260" } } } ], "header": { "gtfsRealtimeVersion": "1.0", "timestamp": "1786038255" } }