Departure board for a licensed kiosk display

Changed on

The one call a display makes, once a minute. Authenticates by license token only (no API key). Returns the /departures payload plus serverTime, refreshAfter, the license summary, the display config stored on the license, and the device record. Location priority: admin-pinned device location, then lat/lon, then the license default. 403 with code in license_required, invalid_license, expired, inactive, device_limit, preview_rate_limit; 400 device_required / location_required.

get/kiosk/board

Request

Query parameters

licensestring required
devicestring

Stable per-display id (required unless preview=1)

preview'1'

Admin preview

latnumber
lonnumber
radiusinteger
limitinteger

Response

Board payload

regionstring required

Detected transit region

citystring

City name derived from region. Absent for country-level fallback regions (e.g. "Portugal"), where no single city applies.

realtimeboolean required

Whether departures include real-time delay data

routingboolean required

Whether trip planning is available in this region

attributionstring

Required attribution for the data source

timeTravelSupportedboolean

Whether departures for a future time can be requested here. Predictive per region; on an actual time-travel request it reports whether every contributing source really honoured the requested time.

timeTravelHorizonMinutesinteger

How far ahead time travel reaches in this region, in minutes. Absent when the region has no fixed horizon.

radiusUsedinteger

Present only when the effective search radius differs from the requested one, because nothing was found nearby and the search was widened automatically.

forTimestring date-time

Echo of the requested departure time. Present only on time-travel requests.

serverTimeinteger required

Unix ms at the server; boards derive their clock offset from it

refreshAfterinteger required

Seconds until the next poll

Example response

{
  "region": "Berlin/Brandenburg",
  "city": "Berlin",
  "realtime": true,
  "routing": true,
  "departures": [
    {
      "line": "U2",
      "direction": "Pankow",
      "time": "3 min",
      "timestamp": 1710500000000,
      "stop": "S+U Alexanderplatz",
      "platform": "2",
      "delay": 2,
      "color": "#8C6DAB"
    }
  ],
  "stations": [
    {
      "name": "S+U Alexanderplatz",
      "distance": 120,
      "walkSeconds": 96
    }
  ],
  "regionBounds": {
    "north": 52.9,
    "south": 51.6,
    "east": 14.8,
    "west": 13
  },
  "routingBounds": [
    {
      "north": 52.9,
      "south": 51.6,
      "east": 14.8,
      "west": 13
    }
  ],
  "timeTravelSupported": true,
  "timeTravelHorizonMinutes": 1440,
  "radiusUsed": 2000,
  "disruptions": [
    {
      "id": "sl:12345",
      "title": "Avstängd hiss vid Hötorget",
      "source": "sl",
      "attribution": "Source: Trafiklab.se, CC BY 4.0"
    }
  ],
  "refreshAfter": 60
}

Changes

    • info

      added the optional property ////// to the response with the status

    • info

      added the optional property //// to the response with the status

    • info

      endpoint added