Skip to content

Providers Overview

The Public Transport Integration supports multiple transit providers across Europe. Each provider has its own API and data format, but the integration normalizes all data into a consistent format.

Provider Comparison

Feature VRR KVV HVV MVV VVS VGN VAG Freiburg BVG RMV VBN OTP VBN TRIAS VRN VVO DING AVV RVV BSVG NWL NVBW BEG SBB ÖBB Trafiklab NTA Transitous openpublictransport OTP2 Custom
Region NRW Karlsruhe Hamburg Munich Stuttgart Nuremberg Freiburg Berlin Frankfurt Bremen/Niedersachsen Bremen/Niedersachsen Rhein-Neckar Dresden Ulm Augsburg Regensburg Braunschweig Westfalen-Lippe Baden-Württemberg Bayern Switzerland Austria Sweden Ireland Worldwide Germany (all) Any OTP2
API Type EFA EFA EFA EFA EFA EFA EFA FPTF REST HAFAS REST OTP REST TRIAS XML EFA EFA EFA EFA EFA EFA EFA EFA EFA REST FPTF REST REST GTFS-RT MOTIS2 OTP2 GraphQL OTP2 GraphQL
API Key No No No No No No No No Yes (free) Yes (free) Yes (free) No No No No No No No No No No No Yes (free) Yes (free) No Yes (free²) Optional
Real-time Data Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes When available Yes (GTFS-RT) Depends on server
Delay Information Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes When available Yes Depends on server
Platform Info Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Limited When available No No
Agency/Operator No No No No No No No Yes Yes Yes No No No No No No No No No No No Yes Yes No When available No No
Alerts/Notices Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes No Yes When available No No
Trip Planner Yes Yes Yes Yes Yes Yes Yes No No Yes No No No No No No No No No No No No No No No No No
Stop Search Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Geocoded¹ Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Autocomplete Stop ID Autocomplete GraphQL + prefix GraphQL + prefix

¹ VBN OTP has no native name-based stop search. The integration geocodes your search term via Nominatim (OpenStreetMap) and finds stops within 500 m of the resolved coordinates.

² API key for the community server is free — request it here.

Timezone Handling

Each provider uses its local timezone for departure times:

Provider Timezone
VRR Europe/Berlin
KVV Europe/Berlin
HVV Europe/Berlin
MVV Europe/Berlin
VVS Europe/Berlin
VGN Europe/Berlin
VAG Freiburg Europe/Berlin
BVG Europe/Berlin
RMV Europe/Berlin
VBN OTP Europe/Berlin
VBN TRIAS Europe/Berlin
VRN Europe/Berlin
VVO Europe/Berlin
DING Europe/Berlin
AVV Europe/Berlin
RVV Europe/Berlin
BSVG Europe/Berlin
NWL Europe/Berlin
NVBW Europe/Berlin
BEG Europe/Berlin
SBB Europe/Zurich
ÖBB Europe/Vienna
Trafiklab Europe/Stockholm
NTA Europe/Dublin
Transitous Per-stop (automatic)
openpublictransport Europe/Berlin
OTP2 Custom Europe/Berlin (or per OTP2 config)

Transport Type Mapping

Different providers use different internal classification systems. The integration maps these to a unified set of transport types:

Unified Transport Types

Type Description Icon
train Long-distance and regional trains mdi:train
subway Subway/Metro/U-Bahn mdi:subway-variant
tram Tram/Streetcar mdi:tram
bus All bus services mdi:bus-clock
ferry Ferry/Water transport mdi:ferry
taxi Taxi/On-demand mdi:taxi

VRR/KVV/MVV/VVS/VGN/VAG Transport Classes (EFA)

Class Type Description
0, 1 train Legacy trains
2, 3 subway Subway/Metro
4 tram Tram
5-8, 11 bus Various bus types
9 ferry Ferry
10 taxi Taxi
13 train Regional (RE)
15 train InterCity (IC)
16 train ICE

HVV Transport Classes (EFA)

Class Type Description
0 train High-speed trains
1, 2 subway U-Bahn
3, 4 tram S-Bahn
5-8 bus Various bus types (Metrobus, Schnellbus, etc.)
9 ferry Hafenfähre (Harbor Ferry)

BVG Product Types (FPTF)

Product Type Description
subway subway U-Bahn
suburban train S-Bahn
tram tram Tram/Straßenbahn
bus bus Bus services
ferry ferry Ferry (BVG Fähre)
express train Express trains (ICE, IC, EC)
regional train Regional trains (RE, RB)

RMV Categories (HAFAS catOut)

catOut Type Description
ICE train ICE (InterCity Express)
IC train IC/EC (InterCity/EuroCity)
RE train Regional Express
RB train Regionalbahn
S train S-Bahn
U subway U-Bahn
Tram tram Tram/Straßenbahn
Bus bus Bus services

VBN Transport Modes

VBN is available as two separate provider variants. Both use Authorization: <key> (no Bearer prefix).

VBN TRIAS — PtMode strings:

PtMode Type Description
rail train Regional and long-distance trains
urbanRail train S-Bahn
metro subway Metro/U-Bahn
tram tram Tram/Straßenbahn
bus bus City and regional bus
coach bus Coach/Express bus
water ferry Ferry

VBN OTP — GTFS route modes:

Mode Type Description
RAIL train Regional trains
TRAM tram Tram/Straßenbahn
BUS bus City and regional bus
COACH bus Express/regional bus
SUBWAY subway Metro/U-Bahn
FERRY ferry Ferry

Trafiklab Transport Modes

Mode Type
TRAIN train
METRO subway
TRAM tram
BUS bus
FERRY ferry
TAXI taxi

NTA GTFS Route Types

Route Type Type Description
0, 5, 6 tram Tram/Light Rail
1 subway Subway/Metro
2, 7 train Rail
3 bus Bus
4 ferry Ferry

API Rate Limiting

The integration implements intelligent rate limiting to prevent overloading provider APIs:

  • Daily limit: 800 API calls per day (with buffer)
  • Retry logic: Exponential backoff on errors
  • Timeout: 10 seconds per API call
  • Max retries: 3 attempts per update

Info

If rate limits are reached, the integration will create a repair issue in Home Assistant to notify you.