TripGo API

The TripGo API allows you to plan door-to-door trips using a large variety of public and private transport. It integrates real-time information and, for selected providers, allows users to book and pay for transport.


Getting started

1. Getting an API key

Get an API key. For details about pricing and on limits of the free tier, see the SkedGo website.

Once you have an API key, make sure to send it along with every request as the X-TripGo-Key header.

2. Getting the base URL

Unfortunately we don't yet have a unified URL for all areas, as failover is expected to be done client-side. You can get a list of regions and URLs with something like:

curl 'https://tripgo.skedgo.com/satapp/regions.json' -H 'Accept: application/json' --compressed -H "X-TripGo-Key: $tripgoKey" -d '{"v":2}'

Keep in mind that this API is powered by multiple servers, not all of which cover every region. You have to use the correct host names for the region that you query. You get those host names by first querying regions.json and looking up the urls for that region. You should only cache this information short term as those URLs can change without notice.

3. Make a request

Our API can do a lot more than just directions, but if that is what you are interested in, then try something like:

curl 'https://granduni-au-nsw-sydney-tripgo.skedgo.com/satapp/routing.json?from=(-33.8593716,151.20766249999997)&to=(-33.86390160000001,151.20846840000002)&departAfter=1532799914&modes[]=wa_wal&v=11&locale=en' -H 'Accept: application/json' --compressed -H "X-TripGo-Key: $tripgoKey" -g

or

curl 'https://granduni-au-nsw-sydney-tripgo.skedgo.com/satapp/routing.json?from=(-33.8593716,151.20766249999997)&to=(-33.890940,151.209470)&modes[]=pt_pub&v=11&locale=en' -H 'Accept: application/json' --compressed -H "X-TripGo-Key: $tripgoKey" -g

Keep in mind that this API is optimised to return a large number of trip results while maintaining small response sizes. This has a number of complications. Notably, to get a trip's segments you need to combine the segment references with the segment templates.

Before you dive in

Check FastGo, our blog post and sample app showing one way of using the API.

If you know how to debug a web app, look at the network activity for our web app to get an idea of which API calls to use when. (Filter for "satapp".)

API specs

The specifications are available in OpenAPI (formerly Swagger) format. Pick your favorite UI to browse the specs:


Advanced

Once you dig into the API, you'll likely soon want to know more about some of its details.

General:

Routing:

Locations:


Deep Linking

For a light-weight alternative to using our API, you can also deep-link into the TripGo app.

Routing results

$schema://$host/go?$parameters

Opens the routing results for the specified destination, and optionally the start and time:

Examples:

Destination information

$schema://$host/meet?$parameters

Opens the search screen with the destination and arrival time filled in.

Examples:

Timetable

$schema://$host/stop/$region/$stopCode

Opens the departures timetable for a given stop. $region and $stop use region codes and stop codes as defined in our API.

Examples:


Transport Provider Integration

For integrating new transport services into the TripGo app, as well as the TripGo API, please have a look at our Transport Providers website and get in touch with our team.