GET
/api/v1/stopsHaltestellen
Haltestellen und Bedienzonen der aktiven Fahrpläne, inklusive DHID zur Zuordnung zum deutschlandweiten Haltestellenkatalog.
Wofür
Die Referenzliste für alle Ortsangaben: boardingStopId/alightingStopId einer Buchung und stopId einer Halte-Zeit verweisen hierher. Einmal vollständig laden und im eigenen System vorhalten.
Anfrage
Erfordert das Recht
read:schedule.curl -sS \
-H "Authorization: Bearer rb_live_…" \
"https://rufbusle.de/api/v1/stops"Query-Parameter
limit- Seitengröße, 1–200. Ohne Angabe 50.
cursor- Wert aus
nextCursorder vorigen Seite.
Antwort
Seitenweise:
data mit den Einträgen, nextCursor für die Folgeseite.{
"data": [
{
"id": "stp_7Kq2vX",
"name": "Rathaus",
"code": "12",
"dhid": "de:08115:4711:1:2",
"lat": 48.6884,
"lon": 9.0121,
"isFlexZone": false
}
],
"nextCursor": "bkg_5Rt8wY"
}Beispielwerte, keine echten Daten. Unbekannte Felder bitte ignorieren — es können jederzeit welche hinzukommen.
Felder je Eintrag (Stop)
Die Hülle mit data und nextCursor ist bei allen Listen gleich; hier stehen die Felder eines einzelnen Eintrags.
| Feld | Typ | Beschreibung |
|---|---|---|
id | string | Referenz für boardingStopId, alightingStopId und stopId. |
name | string | Name des Halts oder der Bedienzone. |
code | string | null | Aushang-/Mastnummer, falls gepflegt. |
dhid | string | null | Deutschlandweite Haltestellen-ID (zHV/DELFI). |
lat | number | null | Breitengrad (WGS 84). |
lon | number | null | Längengrad (WGS 84). |
isFlexZone | boolean | Bedienzone statt physischem Halt — die Koordinate ist nur ein Anker. |
Worauf zu achten ist
Die Punkte, an denen Integrationen erfahrungsgemäß hängen bleiben.
- Bedienzonen (
isFlexZone: true) sind keine physischen Haltestellen, sondern Gebiete. Ein Fahrgast wird darin an einer frei vereinbarten Adresse aufgenommen — die Koordinate ist nur ein Anker. - Die
dhidist der Anschluss an den bundesweiten Haltestellenkatalog (zHV/DELFI). Wo sie gepflegt ist, ist sie der bessere Schlüssel für den Abgleich mit Fremdsystemen als unsereid.