insa-hafas
A client for the public transport authority Nahverkehr Sachsen-Anhalt (NASA)/INSA. It acts as a consistent and straightforward interface on top of a verbose API.
This project is actually a thin wrapper around hafas-client@5
. Its docs document the API in general.
Installing
npm install insa-hafas
API
Check the docs for hafas-client@5
as well as its INSA-specific customisations.
Usage
const hafas =
As an example, we will search for a route from Berlin Jungfernheide to München Hbf. To get the station IDs, use locations(query, [opt])
.
client
The output will be an array of journey
objects in the Friendly Public Transport Format 1.2.1
format:
type: 'journey' legs: mode: 'walking' public: true origin: type: 'station' id: '8010226' name: 'Magdeburg-Neustadt' location: type: 'location' latitude: 52148842 longitude: 11641705 products: nationalExp: true national: true regional: true suburban: true bus: true tram: true tourismTrain: true departure: '2018-03-14T03:01:00.000+01:00' plannedDeparture: '2018-03-14T03:01:00.000+01:00' departureDelay: null destination: type: 'station' id: '7368' name: 'Magdeburg, S-Bahnhof Neustadt (Tram)' location: /* … */ products: /* … */ arrival: '2018-03-14T03:06:00.000+01:00' plannedArrival: '2018-03-14T03:06:00.000+01:00' arrivalDelay: null tripId: '1|86821|1|80|14032018' direction: 'Alter Markt' line: type: 'line' id: 'n8' name: 'N8' public: true product: 'tram' mode: 'train' operator: type: 'operator' id: 'magdeburger-verkehrsbetriebe' name: 'Magdeburger Verkehrsbetriebe' origin: type: 'station' id: '7368' name: 'Magdeburg, S-Bahnhof Neustadt (Tram)' location: /* … */ products: /* … */ departure: '2018-03-14T03:06:00.000+01:00' plannedDeparture: '2018-03-14T03:05:00.000+01:00' departureDelay: 60 departurePlatform: null plannedDeparturePlatform: null destination: type: 'station' id: '7333' name: 'Magdeburg, Alter Markt' location: /* … */ products: /* … */ arrival: '2018-03-14T03:12:00.000+01:00' plannedArrival: '2018-03-14T03:12:00.000+01:00' arrivalDelay: 0 arrivalPlatform: '2a' plannedArrivalPlatform: '1' alternatives: line: type: 'line' id: 'str-n8' name: 'Str N8' public: true product: 'tram' mode: 'train' when: '2018-03-14T04:06:00.000+01:00' /* … */
Related
Check hafas-client
's related libs.
Contributing
If you have a question, found a bug or want to propose a feature, have a look at the issues page.