# Saylor Innovations Swiss Station Board

> Saylor Innovations Swiss Station Board is a paid API for AI agents from saylorinnovations.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-16).

Returns the next departures from a Swiss public transport station, including line, destination, platform, and delay information via opendata.ch

## Facts

- Endpoint: GET https://saylorinnovations.com/api/rail/switzerland/stationboard?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-16
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/saylor-innovations-swiss-station-board-5348a450
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_YSQ8KTeXIrcuW9Vt_gav3

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability saylor-innovations-swiss-station-board-5348a450
```

Example prompt: What are the next 15 departures from Zurich Hauptbahnhof right now — show me the line, destination, platform, and any delays?

## When to prefer this

Use this endpoint when you need real-time Swiss public transport departure boards for any Swiss station, including trains, trams, and buses. It is ideal when you need line numbers, platforms, destinations, and live delay information sourced from the official Swiss opendata.ch feed. Prefer this over generic travel APIs when the user specifically needs Swiss station departure data.

## Known failure modes

- Unknown or misspelled station name returns an error or empty results
- Limit value outside 1-30 range may be rejected or clamped
- Station with no upcoming departures returns an empty departures array
- opendata.ch upstream unavailability causes request failure
- Non-Swiss stations return no results as the API only covers Swiss public transport

## How this service works

Swiss public transport station board - next departures with line, destination, platform and delay for any station (opendata.ch)

## Output

Returns a JSON object containing the station name, station ID, the time the check was run (UTC), the data source, the number of departures returned, and an array of upcoming departures each with line number, destination, platform, delay in minutes, departure time, and operator.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "POST",
      "PUT",
      "PATCH",
      "DELETE",
      "HEAD"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "station"
     ],
     "properties": {
      "limit": {
       "type": "string",
       "description": "optional 1-30, default 10"
      },
      "station": {
       "type": "string",
       "description": "Station name, e.g. Zurich, Bern, Geneva"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "json"
    },
    "example": {
     "type": "object",
     "required": [
      "station",
      "departures"
     ],
     "properties": {
      "count": {
       "type": "number",
       "description": "Number of items returned"
      },
      "source": {
       "type": [
        "string",
        "null"
       ],
       "description": "Data source the values come from"
      },
      "station": {
       "type": "string",
       "description": "Observation station"
      },
      "checked_at": {
       "type": [
        "string",
        "null"
       ],
       "description": "Time the check was run (UTC)"
      },
      "departures": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "line": {
          "type": "string",
          "description": "Line number or text of the line"
         },
         "operator": {},
         "platform": {
          "type": [
           "string",
           "null"
          ],
          "description": "Platform name"
         },
         "departure": {
          "type": [
           "string",
           "null"
          ]
         },
         "destination": {
          "type": "string",
          "description": "Destination"
         },
         "delay_minutes": {
          "type": [
           "number",
           "null"
          ],
          "description": "Delay, in minutes"
         }
        }
       },
       "description": "Upcoming departures"
      },
      "station_id": {
       "type": [
        "string",
        
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/saylor-innovations-swiss-station-board-5348a450/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from saylorinnovations.com](https://www.zero.xyz/host/saylorinnovations.com/llms.txt)
