Developer Resources


The Champaign-Urbana Mass Transit District is committed to utilizing the most progressive technology. The openly-provided developer resources available here are simply a continuation of MTD's commitment to opportunity and innovation. Real-time bus departure data combined with geographic information substantially improves the rider experience. We believe that the talented, resourceful, and creative development community will find ways to use this data to create tools of real value in surprising and wonderful ways. Please carefully review the important definitions and Terms of Use. Most of all, do great work!


The General Transit Feed Specification (GTFS), developed by Google™, in conjunction with several other transit agencies, is an open format that defines schedule and geographic information for public transportation systems. The original intention was to create a format to power Google Mapsâ„¢ with transit data from any agency. However, it has been quickly adopted by a large number of other applications as well. Our feed is available for download on the right, and we've provided an RSS feed you can subscribe to or track with your application to ensure you have the latest data. This feed is only updated every few months so please make use of the RSS feed! The feed includes all of our stops, routes, trips, scheduled info, and geographic data for our system. For specific details on the feed, please refer to the GTFS documentation.


The intention of this API is to provide our data via an easily consumable service. We provide RESTful endpoints for either JSON or XML as well as a SOAP endpoint with a WSDL definition. The methods are geared towards retrieving small, specific collections of data regarding our services. Much of the data is identical to our GTFS feed, but it also includes some extra features like real-time departures and trip planning. If you are attempting to get large amounts of information, use our GTFS feed instead. For the details of what information is availble through the API, check out the methods on the right.

Getting Started

Request Limit

To ensure the availability of our information to all our customers, we've implemented a limit on the number of requests you can make to the API. To help us keep our services up and running, minimize the number of requests you make, always cache the data if you can. To facilitate caching, check out the changeset_id description under interpretting responses. The limit is currently 1,000 requests per hour, but if you feel your circumstances warrant a higher limit, contact us and we can discuss it. If your key reaches its limit, you'll receive an email (only once per day) indicating you've reached your limit.

Get an API Key

Auto Completing

We are providing the same autocompleting API that is used on our website for public consumption. This is not an official part of our API and we are providing it "as is" without warranty. It is designed to be fast and lightweight and as such we are not requiring the use of an API key. However, you must still comply with all applicable parts of the Terms of Use.