Skip to content
Swiss public transport API
PHP HTML Other
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib/Transport Apply fixes from StyleCI Apr 16, 2020
test Fix Connection documentation Apr 16, 2020
var Remove support for XHProf May 21, 2016
views Whitespace fixes May 21, 2016
web Remove status link Jan 6, 2020
.gitattributes Add .gitattributes May 20, 2016
.gitignore Direct deployment Sep 14, 2019
.scrutinizer.yml Add .scrutinizer.yml Oct 29, 2018
.styleci.yml Disable no_alternative_syntax in .styleci.yml Apr 16, 2020
.travis.yml Remove deprecated sudo in .travis.yml Apr 16, 2020
CHANGELOG.md Update changelog Apr 16, 2020
Dockerfile Upgrade to PHP 7.3 May 14, 2020
LICENSE Added license Mar 28, 2012
README.md Add troubleshooting notice about missing php-xml package (#180) Feb 21, 2018
composer.json Make package name all lowercase in composer.json Feb 6, 2020
composer.lock Make package name all lowercase in composer.json Feb 6, 2020
config.php.docker Set rate limiting to 3 requests per second per IP (#147) Oct 28, 2016
config.php.sample Set rate limiting to 3 requests per second per IP (#147) Oct 28, 2016
docker-cloud.yml Revert "Rename REDIS_TCP_PORT to avoid env conflict on Docker Cloud" Aug 23, 2016
docker-compose.yml Revert "Rename REDIS_TCP_PORT to avoid env conflict on Docker Cloud" Aug 23, 2016
hafasXMLInterface.xsd Update XSD to version 3.3.6 Jun 30, 2016
id_rsa.enc Direct deployment Sep 14, 2019
phpunit.xml.dist Transport API Mar 4, 2012

README.md

The backend of the Transport API changed on 31 July 2017. Read more on opendata.ch.

Transport API

Build Status

The Transport API allows interested developers to build their own applications using public timetable data, whether they're on the web, the desktop or mobile devices.

Feel free to fork this project implement your own ideas or send pull requests.

Installation

You can install the Transport API on your own server, however we recommend the usage of transport.opendata.ch.

$ git clone git://github.com/OpendataCH/Transport.git transport
$ cd transport
$ composer install

Also make sure, the directory transport/var/ is writable.

If you cloned the repository inside your document root, the API is now accessible at http://localhost/transport/web/api.php/v1/. However we recommend setting the document root to transport/web/ and using the provided .htaccess to route API requests to api.php.

Or you can start it with the PHP's built-in webserver (not recommended for a production setup, but the easy way to get started locally)

php -S localhost:8000

And then access it with http://localhost:8000/web/api.php

Configuration

To define your own configuration for the API copy the file config.php.sample to config.php and override the variables you want to change.

Statistics

You can get some basic statistics for the API by configuring a Redis server in your configuration ($redis) and have a look at http://localhost/transport/web/stats.php.

Development

XSD for the XML Fahrplan API is available here: hafasXMLInterface.xsd

Troubleshooting

Missing package php-xml

If you're running Ubuntu and composer install produces the error message

Your requirements could not be resolved to an installable set of packages.

you can try to install the package php-xml using the command

sudo apt install php-xml
You can’t perform that action at this time.