Transitland v2 REST API

Available on the following API tiers:

Transitland v2 Free Tier
Transitland v2 Pro Tier

The Transitland REST API provides a simple, easy to use interface for basic queries about feeds, feed versions, stops, routes, trips, schedules, and other basic transit information. These APIs also provide direct access to GTFS files and can even dynamically generate static map images.

Transitland v2 REST API Endpoints

The Transitland REST API uses the following endpoint:

https://transit.land/api/v2/rest

Configuring access

You will need to send your API key as part of the request to this endpoint. It can be specified through either the apikey query parameter or apikey header value.

Don't have a Transitland v2 API key? Follow these instructions.

Access considerations

Transitland REST API requests provide the latest information available, and complement bulk data products such as Transitland Vector Tiles. Free Tier plans have a relatively low rate limit to help be mindful of resources, with higher rates and quotas available on the Pro Tier plans. Users with more complex query needs or performance requirements may want to invesgigate the GraphQL API. Migrating existing tooling from the REST to GraphQL API is very straightforward - in fact, all REST requests are internally handled by the GraphQL API.

Feeds, operators, routes, and stops may generally be accessed using either their stable, public OnestopID values, as well as by internal ID values. As with the vector tiles, these internal IDs are ephemral and should only be used for short-lived purposes such as pagination and follow-up requests.

Response formats

All REST API endpoints default to JSON format responses. Endpoints that return entities that include geographical information may also accept geojson format for a GeoJSON formatted response, and png format which generates a simple static map image in PNG format.

Pagination

Metadata for accessing the next page can be found in the meta property in the response. It includes a generated link, as well as the after value as an integer if you prefer to construct the link yourself.