openapi: 3.1.0 info: title: CTA Bus Tracker Arrivals Routes API description: The Chicago Transit Authority Bus Tracker API provides real-time bus arrival predictions, vehicle locations, route patterns, route lists, and stop directories for the CTA bus network. Access requires an API key issued by the CTA Developer Center. version: 2.0.0 contact: name: CTA Developer Center url: https://www.transitchicago.com/developers/ license: name: CTA Developer License Agreement url: https://www.transitchicago.com/developers/terms/ servers: - url: http://www.ctabustracker.com/bustime/api/v2 description: CTA Bus Tracker v2 production security: - apiKey: [] tags: - name: Routes paths: /getroutes: get: operationId: getRoutes summary: Get Routes description: Returns the set of CTA bus routes available in Bus Tracker. tags: - Routes parameters: - $ref: '#/components/parameters/key' - $ref: '#/components/parameters/format' responses: '200': description: Route list content: application/json: schema: $ref: '#/components/schemas/RoutesResponse' /getdirections: get: operationId: getDirections summary: Get Directions description: Returns the set of valid directions for a given route. tags: - Routes parameters: - $ref: '#/components/parameters/key' - name: rt in: query required: true schema: type: string - $ref: '#/components/parameters/format' responses: '200': description: Directions for route /getpatterns: get: operationId: getPatterns summary: Get Patterns description: Returns route pattern geometry. tags: - Routes parameters: - $ref: '#/components/parameters/key' - name: rt in: query required: true schema: type: string - $ref: '#/components/parameters/format' responses: '200': description: Pattern list components: parameters: format: name: format in: query description: Response format (xml or json). Defaults to XML. schema: type: string enum: - xml - json key: name: key in: query required: true description: CTA Bus Tracker API key. schema: type: string schemas: RoutesResponse: type: object properties: bustime-response: type: object properties: routes: type: array items: $ref: '#/components/schemas/Route' Route: type: object properties: rt: type: string rtnm: type: string rtclr: type: string rtdd: type: string securitySchemes: apiKey: type: apiKey in: query name: key