npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

transport_for_nsw_api

v10.2.1

Published

API_to_interact_with_the_Transport_for_NSW_trip_planner__This_allows_users_to_search_for_trips_stops_service_alerts_places_of_interest_1__Stop_Finder_API_Provides_capability_to_return_all_NSW_public_transport_stop_station_wharf_points_of_interest_and_know

Readme

transport_for_nsw_api

TransportForNswApi - JavaScript client for transport_for_nsw_api API to interact with the Transport for NSW trip planner. This allows users to search for trips, stops, service alerts, places of interest. 1. Stop Finder API: Provides capability to return all NSW public transport stop, station, wharf, points of interest and known addresses to be used for auto-suggest/auto-complete (to be used with the Trip planner and Departure board APIs). 2. Trip Planner API: Provides capability to provide NSW public transport trip plan options, including walking and driving legs, real-time and Opal fare information. 3. Departure API: Provides capability to provide NSW public transport departure information from a stop, station or wharf including real-time. 4. Service Alert API: Provides capability to display all public transport service status and incident information (as published from the Incident Capture System). 5. Coordinate Request API: When given a specific geographical location, this API finds public transport stops, stations, wharfs and points of interest around that location. This SDK is automatically generated by the Swagger Codegen project:

  • API version: 10.2.1.42
  • Package version: 10.2.1.42
  • Build package: io.swagger.codegen.languages.JavascriptClientCodegen

Installation

For Node.js

npm

To publish the library as a npm, please follow the procedure in "Publishing npm packages".

Then install it via:

npm install transport_for_nsw_api --save
Local development

To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json (and this README). Let's call this JAVASCRIPT_CLIENT_DIR. Then run:

npm install

Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR:

npm link

Finally, switch to the directory you want to use your transport_for_nsw_api from, and run:

npm link /path/to/<JAVASCRIPT_CLIENT_DIR>

You should now be able to require('transport_for_nsw_api') in javascript files from the directory you ran the last command above from.

git

If the library is hosted at a git repository, e.g. https://github.com/YOUR_USERNAME/transport_for_nsw_api then install it via:

    npm install YOUR_USERNAME/transport_for_nsw_api --save

For browser

The library also works in the browser environment via npm and browserify. After following the above steps with Node.js and installing browserify with npm install -g browserify, perform the following (assuming main.js is your entry file, that's to say your javascript file where you actually use this library):

browserify main.js > bundle.js

Then include bundle.js in the HTML pages.

Webpack Configuration

Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:

module: {
  rules: [
    {
      parser: {
        amd: false
      }
    }
  ]
}

Getting Started

Please follow the installation instruction and execute the following JS code:

var TransportForNswApi = require('transport_for_nsw_api');

var defaultClient = TransportForNswApi.ApiClient.instance;

// Configure OAuth2 access token for authorization: tfnsw_auth
var tfnsw_auth = defaultClient.authentications['tfnsw_auth'];
tfnsw_auth.accessToken = "YOUR ACCESS TOKEN"

var api = new TransportForNswApi.DefaultApi()

var outputFormat = "outputFormat_example"; // {String} Used to set the response data type. This documentation only covers responses that use the JSON format. Setting the `outputFormat` value to `rapidJSON` is required to enable JSON output. 

var opts = { 
  'filterDateValid': "01-10-2016", // {String} This parameter allows you to filter the returned items that are only valid on the specified date. The format of this field is `DD-MM-YYYY`. For example, 12 September 2016 would be represented by `12-09-2016`. 
  'filterMOTType': 56, // {Number} This parameter allows you to filter the returned items by the modes of transport they affected. Available modes include:  * `1`: Train * `4`: Light Rail * `5`: Bus * `7`: Coach * `9`: Ferry * `11`: School Bus  To search for more than one mode, include the parameter multiple times. 
  'filterPublicationStatus': "filterPublicationStatus_example", // {String} This field can be used so only current alerts are returned, and not historic alerts. 
  'itdLPxxSelStop': "itdLPxxSelStop_example", // {String} This parameter allows you to filter the returned items by its stop ID. For example, to retrieve items that are only relevant to Central Station, you would set this value to `10111010`. You can use the `stop_finder` API call to determine the ID for a particular stop. 
  'itdLPxxSelLine': "itdLPxxSelLine_example", // {String} This parameter allows you to filter the returned items by line number. For example, `020T1`. You can use this parameter multiple times if you want to search for more than one line number. 
  'itdLPxxSelOperator': "itdLPxxSelOperator_example", // {String} This parameter allows you to filter the returned items by operator ID. You can use this parameter multiple times if you want to search for more than one line number. 
  'filterPNLineDir': "filterPNLineDir_example", // {String} This parameter allows you to filter the returned items by specific routes. The route is provided in the format `NNN:LLLLL:D`, (NNN: subnet, LLLLL: Route number, D: direction `H`/`R`). You can use this parameter multiple times if you want to search for more than one line number. 
  'filterPNLineSub': "filterPNLineSub_example", // {String} This parameter allows you to filter the returned items by specific routes. The route is provided in the format `NNN:LLLLL:E`, (NNN: subnet, LLLLL: Route number, E: supplement). You can use this parameter multiple times if you want to search for more than one line number. 
  'version': "10.2.1.42" // {String} Indicates which version of the API the caller is expecting for both request and response data. Note that if this version differs from the version listed above then the returned data may not be as expected. 
};

var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully. Returned data: ' + data);
  }
};
api.tfnswAddinfoRequest(outputFormat, opts, callback);

Documentation for API Endpoints

All URIs are relative to https://api.transport.nsw.gov.au/v1/tp

Class | Method | HTTP request | Description ------------ | ------------- | ------------- | ------------- TransportForNswApi.DefaultApi | tfnswAddinfoRequest | GET /add_info | Provides capability to display all public transport service status and incident information (as published from the Incident Capture System). TransportForNswApi.DefaultApi | tfnswCoordRequest | GET /coord | When given a specific geographical location, this API finds public transport stops, stations, wharfs and points of interest around that location. TransportForNswApi.DefaultApi | tfnswDmRequest | GET /departure_mon | Provides capability to provide NSW public transport departure information from a stop, station or wharf including real-time. TransportForNswApi.DefaultApi | tfnswStopfinderRequest | GET /stop_finder | Provides capability to return all NSW public transport stop, station, wharf, points of interest and known addresses to be used for auto-suggest/auto-complete (to be used with the Trip planner and Departure board APIs). TransportForNswApi.DefaultApi | tfnswTripRequest2 | GET /trip | Provides capability to provide NSW public transport trip plan options, including walking and driving legs, real-time and Opal fare information.

Documentation for Models

Documentation for Authorization

tfnsw_auth

  • Type: OAuth
  • Flow: application
  • Authorization URL:
  • Scopes:
    • read: Grants read-access to the five API calls.