/v1/stationboard
Live departure/arrival board
Try it live
10 free calls per day — no sign-up, no API key. Goes through the oanor gateway.
It works. Grab an API key and use it in your project.
Get an API keyCode snippets
curl "https://api.oanor.com/swisstransit-api/v1/stationboard" \ -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/swisstransit-api/v1/stationboard", {
headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/swisstransit-api/v1/stationboard");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
"https://api.oanor.com/swisstransit-api/v1/stationboard",
headers={"x-oanor-key": "oanor_test_..."}
)
Example response
A real response from this endpoint, captured by the latest health check.
{
"data": {
"type": "departure",
"board": [
{
"to": "Jegenstorf",
"line": "S 8",
"arrival": null,
"operator": "RBS",
"platform": "24",
"departure": "2026-06-01T18:24:00+0200",
"delay_minutes": 0
},
{
"to": "Worb Dorf",
"line": "S 7",
"arrival": null,
"operator": "RBS",
"platform": "23",
"departure": "2026-06-01T18:30:00+0200",
"delay_minutes": 0
},
{
"to": "Biel/Bienne",
"line": "S 3",
"arrival": null,
"operator": "BLS-bls",
"platform": "10",
"departure": "2026-06-01T18:30:00+0200",
"delay_minutes": 0
},
{
"to": "St. Gallen",
"line": "IC 1",
"arrival": null,
"operator": "SBB",
"platform": "8",
"departure": "2026-06-01T18:31:00+0200",
"delay_minutes": 5
},
{
"to": "Unterzollikofen",
"line": "S 9",
"arrival": null,
"operator": "RBS",
"platform": "22",
"departure": "2026-06-01T18:31:00+0200",
"delay_minutes": 0
},
{
"to": "Belp",
"line": "S 3",
"arrival": null,
"operator": "BLS-bls",
"platform": "1A-D",
"departure": "2026-06-01T18:32:00+0200",
"delay_minutes": 0
},
{
"to": "Basel SBB",
"line": "EC 000064",
"arrival": null,
"operator": "SBB",
"platform": "5",
"departure": "2026-06-01T18:33:00+0200",
"delay_minutes": 1
},
{
"to": "Domodossola (I)",
"line": "EC 000067",
"arrival": null,
"operator": "SBB",
"platform": "7",
"departure": "2026-06-01T18:34:00+0200",
"delay_minutes": 0
},
{
"to": "Genève-Aéroport",
"line": "IC 1",
"arrival": null,
"operator": "SBB",
"platform": "6",
"departure": "2026-06-01T18:34:00+0200",
"delay_minutes": 2
},
{
"to": "Murten/Morat",
"line": "S 52",
"arrival": null,
"operator": "BLS-bls",
"platform": "13D-F",
"departure": "2026-06-01T18:34:00+0200",
"delay_minutes": 0
}
…