Skip to main content

api wrapper for Dutch Railways (NS)

Project description

Query the Dutch railways about your routes, getting info on delays and more. See below for the syntax and example output.

PyPI version PyPI downloads PyPI license Code Health


From PyPI

Assuming you already are inside a virtualenv:

pip install nsapi

From Git

Create a new virtualenv (if you are not already in one) and install the necessary packages:

git clone
cd ns-api
mkvirtualenv ns-api
pip install -r requirements.txt

As part of ns-notifications

Alternatively, follow the installation instructions of ns-notifications, which makes extensive use of this library to serve notifications to for example a smartphone. The requirements of both packages can be installed in the same ns-notifications one mentioned in the project; ns-api will be installed through pip from PyPI.

Also take a look at nsmaps

Bart Römgens created a fascinating contour map called nsmaps based on ns-api. It visualises Dutch railways travel information with OpenLayer 3 contour maps to show how long it takes to get somewhere in the Netherlands by train and bicycle.

Example application

For example, I use the library to push notifications about my route to my phone through Pushbullet. The program I use to do this has its own repository: ns-notifications.

NS API key

To actually be able to query the Nederlandse Spoorwegen API, you need to request a key. Provide a good reason and you will likely get it mailed to you (it might take some days).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for nsapi, version 3.0.0
Filename, size File type Python version Upload date Hashes
Filename, size (14.5 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page