This is an API that allows read-only access to information from TransPerth such as the scheduled arrival time of trains, buses and ferries at stopping points as well as SmartRider data.
Documentation for this project can be found at maxrumsey.xyz.
These examples fetch data from a SmartRider as well as the expected arrival time of a bus.
const transperth = require('transperthapi');
const Client = new transperth();
Client.smartRiderInfo('SR 1234 5678 9') // Example SmartRider Number
.then(data => {
if (data.error) throw new Error(data.error);
console.log(data);
// {
// balance: '$XX.XX',
// conc_type: '' || 'Concession Description',
// conc_expirt: 'XX/XX/XX',
// autolad: 'True | False'
// meta: { endpoint: 'http://...' }
// }
})
.catch(e => {
throw e;
})const transperth = require('transperthapi');
const Client = new transperth();
Client.busTimes('XXXXX') // Example Bus Stop Number
.then(data => {
if (data.error) throw new Error(data.error);
console.log(data);
/*
{ buses:
[ { route: '000', time: 'XX:XX', destination: 'To XXX' },
{...}],
meta:
{ endpoint: 'http://...' } }
*/
})
.catch(e => {
throw e;
})