This endpoint provides realtime transit data for Berlin & Brandenburg in the GTFS Realtime (GTFS-RT) format.
Underneath, it works by polling the VBB HAFAS endpoint. Those interested in delays of all vehicles, instead of a particular one, don't have to poll VBB's API brute-force: They're able to fetch the data efficiently from here.
Note: This feed is run by people not related to VBB, BVG and the government.
ETag
& Date
headers, allowing clients to cache responses properly.Note: This project is work-in-progress, the feed might go offline at any time! I'm happy to receive any kind of feedback via the berlin-gtfs-rt-server
GitHub Issues.
The URL of the GTFS-RT feed is https://v0.berlin-gtfs-rt.transport.rest/feed
.
As an example, let's use print-gtfs-rt-cli
, head
and jq
to inspect it:
curl 'https://v0.berlin-gtfs-rt.transport.rest/feed' -s | print-gtfs-rt --json | head -n 1 | jq
{
"id": "10989100",
"is_deleted": false,
"trip_update": null,
"vehicle": {
"trip": {
"trip_id": "143651102",
"route_id": "17453_700",
"direction_id": 0,
"start_time": "",
"start_date": "",
"schedule_relationship": 0
},
"vehicle": {
"id": "m41",
"label": "U Hermannplatz",
"license_plate": ""
},
"position": {
"latitude": 52.48768997192383,
"longitude": 13.42607307434082,
"bearing": 0,
"odometer": 0,
"speed": 0
},
"current_stop_sequence": 0,
"stop_id": "900000078105",
"current_status": 1,
"timestamp": 0,
"congestion_level": 0,
"occupancy_status": 0
},
"alert": null
}