The National Public Transport Access Node (NaPTAN) database is a UK nationwide system for uniquely identifying all the points of access to public transport in the UK. The database is closely associated with the National Public Transport Gazetteer.

Every UK railway station, coach terminus, airport, ferry terminal, bus stop, taxi rank or other place where public transport can be joined or left is allocated a unique NaPTAN identifier. The relationship of the stop to a City, Town, Village or other locality can be indicated through an association with elements of the National Public Transport Gazetteer.

This endpoint exposes just the rail specific data allowing lookups based on 3Alpha/CRS, ATCO or Tiplocs

Please make certain you have read the Conditions of use before using this API.

Performing queries

You can perform queries based on atco, 3alpha/crs or tiploc using the following endpoints:

atco
http://api.area51.onl/rail/1/ref/naptan/atco/:atco
3alpha/crs
http://api.area51.onl/rail/1/ref/naptan/crs/:crs
tiploc
http://api.area51.onl/rail/1/ref/naptan/tiploc/:tiploc

All of the endpoints return a JSON array of objects, each object representing one row in the NapTAN rail table.

atcocode
Unique UK Identifier for this location
tiploc
Timing Point Location
stationname
Station name
stationnamelang
Station name language
gridtype
easting
OSGB X Coordinate
northing
OSGB Y Coordinate
creationdt
When this entry was created
modificationdt
When this entry was modified
revisionnumber
Revision number of this entry
modification

For example to return the entry for MDE:

$ curl -s http://api.area51.onl/rail/1/ref/naptan/crs/MDE | jq '.'
[
  {
    "atcocode": "9100MSTONEE",
    "tiploccode": "MSTONEE",
    "crscode": "MDE",
    "stationname": "Maidstone East Rail Station",
    "stationnamelang": "",
    "gridtype": "U",
    "easting": 575949,
    "northing": 156206,
    "creationdt": "2005-04-21T00:00:00.000Z",
    "modificationdt": "2006-11-24T15:29:01.000Z",
    "revisionnumber": 2,
    "modification": "rev"
  }
]