Open Journey Planner

Entdecken Sie den OJP – Ihre zentrale Anlaufstelle für multimodale Reiseplanung!

Der Open Journey Planner (OJP) bietet Ihnen eine diskriminierungsfreie Fahrplanauskunft und multimodale Reiseplanung für die gesamte Schweiz. Egal, ob Sie öffentliche Verkehrsmittel, Carsharing, E-Scooter oder On-Demand-Services nutzen möchten – mit dem OJP haben Sie alles in einer App!

Was ist der Kern des OJP?

Der OJP ist eine standardisierte, XML-basierte Schnittstelle mit Request-/Response-Verhalten, die zahlreiche vorgelagerte Datenquellen integriert und konsolidiert. So stellen wir umfassende Mobilitäts-Services bereit, während Endkundendaten und der direkte Kontakt beim Anbieter bleiben.

Für wen ist der OJP?

Die OJP-Services eignen sich ideal für Endkunden-Apps und sind sowohl für Transportunternehmen als auch Entwickler:innen spannend. Damit lassen sich etwa Abfahrtsanzeigen für jede Haltestelle in der Schweiz erstellen — zudem eröffnen die Services vielfältige Möglichkeiten für weitere Mobilitätsprojekte.

Vorteile des OJP:

Betrieb und Weiterentwicklung des OJP werden vom BAV finanziert. Nutzen Sie eine offene, standardisierte Schnittstelle zu moderaten Konditionen — für Lightweight-User sogar kostenfrei. Wir übernehmen die Datenintegration und liefern konsolidierte Mobilitätsdaten über die OJP-API.

Wird bereits verwendet von

Vernetzte Mobilität

Unsere aktuelle Datenbasis

Informationen zur Barrierefreiheit

Sharing-Angebote (Bikesharing, E-Scooter, Carsharing)

Ladestationen für Elektroautos

OpenStreetMap (OSM) als Basis für das Routing des Individualverkehrs

Höhendaten für genauere Fusswegberechnungen

Eine Vielzahl von Points of Interest (POI)

Fahrplandaten des öV mit Echtzeitinformationen + Ereignismeldungen


Service-Level Agreement (SLA)

Wir bieten ein Service-Level 2a, 7x24h an. Unsere Systemverfügbarkeit liegt bei 99,2%, um einen sicheren und leistungsstarken Betrieb zu gewährleisten .

Limiten und Kosten

Die Nutzung des OJPs ist bis zu einem bestimmten Volumen kostenfrei. Bei mehr als 50 Anfragen pro Minute oder 20’000 Anfragen pro Tag fallen minimale Gebühren an.


Unsere Services im Überblick

Der OJP-Standard definiert verschiedene Schnittstellen-Endpunkte (im Folgenden nur als “Services” bezeichnet) an. In der Version 1.0 sind das 7 “Kern-Services” und in der Version 2.0 sind es 9 “Kern-Services”. Diese Services werden durch das OJP-System bedient.

Das OJP-System unterstützt alle 7 der Version 1.0 der Services die abgerufen und verknüpft werden (LinkedServices, beschreiben wir im technischen Abschnitt weiter unten) können.

Zusätzlich zu den 7 bzw. 9 Grundservices gibt es die Möglichkeit den Zustand des OJP (Version/DateFormat/usw.) abzufragen. Mehr Details zu diesem Service unter folgendem Link: OJP Sysrequest

Location Information Request (LIR):

Deine Situation: Du möchtest deinen Gästen die Haltestellen und Points-of-Interest in deiner Nähe anzeigen?

Was der Service tut: Dieser Service ermittelt die nächstgelegenen Orte.
Was der Service braucht: Bei der Eingabe einer Koordinate oder einer Adresse bestimmt das OJP-System mit einer Umkreissuche die passenden Orte.
Was der Service gibt: Die Haltestellen und Points-of-Interest in der Nähe des angegebenen Orts.
Mehr Details zu diesem Service unter folgendem Link: OJPLocationInformationRequest v1.0 oder OJPLocationInformationRequest v2.0

Trip Request (TR):

Deine Situation: Du möchtest mit deiner Familie eine Route mit verschiedenen Transportmitteln berechnen?

Was der Service tut: Bei diesem Service führt das bedienende System (bei uns das OJP-System) ein Routing durch.
Was es der Service braucht: Bei der Eingabe eines Start- und eines Zielpunktes (jeweils Koordinate, Adresse, POI oder Haltestelle) berechnet das OJP-System Verbindungen vom Start- zum Zielpunkt. Verschiedene Modi können mit ModesToCover zusätzlich angefragt werden. Derzeit stehen folgende Modi zur Verfügung: öffentlicher Verkehr; Fussweg; Fahrrad; selbst gefahrenes Auto; Sharing-Angebote (Fahrrad, e-Scooter, Carsharing).
Was der zurück Service gibt: Das Routing beinhaltet sowohl ein öV-Routing (unter Berücksichtigung der aktuellen Fahrzeiten und Störungen), als auch ein kartenbasiertes Individual Verkehr-Routing (bspw. mit dem eigenen Auto) auf Basis von OpenStreetMap (OSM). Auf Wunsch können Sie mit dem Ausgabeparameter Link-Projection die effektiven geografischen Wege anfragen, und für Fusswege ist meist auch eine TurnDescription verfügbar (verbal beschriebene Navigation).
Mehr Details zu diesem Service unter folgendem Link: OJPTripRequest v1.0 oder OJPTripRequest v2.0

