Skip to main content
drupalreleases
Release: Cms 2.2.3 — Update released for Drupal core (2.2.3)! Release: Easy Breadcrumb 2.0.11 — Minor update available for module easy_breadcrumb (2.0.11). Release: Bootstrap 8.x-3.42 — Minor update available for theme bootstrap (8.x-3.42). Release: Editoria11y Accessibility Checker 3.0.10 — Minor update available for module editoria11y (3.0.10). Release: Editoria11y Accessibility Checker 2.2.24 — Minor update available for module editoria11y (2.2.24). Release: Leaflet 10.4.13 — Minor update available for module leaflet (10.4.13). Release: Flag 5.1.1 — Minor update available for module flag (5.1.1). Release: Layout Paragraphs 3.0.0-beta5 — New beta version released for module layout_paragraphs (3.0.0-beta5). Module Revived: Bootstrap 8.x-3.41 — Theme bootstrap updated after 6 months of inactivity (8.x-3.41). Security Coverage: Component Library — Module component_library now has official Drupal security advisory coverage.

GTFS Realtime

10 sites Security covered Drupal 10–11

Part of the Gtfs ecosystem · 8 projects

View on drupal.org

This module ingests GTFS Realtime feeds for trip updates, vehicle positions, and service alerts, making the data available as JSON. It also provides REST endpoints to query predicted arrivals, vehicle locations, and active alerts.

Ingests GTFS Realtime feeds — trip updates, vehicle positions and service alerts — and serves them as JSON alongside the static schedule data from
GTFS Core.

Each feed is a configuration entity, so feeds deploy with your configuration instead of being clicked in by hand on every environment.

Features

  • Protobuf ingestion for all three GTFS-RT feed types, decoded and cached as JSON.
  • A refresh interval per feed, 60 seconds by default, run from cron.
  • An out-of-band refresh endpoint, so a display that asks for stale data can trigger its own update rather than waiting for the next cron run.
  • REST endpoints for predicted arrivals at a stop, vehicles on a route, and active alerts. Realtime responses are marked uncacheable by clients, so a CDN in front of the site cannot serve yesterday's predictions.
  • Hooks for feeds whose realtime identifiers differ from the static ones.

Requirements

GTFS Core 3.x. The lowa/gtfs-realtime-php library is installed by Composer.

Installation

composer require drupal/gtfs_rt

Configuration

Add feeds at Administration › GTFS › Realtime feeds (/admin/gtfs/rt/feeds). Each needs a type, the protobuf endpoint URL, and a refresh interval. For public kiosk use, grant the restful get gtfs_rt_* permissions to the anonymous role.

When realtime IDs do not match the schedule

Regional aggregators often key stops differently from the agency's own static feed — a prefixed stop code, a different agency namespace. Rather than rewriting imported data, implement the identifier hooks in your own agency module. The mapping then lives with the agency, and survives the next feed import.

Rest API

Browse the REST API in OpenAPI format here.

Maintainers

Maintained by tbcs and jpsalter, supported by FivePaths. These modules run public transit information systems in daily service. Issues and merge requests are welcome, and so are co-maintainers.

Depends on

Dependencies of the latest stable release

Required by

3 tracked projects depend on this one

Activity

Tracked releases
2
Tracked since
Aug 2026
Latest release
1 month ago
Releases (12 mo)
2 ▲ from 0
Maintenance
Active

Releases

Version Type Core Release date
2.0.x-dev Dev 10–11 Aug 19, 2026
2.0.0 Stable 10–11 Aug 19, 2026