openapi: 3.2.0 info: title: Transit Locations Service Alerts API description: The Transit API delivers real-time public transit data - nearby routes and stops, stop departures, route details, multimodal trip planning, and service alerts - across 1,100+ cities in 37 countries, plus shared-mobility availability for bikes, scooters, and carshare. version: '3.0' contact: name: Transit Partnerships url: https://transitapp.com/partners/apis email: partners@transit.app x-logo: url: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg servers: - url: https://external.transitapp.com/v3 description: Transit public API v3 security: - apiKeyAuth: [] tags: - name: Service Alerts description: Service alerts and disruptions for routes, stops, and networks. paths: /public/service_alerts: get: operationId: getServiceAlerts tags: - Service Alerts summary: Get service alerts description: Returns service alerts and disruptions - delays, detours, elevator outages, and cancellations - scoped to a route, stop, or network, following the GTFS-realtime service-alert model. x-modeled: true parameters: - name: global_route_id in: query required: false description: Filter alerts affecting a specific route. schema: type: string - name: global_stop_id in: query required: false description: Filter alerts affecting a specific stop. schema: type: string - name: network_id in: query required: false description: Filter alerts affecting a specific transit network/agency. schema: type: string - name: Accept-Language in: header required: false description: Preferred response language (BCP 47). schema: type: string example: en responses: '200': description: Matching service alerts. content: application/json: schema: type: object properties: alerts: type: array items: $ref: '#/components/schemas/ServiceAlert' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/RateLimited' components: schemas: ServiceAlert: type: object properties: alert_id: type: string example: stm-2026-0701-747 cause: type: string description: GTFS-realtime alert cause. example: CONSTRUCTION effect: type: string description: GTFS-realtime alert effect. example: DETOUR header_text: type: string example: Route 747 detour description_text: type: string example: The 747 is detoured due to construction on René-Lévesque. severity: type: string example: WARNING active_period_start: type: integer description: Unix epoch seconds the alert becomes active. active_period_end: type: integer description: Unix epoch seconds the alert ends. affected_global_route_ids: type: array items: type: string Error: type: object properties: status: type: integer example: 401 message: type: string example: Invalid API key. responses: RateLimited: description: Rate limit exceeded (free tier is 5 requests/minute, 1,500/month). content: application/json: schema: $ref: '#/components/schemas/Error' Unauthorized: description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: apiKeyAuth: type: apiKey in: header name: apiKey description: Transit access key requested via Transit's API request form. Sent as the `apiKey` request header on every call.