Stop Event Request (SER):

Deine Situation: Du willst einen Abfahrtsmonitor für die Haltestelle vor deinem Laden?

Was der Service tut: Der Service bestimmt die Abfahrts- und Ankunftszeiten einer Haltestelle.
Was der Service braucht: Bei der Eingabe muss eine spezifische Haltestelle angegeben werden.
Was der Service gibt: Die nächsten Abfahrten / Ankünfte einer bestimmten Haltestelle.
Mehr Details zu diesem Service unter folgendem Link: OJPStopEventRequest v1.0 oder OJPStopEventRequest v2.0

Trip Info Request (TIR):

Deine Situation: Du brauchst alle Haltepunkte entlang der zuvor berechneten Reise?

Was der Service tut: Dieser Service ermittelt weitere Details zu einer bereits berechneten “Journey” (Fahrt) abzufragen (s. TripRequest).
Was der Service braucht: Die zuvor ermittelte Journey muss mitgegeben werden.
Was der Service gibt: Details zu einer bereits berechneten “Journey” (Fahrt).
Mehr Details zu diesem Service unter folgendem Link: OJPTripInfoRequest v1.0 oder OJPTripInfoRequest v2.0

Fare Request:

Deine Situation: Du möchtest wissen wieviel die von dir angefragt Fahrt voraussichtlich kostet?

Was der Service tut: Bestimmt mithilfe der öV Kostenberechnungsinfrastruktur der Schweiz die voraussichtlichen Kosten einer übergebenen Fahrt.
Was der Service braucht: Die zuvor ermittelte “Journey” (Fahrt) muss mitgegeben werden.
Was der Service gibt: Der Preisberechnung von Trips, inklusive Discountfahrten und Berücksichtigung von Halbtax (“HTA”). Es sind nur Preisabfragen in der Schweiz möglich. WICHTIG: Die Preisauskunft ist nicht verbindlich. Der effektive Preis wird erst bei der Bestellung definiert. Die Anzahl Anfragen ist ebenfalls limitiert.
Mehr Details zu diesem Service unter folgendem Link: Beta: OJP Fares

Neuer Trip Change Request (TCR) – nur OJP 2.0

Deine Situation: Du musst deinen geplanten Zwischenhalt in Olten verlängern?

Was der Service tut: Erlaubt es die Verweildauer an einem Zwischenhalt entlang eines Trips zu verlängern und entweder den Abschnitt davor oder danach zu erhalten. Die jeweils anderen Teile könnten somit neu berechnet werden.
Was der Service braucht: Einen bestehenden Leg sowie die gewünschten Anpassungen an diesem.
Was der Service gibt: Einen den wünschen entsprechend veränderten Trip.
Bisher keine weiteren Details zu diesem Service.

Neuer Trip Refine Request (TRR) – nur OJP 2.0:

Deine Situation: Du hast vor einigen Tagen eine Route berechnen lassen. Nun ist der Reisetag gekommen und du möchtest aktuelle Informationen abrufen?

Was der Service tut: Einen bereits berechneten Trip zu aktualisieren. Wichtig ist hierbei, dass die Anfrage keine Neuberechnung ist!
Was der Service braucht: Einen bestehenden Trip mit Kontext und Parametern. Dabei können die Parameter im Sinne eines Filters wirken, bspw. dass nur die Teilergebnisse geliefert werden die keine Stufen enthalten.
Was der Service gibt: Der Service aktualisiert den Trip mit den gewünschten Ergänzungen, falls vorhanden. Wichtig:
Es kann sein dass der Service mehrere Trips liefert und nicht (nur) den angefragten.
Es kann passieren, dass der vorherige Trip bei dieser Anfrage “kaputt geht”. Dann muss der Trip neu berechnet werden.
Die Antwort des TripRefineRequest ist also immer zu überprüfen!
Mehr Details zu diesem Service unter folgendem Link: OJPTripRefineRequest

Exchange Point Request:

Deine Situation: Du möchtest eine Reise nach Österreich planen und geeignete Umstiegspunkte finden?

Was der Service tut: Liefert eine Liste von Halten die als Übergangspunkte zwischen zwei Regionen genutzt werden können. Die Abfrage ist Teil der verteilten Routen-Berechnung des OJP-Standards. Regionen sind solche die von anderen, verteilten Systemen bedient werden.
Was der Service braucht: Ein spezifischer Ort für den Übergangshalten zu benachbarten Systemen gesucht werden sollen, sowie entsprechende Parameter, bspw. über den Art der Ortes (POI, Halte, usw.).
Was der Service gibt: Entweder die Übergangshalten für den angefragten Ort, oder alle Übergangshalten, die für die Routenberechnung genutzt werden kann.
Bitte bei uns melden, für die Verwendung von diesen Service.

