Reference · built on requestCommons signalTransit, roads & mobility

TfL Unified API

Transport for London's REST API: line status, arrival predictions, road disruptions, journey planning, and cycle hire.

About

The Unified API is Transport for London's single REST interface for its open data: Tube, bus, DLR, London Overground, Elizabeth line, tram, river and cable car status and arrivals, Journey Planner results, the status of roads TfL manages, Santander Cycles docking points, car park and charge connector occupancy. Every method is a GET on api.tfl.gov.uk and the swagger file lists them all.

An operator polls the lines, stops and roads near your sites. When a line goes to Severe Delays or a road disruption opens on a delivery route, it proposes a coverage change or a resequenced route, and you approve it.

This is a reference listing. It documents what Fibric would read from TfL Unified API and what it could propose, based on the publisher's published interfaces. Fibric builds it under a managed deployment when you request it; selecting it here installs nothing.

Inputs

  • Line status by mode or line id: /Line/Mode/{modes}/Status, /Line/{ids}/Status, with severity codes from /Line/Meta/Severity
  • Line and stop disruptions: /Line/{ids}/Disruption, /StopPoint/{ids}/Disruption, /StopPoint/Mode/{modes}/Disruption
  • Arrival predictions: /StopPoint/{id}/Arrivals, /Line/{ids}/Arrivals/{stopPointId}, /Mode/{mode}/Arrivals, /Vehicle/{ids}/Arrivals
  • Arrival and departure boards for London Overground and the Elizabeth line: /StopPoint/{id}/ArrivalDepartures
  • Road status and disruptions on TfL-managed roads: /Road/{ids}/Status, /Road/{ids}/Disruption, /Road/all/Street/Disruption
  • Journey Planner searches: /Journey/JourneyResults/{from}/to/{to}; timetables: /Line/{id}/Timetable/{fromStopPointId}
  • Santander Cycles docking points and occupancy (/BikePoint, /Occupancy/BikePoints/{ids}); car park and charge connector occupancy (/Occupancy)

Proposed actions

Read-only. This feed informs operators; it changes nothing.

Proposed actions are target capabilities. Every action runs propose-first and needs a validated deployment and the appropriate permissions.

What you can build

  • Cover a shift when a Tube line stops

    Poll /Line/Mode/tube,dlr,overground/Status. When a line serving your staff shows Severe Delays or Part Suspended, the operator proposes an open-shift offer or a late-start note, with the line and severity attached.

    With Shift Coverage, No-Show Response

  • Resequence a delivery route around a closure

    Read /Road/{ids}/Disruption for the roads your vans use. When a new disruption opens, the operator proposes a new stop order for the affected route and shows you the disruption text.

    With Route Resequence, Field Dispatch

  • Line status in the morning brief

    Each morning the operator reads /Line/Mode/{modes}/Status for every mode and lists lines that are not Good Service, with the reason from the disruption record.

    With Morning Brief

Requirements

  • A TfL API portal account with a subscription to the 500 requests per minute product
  • Naptan stop ids and line ids for the services you watch, found through /StopPoint/Search and /Line/Mode/{modes}
  • The attribution 'Powered by TfL Open Data' wherever the data appears, per the transport data terms
  • At least one request a year; portal accounts idle for a year are disabled and deleted
Authentication
A free app_key from the TfL API portal, appended to each request as a query parameter; app_id is no longer required. Calls without a key are allowed at a lower rate.

Limits

  • Anonymous access is limited to 50 requests a minute; a key raises this to 500, and larger volumes need an email to TfL
  • The terms cap use at 500 API calls per minute per data feed
  • /Mode/ActiveServiceTypes currently supports tube only
  • Line status refreshes every 30 seconds; road disruptions every 5 minutes; Journey Planner timetables once a day, so plans lag live changes

Access and pricing

Reference listing. Public feed access is separate from Fibric integration. If you request this feed, your quote covers the build, usage, and support.

Request TfL Unified API ↗

Questions and answers

What can I call without a key?
Any endpoint, at up to 50 requests a minute per the portal. Registering and subscribing to the 500 requests per minute product raises the limit; for larger volumes TfL asks you to email them.
Which modes have arrival predictions?
The API lists valid modes at /Line/Meta/Modes. /StopPoint/{id}/Arrivals and /Mode/{mode}/Arrivals return predictions; /StopPoint/{id}/ArrivalDepartures adds departure boards for London Overground and the Elizabeth line. TfL's open-data page says live bus arrivals refresh every 30 seconds.
What licence covers the data?
The Open Government Licence version 2.0 with TfL-specific amendments: worldwide, royalty-free, perpetual, commercial use allowed. You must show 'Powered by TfL Open Data' and the Ordnance Survey and Geomni notices, and stay under 500 calls a minute per feed.
Ask about TfL Unified API

Ask about the capabilities and requirements in this listing.

For project-specific requirements, contact Fibric.