Static data

The static NeTEx Regional dataset contains files describing all planned public transport data, with more technical details compared to the GTFS Regional feeds.

In order to retrieve the static data you need an API key. Technical details for fetching the data can be found in the API’s OpenAPI specification.

Where to download

The dataset can be accessed through the following URL:{operator}/{operator}.zip?key={apikey}.

Replace {operator} with the abbreviation of the operator you want to download. These abbreviations can be found in the OpenAPI specification, but are also listed on the GTFS Regional static data documentation page. Replace {apikey} with your own API key.

Download URLs

Regional operators

Operator Static data
Blekingetrafiken (Blekinge län)
Dalatrafik (Dalarnas län)
DinTur (Västernorrlands län)
Gotlands kollektivtrafik (Gotlands län)
JLT (Jönköpings län)
Kalmar Länstrafik (Kalmar län)
Kronobergs Länstrafik (Kronobergs län)
LTR (Jämtlands län)
Länstrafiken Norrbotten
Länstrafiken Västerbotten
Länstrafiken Örebro
Skånetrafiken (Skåne län)
SL (Stockholm län)
Sörmlandstrafiken (Södermanlands län)
UL (Uppsala län)
VL (Västmanlands län)
Värmlandstrafik + Karlstadsbuss (Värmlands Län)
Västtrafik (Västra götalands län)
X-trafik (Gävleborgs län)
Östgötatrafiken (Östergötlands län)

Commercial operators

Operator Planerad trafik
** SJ + Snälltåget + Tågab **

File structure

Each archive contains three types of files:

  • _shared_data.xml - contains common information, such as calendar schedules
  • _stops.xml - contains information about stops, such as quays, stop areas and entrances
  • line_[lineNumber].xml - contains the specific schedule for a line

Important details

  • Your HTTP client has to have support for Gzip or deflate compression. This needs to be signalled through the HTTP Accept header. If your client does not support this, or is configured incorrectly, you will receive an HTTP 406 error code
  • This API supports conditional requests, and sends out HTTP Last-modified and etag headers. This way you can prevent downloading the same data twice. See the conditional get requests chapter in our best practices for more information.