Multi Point Trip Request:

Deine Situation: Du möchtest eine Route berechnen von Bern zu Deiner Tante in Zürich reisen und vorher noch einen Zwischenhalt in Olten einlegen?

Was der Service tut: Bei diesem Service führt das bedienende System (bei uns das OJP-System) ein Routing durch, genauso wie der TripRequest.
Was der Service braucht: Zusätzlich zum Start- und eines Zielpunkt (jeweils Koordinate, Adresse, POI oder Haltestelle) (wie beim TripRequest) braucht man Zwischenpunkten die explizit ein- oder ausgeschlossen werden müssen.
Was der Service gibt: Das gleiche wie im TripRequest und Das Routing beinhaltet sowohl ein öV-Routing (unter Berücksichtigung der aktuellen Fahrzeiten und Störungen), als auch ein kartenbasiertes Individual Verkehr-Routing (bspw. mit dem eigenen Auto) auf Basis von OpenStreetMap (OSM). Auf Wunsch können Sie mit dem Ausgabeparameter Link-Projection die effektiven geografischen Wege anfragen, und für Fusswege ist meist auch eine TurnDescription verfügbar (verbal beschriebene Navigation).
Bitte bei uns melden, für die Verwendung von diesen Service.

Datenaktualität

Aktuelle Daten sind essenziell für den Open Journey Planner (OJP). Durch regelmässige Updates unserer Fahrplandaten und Echtzeitinformationen stellen wir sicher, dass Reisende stets präzise Informationen zu Abfahrten, Ankünften und Störungen erhalten, um ihre Reise optimal planen zu können.

Begriffserklärungen

BegriffBeschreibung
StopPointEin StopPoint ist ein Halt entlang eines Fahrplans. Es kann sich um eine Haltestelle, ein Gleis, ein Sektor, eine Haltekante oder auch um ein dynamisches Element handeln. Der StopPoint wird über ein StopAssignment dem StopPlace zugewiesen.
StopPlaceDer StopPlace ist die physische Repräsentation einer Haltestelle. Ein StopPlace kann in seiner Grösse variieren. Sehr grosse Haltestellen wie der Bahnhof Bern oder der Bahnhof Zürich bestehen aus mehreren StopPlaces.
Journey, die “Fahrt”Eine Fahrt ist die Beförderung von Kunden auf einem bestimmten Weg, einer bestimmten Fahrplan-Verbindung, mit einem bestimmten Verkehrsmittel-Fahrt, zu einer bestimmten Zeit, in eine bestimmte Richtung. Es gibt verschiedene Journey-Typen, z.B.: DatedJourney für eine Fahrt eines Verkehrsmittels an einem bestimmten Tag.
Trip, die “Reise”Eine “Reise” und somit eine unspezifische Form der konkreteren Fahrt. Ein Trip besteht aus Legs (s.u.).
Leg, der “Reiseabschnitt”Ein Abschnitt eines Trips. Es gibt die folgenden Legtypen:
ContinuousLeg: Ein Leg, das nicht an einen Fahrplan gebunden ist.
TimedLeg: Leg gemäss einem Fahrplan.
TransferLeg: Ein Leg, für einen Ort, an dem ein Umsteigen erfolgt.
DirectionAlle Linien und Fahrten haben eine Richtung. Diese hilft primär den Transportunternehmen in ihrer Planung und allenfalls zur Anzeige einer “End/Zielstation”. Dies ist demnach ein “künstliches Attribut” und die Bedeutung der Richtung lässt sich nicht ableiten.
FacilityEine Facility ist ein Element, das an einem “Ort” (z.B. Haltestelle) oder auf einem “Service” (z.B. Fahrzeug) verfügbar ist. Ein Beispiel ist die Toilette am Bahnhof oder der Speisewagen. Aktuell werden sie aus den Angeboten in HRDF übernommen (siehe Verkehrshinweise). Das Mapping erfolgt gemäss Notes2FacilitiesMappingFile.
ModeModes sind mögliche Verkehrsmittel. Zulässige Modes sind:
ContinuousMode: Mode, der nicht von einem Fahrplan abhängt.
IndividualModes: Individualverkehr.
PtMode: PtMode ist ein Mode im Public Transport.
TransferModes: Mode im Zusammenhang mit Umsteigen
XXXRef: Bei diesen Elementen handelt es sich um Referenzen. Im Endeffekt werden es generische schweizweite ID sein. Diese sind jedoch noch im Aufbau. Es wird hier als eine Evolution geben.

Weiterführende Links

Open Journey Planner Cookbook

Unser Cookbook bietet eine umfassende Sammlung an Ressourcen und Best Practices zur Implementierung des Open Journey Planners (OJP)

Roadmap der Weiterentwicklung

Das GitHub-Repository dient als Roadmap für die Weiterentwicklung des OJPs. Es bietet Zugang zu Quellcode, aktuellen Fortschritten und geplanten Funktionen.

Zugriff auf APIs

Eine Beschreibung wie man auf die APIs zugreifen kann findet sicher hier

Uicons von Flaticon