@golemio/pid
Version:
Golemio PID Module
1,005 lines (973 loc) • 153 kB
YAML
openapi: 3.0.3
info:
title: 🚋 Public Transport
description: >-
<p>
This is a placeholder description that is automatically replaced in the build process, see <a href="https://gitlab.com/operator-ict/golemio/code/vp/output-gateway/-/blob/development/docs/openapi-header.yaml" target="_blank">/vp/output-gateway/docs/openapi-header.yaml</a>.
</p>
version: 1.0.0
contact:
name: Golemio Prague Data Platform
email: golemio@operatorict.cz
url: https://golemio.cz
servers:
- url: https://api.golemio.cz
description: Main (production) server
- url: https://rabin.golemio.cz
description: Test (development) server
tags:
- name: 🧾 GTFS Static (v2)
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" /> General Transit Feed Specification data about the city's public transportation schedules in form of an API.
- name: 🗺 GTFS Realtime (v2)
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" /> Protobuf feeds of GTFS Realtime data. The feeds are updated every 20 seconds. Proto definitions can be found at [gtfs-realtime-OVapi.proto](https://gitlab.com/operator-ict/golemio/code/ovapi-gtfs-realtime-bindings/-/blob/master/src/gtfs-realtime-OVapi.proto). You can inspect the data in human-readable form using the [GTFS Realtime Inspector](https://gitlab.com/operator-ict/golemio/code/modules/pid/-/tree/master/toolkit/gtfs-realtime-inspector).
- name: 🛤 PID Realtime Positions (v2)
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" /> Realtime positions of vehicles in custom GeoJSON format.
- name: 🚏 PID Departure Boards (v2)
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" />
- name: 🚏 PID Departure Boards (v3)
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" /> <img src="https://img.shields.io/badge/stability-experimental-orange" alt="golemioapi-stability-badge" />
- name: 🚏 PID Departure Boards (v3) - internal
description: Endpoints for internal use
- name: 🗓️ Public GTFS Static Lookup (v2)
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" />
- name: 🕐 Public Vehicle Positions (v2)
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" />
- name: 🕒 Public Departures (v2)
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" />
paths:
/v2/gtfs/services:
get:
summary: GET GTFS Services
description: ""
tags:
- 🧾 GTFS Static (v2)
parameters:
- name: date
in: query
description: Filter services by specific date in format (YYYY-MM-DD).
required: false
schema:
type: string
example: 2019-01-01
- name: limit
in: query
description: Limits number of retrieved items. The maximum is 10000 (default value).
required: false
schema:
type: number
format: int64
example: 10
- name: offset
in: query
description: Number of the first items that are skipped.
required: false
schema:
type: number
format: int64
example: 0
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=14400, stale-while-revalidate=60
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/GTFSService"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/gtfs/routes:
get:
summary: GET All GTFS Routes
description: ""
tags:
- 🧾 GTFS Static (v2)
parameters:
- name: limit
in: query
description: Limits number of retrieved items. The maximum is 10000 (default value).
required: false
schema:
type: number
format: int64
example: 10
- name: offset
in: query
description: Number of the first items that are skipped.
required: false
schema:
type: number
format: int64
example: 0
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=14400, stale-while-revalidate=60
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/GTFSRoute"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/gtfs/routes/{id}:
get:
summary: GET GTFS Route
description: ""
tags:
- 🧾 GTFS Static (v2)
parameters:
- name: id
in: path
required: true
schema:
type: string
example: "L991"
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=14400, stale-while-revalidate=60
content:
application/json:
schema:
$ref: "#/components/schemas/GTFSRoute"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/gtfs/trips:
get:
summary: GET All GTFS Trips
description: ""
tags:
- 🧾 GTFS Static (v2)
parameters:
- name: stopId
in: query
description: Filter trips that include specific stop.
required: false
schema:
type: string
example: "U953Z102P"
- name: date
in: query
description: Filter trips by specific date.
required: false
schema:
type: string
example: "2018-01-01"
- name: limit
in: query
description: Limits number of retrieved items. The maximum is 10000 (default value).
required: false
schema:
type: number
format: int64
example: 10
- name: offset
in: query
description: Number of the first items that are skipped.
required: false
schema:
type: number
format: int64
example: 0
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=14400, stale-while-revalidate=60
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/GTFSTrip"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/gtfs/trips/{id}:
get:
summary: GET GTFS Trip
description: ""
tags:
- 🧾 GTFS Static (v2)
parameters:
- name: id
in: path
required: true
schema:
type: string
example: "991_1151_190107"
- name: includeShapes
in: query
description: Enrich trip response object with shapes.
required: false
schema:
type: boolean
example: true
- name: includeStops
in: query
description: Enrich trip response object with stops.
required: false
schema:
type: boolean
example: true
- name: includeStopTimes
in: query
description: Enrich trip response object with stops times.
required: false
schema:
type: boolean
example: true
- name: includeService
in: query
description: Enrich trip response object with service.
required: false
schema:
type: boolean
example: true
- name: includeRoute
in: query
description: Enrich trip response object with routes.
required: false
schema:
type: boolean
example: true
- name: date
in: query
description: Filter trips by specific date in format (YYYY-MM-DD).
required: false
schema:
type: string
example: "2019-01-01"
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=14400, stale-while-revalidate=60
content:
application/json:
schema:
allOf:
- $ref: "#/components/schemas/GTFSTrip"
- type: object
properties:
stop_times:
type: array
items:
$ref: "#/components/schemas/GTFSStopTime"
- type: object
properties:
shapes:
type: array
items:
allOf:
- $ref: "#/components/schemas/FeaturePoint"
- type: object
properties:
properties:
$ref: "#/components/schemas/GTFSShape"
- type: object
properties:
service:
$ref: "#/components/schemas/GTFSService"
- type: object
properties:
route:
$ref: "#/components/schemas/GTFSRoute"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/gtfs/shapes/{id}:
get:
summary: GET GTFS Shape
description: ""
tags:
- 🧾 GTFS Static (v2)
parameters:
- name: id
in: path
required: true
schema:
type: string
example: "L991V2"
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=14400, stale-while-revalidate=60
content:
application/json:
schema:
type: object
properties:
type:
type: string
example: "FeatureCollection"
features:
type: array
items:
allOf:
- $ref: "#/components/schemas/FeaturePoint"
- type: object
properties:
properties:
$ref: "#/components/schemas/GTFSShape"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/gtfs/stops:
get:
summary: GET All GTFS Stops
description: ""
tags:
- 🧾 GTFS Static (v2)
parameters:
- name: names
in: query
description: Name of station. Use with square brackets `names[]=NAME1&names[]=NAME2`.
required: false
schema:
type: string
example: "Prosecká"
- name: ids
in: query
description: Get stops by stop_id. Use with square brackets `ids[]`.
required: false
schema:
type: string
example: "U476Z103P"
- name: aswIds
in: query
description: Get stops by ASW, use `_` instead of `/` or encode the slash sign with `%2F`. Use with square brackets `aswId[]`.
required: false
schema:
type: string
example: "1833_12"
- name: cisIds
in: query
description: Limits number of retrieved items. The maximum is 10000 (default value).
required: false
schema:
type: number
example: 12345
- name: limit
in: query
description: Limits number of retrieved items. The maximum is 10000 (default value).
required: false
schema:
type: number
format: int64
example: 10
- name: offset
in: query
description: Number of the first items that are skipped.
required: false
schema:
type: number
format: int64
example: 0
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=14400, stale-while-revalidate=60
content:
application/json:
schema:
type: object
properties:
type:
type: string
example: "FeatureCollection"
features:
type: array
items:
allOf:
- $ref: "#/components/schemas/FeaturePoint"
- type: object
properties:
properties:
$ref: "#/components/schemas/GTFSStop"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/gtfs/stops/{id}:
get:
summary: GET GTFS Stop
description: ""
tags:
- 🧾 GTFS Static (v2)
parameters:
- name: id
in: path
required: true
schema:
type: string
example: "U476Z104P"
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=14400, stale-while-revalidate=60
content:
application/json:
schema:
allOf:
- $ref: "#/components/schemas/FeaturePoint"
- type: object
properties:
properties:
$ref: "#/components/schemas/GTFSStop"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/gtfs/stoptimes/{id}:
get:
summary: GET GTFS Stop times
description: ""
tags:
- 🧾 GTFS Static (v2)
parameters:
- name: id
in: path
description: ""
required: true
schema:
type: string
example: "U118Z101P"
- name: date
in: query
description: Filter stop times by specific date in format (YYYY-MM-DD).
required: false
schema:
type: string
example: "2019-01-01"
- name: from
in: query
description: Filter stop times by time departure in format (H:mm:ss).
required: false
schema:
type: string
example: "07:12:33"
- name: to
in: query
description: Filter stop times by time arrival in format (H:mm:ss).
required: false
schema:
type: string
example: "12:12:33"
- name: includeStop
in: query
description: Enrich stop times response object with stop.
required: false
schema:
type: boolean
example: true
- name: limit
in: query
description: Limits number of retrieved items. The maximum is 10000 (default value).
required: false
schema:
type: number
format: int64
example: 10
- name: offset
in: query
description: Number of the first items that are skipped.
required: false
schema:
type: number
format: int64
example: 0
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=14400, stale-while-revalidate=60
content:
application/json:
schema:
type: array
items:
$ref: "#/components/schemas/GTFSStopTime"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/vehiclepositions:
get:
summary: GET All Vehicle Positions
description: |
Positions in one the following states are included by default:
- `at_stop` - The position is tracking and the closest anchor point or metro rail track segment is a stop.
- `on_track` - The position is tracking, but is neither `at_stop` nor `off_track`.
Using the `includeNotTracking` parameter, positions in one the following states can be additionally included:
- `after_track` - The position is not tracking and the trip's last known position is tracking. For metro positions, this can also mean that it is tracking, the vehicle is 200+ meters from the closest metro rail track segment of its track and the vehicle's message attributes `tm` and `odch` or higher than the arrival to the final stop. For other positions from TCP sources (DPP buses and trams), this can also mean that it is tracking and the vehicle sent a message while at the final stop or sent a message with the `tjr` attribute higher than the arrival to the final stop.
- `after_track_delayed` - The same as `after_track`, but the position always has defined delay (not null) if possible to deduct from GTFS static data and origin timestamp. Essentially, it means the vehicle is `at_stop` at the very last stop of the trip. The delay is also propagated to the next trip of the vehicle, unlike the `after_track` state.
- `before_track` - The position is not tracking and either the trip's previous position is not known, or the previous position's state is `at_stop` or `on_track`.
- `before_track_delayed` - The position has a delay prediction based on the vehicle's previous trip.
- `canceled` - The position is canceled.
- `off_track` - The position is tracking and the vehicle is 200+ meters from the closest anchor point or metro rail track segment of its track. For metro positions, it is additionally required that the vehicle's message attributes `tm` and `odch` or less than or equal to the arrival to the final stop.
Using the `includeNotPublic` parameter, positions in the following state can be additionally included:
- `not_public` - The position belongs to a non-public trip (trip without run schedule).
The following states also exist internally but are excluded from the API output:
- `duplicate` - The position is not tracking, the trip's last known position is tracking and there is another position with identical `origin_timestamp`.
- `invisible` - The position is not tracking and either:
- the trip's previous position is not known or the previous position's state is `at_stop` or `on_track`, and the vehicle is on its way from the garage;
- or the trip's last known position is tracking and the vehicle is on its way to the garage.
- `mismatched` - The position does not make sense (e.g. it was sent late and thus has a mismatched stop sequence).
- `unknown` - The position is not yet processed (or was determined to never be processed) or has been invalidated (e.g. due to a vehicle repeating some part of the trip).
tags:
- 🛤 PID Realtime Positions (v2)
parameters:
- name: limit
in: query
description: Limits number of retrieved items. The maximum is 10000 (default value).
required: false
schema:
type: number
format: int64
example: 10
- name: offset
in: query
description: Number of the first items that are skipped.
required: false
schema:
type: number
format: int64
example: 0
- name: includeNotTracking
in: query
description: Enrich result dataset with not tracking trip (those trips not being on track - before and after trip)
schema:
type: boolean
example: true
- name: includeNotPublic
in: query
description: Enrich result dataset with not public trips (trips without run schedule)
schema:
type: boolean
default: false
example: true
- name: cisTripNumber
in: query
description: Filter result by CIS trip number
required: false
schema:
type: number
example: 1020
- name: preferredTimezone
in: query
description: Preferred timezone offset by given Country/City (use encoded slash sign with `%2F` or use `_` sign)
required: false
schema:
type: string
example: "Europe_Prague"
- name: routeId
in: query
description: Filter result by route id
required: false
schema:
type: string
example: "L301"
- name: routeShortName
in: query
description: Filter result by short name
required: false
schema:
type: string
example: "381"
- name: updatedSince
in: query
description: Limit results to the ones updated after (timestamp greater than)
required: false
schema:
type: string
example: "2020-04-07T06:32:29.000Z"
- in: header
name: Accept-Encoding
description: Indicate the content encoding (usually a compression algorithm) that the client can understand. See [mdn](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding) for more details. Note that for this endpoint, if no value is given, gzip compression will be used by default (the `identity` value can be used to opt out of the default compression).
required: false
schema:
oneOf:
- type: string
enum:
- gzip
- identity
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=5, stale-while-revalidate=5
x-last-modified:
description: Timestamp of the latest resource update. Use it as `?updatedSince` query parameter to obtain only newer data than this value.
schema:
type: string
example: "2024-06-03T09:16:16.973Z"
content:
application/json:
schema:
type: object
properties:
type:
type: string
example: "FeatureCollection"
features:
type: array
items:
allOf:
- $ref: "#/components/schemas/FeaturePoint"
- type: object
properties:
properties:
$ref: "#/components/schemas/VehiclepositionCompound"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/vehiclepositions/{gtfsTripId}:
get:
summary: GET Vehicle Position
description: ""
tags:
- 🛤 PID Realtime Positions (v2)
parameters:
- name: gtfsTripId
in: path
description: "Filter result by trip id (gtfs_trip_id)"
required: true
schema:
type: string
example: "115_107_180501"
- name: includeNotTracking
in: query
description: Enrich result dataset with not tracking trip (last tracked vehicle after its trip)
required: false
schema:
type: boolean
example: true
- name: includePositions
in: query
description: Enrich result dataset with positions
required: false
schema:
type: boolean
example: true
- name: preferredTimezone
in: query
description: Preferred timezone offset by given Country/City (use encoded slash sign by %2F or use _ sign)
required: false
schema:
type: string
example: "Europe_Prague"
- in: header
name: Accept-Encoding
description: Indicate the content encoding (usually a compression algorithm) that the client can understand. See [mdn](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding) for more details. Note that for this endpoint, if no value is given, gzip compression will be used by default (the `identity` value can be used to opt out of the default compression).
required: false
schema:
oneOf:
- type: string
enum:
- gzip
- identity
responses:
"200":
description: successful operation
headers:
Cache-Control:
description: Cache control directive for caching proxies
schema:
type: string
example: public, s-maxage=5, stale-while-revalidate=5
content:
application/json:
schema:
allOf:
- $ref: "#/components/schemas/FeaturePoint"
- type: object
properties:
properties:
$ref: "#/components/schemas/VehiclepositionCompound"
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/vehiclepositions/gtfsrt/trip_updates.pb:
get:
summary: GET GTFS-RT Trip Updates Feed
description: ""
tags:
- 🗺 GTFS Realtime (v2)
responses:
"200":
description: successful operation
headers:
Cache-Control:
$ref: "#/components/headers/CacheControlNoCache"
Last-Modified:
$ref: "#/components/headers/LastModified"
content:
application/octet-stream:
schema:
type: string
format: binary
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/vehiclepositions/gtfsrt/vehicle_positions.pb:
get:
summary: GET GTFS-RT Vehicle Positions Feed
description: ""
tags:
- 🗺 GTFS Realtime (v2)
responses:
"200":
description: successful operation
headers:
Cache-Control:
$ref: "#/components/headers/CacheControlNoCache"
Last-Modified:
$ref: "#/components/headers/LastModified"
content:
application/octet-stream:
schema:
type: string
format: binary
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/vehiclepositions/gtfsrt/pid_feed.pb:
get:
summary: GET GTFS-RT PID Feed (trip updates and vehicle positions, combined)
description: ""
tags:
- 🗺 GTFS Realtime (v2)
responses:
"200":
description: successful operation
headers:
Cache-Control:
$ref: "#/components/headers/CacheControlNoCache"
Last-Modified:
$ref: "#/components/headers/LastModified"
content:
application/octet-stream:
schema:
type: string
format: binary
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/vehiclepositions/gtfsrt/alerts.pb:
get:
summary: GET GTFS-RT Service Alerts Feed
description: ""
tags:
- 🗺 GTFS Realtime (v2)
responses:
"200":
description: successful operation
headers:
Cache-Control:
$ref: "#/components/headers/CacheControlNoCache"
Last-Modified:
$ref: "#/components/headers/LastModified"
content:
application/octet-stream:
schema:
type: string
format: binary
"401":
$ref: "#/components/responses/UnauthorizedError"
"404":
description: Not found
/v2/pid/departureboards:
get:
summary: GET Departure Boards
description: >-
You have to use query parameters `ids`, `cisIds`, `aswIds` or `names` in array format - eg. `ids[]=1&ids[]=3`.
**At least one of these IDs is required.** The maximum is 100 stops combined in one request.
tags:
- 🚏 PID Departure Boards (v2)
parameters:
- name: ids
in: query
description: Get result by GTFS stop_id. Can be used to retrive individual stops and to separate departures of Prague and intercity routes, even if they depart from the same physical stop. A list of GTFS stops can be found in `stops.txt` file of the [GTFS feed](https://opendata.praha.eu/datasets/https%3A%2F%2Fapi.opendata.praha.eu%2Flod%2Fcatalog%2F9a6a1d8e-45b9-41de-b9ae-0bcec7126876).
required: false
schema:
type: string
example: "U458Z101P"
- name: aswIds
in: query
description: "Get result by ASW ID. First part of the number represents the whole node. Usually it groups the stops of the same name or all stops associated with a metro station. Also returns related train stations in the node. The second part of the number is optional and represents individual stops in the node. Use `_` instead of `/` as a separator or encode the slash sign with `%2F`. A list of ASW IDs can be found in [Prague Open data](https://opendata.praha.eu/datasets/https%3A%2F%2Fapi.opendata.praha.eu%2Flod%2Fcatalog%2F6ac8381f-ea19-4ea9-8949-92076809dc5a). ⚠️ Note: combination with `includeMetroTrains` is currently not supported, see [issue pid#222](https://gitlab.com/operator-ict/golemio/code/modules/pid/-/issues/222)."
required: false
schema:
type: string
example: "458_101"
- name: cisIds
in: query
description: Get result by CIS ID. A list of CIS IDs can be found in [Prague Open data](https://opendata.praha.eu/datasets/https%3A%2F%2Fapi.opendata.praha.eu%2Flod%2Fcatalog%2F6ac8381f-ea19-4ea9-8949-92076809dc5a).
required: false
schema:
type: number
example: 28004
- name: names
in: query
description: Get results by exact name of stop (case and whitespace sensitive). May return stops of the same name from different towns. Using `names` in combination with other identifiers will return an intersection of stops with `names` and stops of ASW, CIS or GTFS identifiers in the same node. Use this feature to filter out a subset of stops of the same name while guaranteeing them to be from the desired node only.
required: false
schema:
type: string
example: "Smíchovské nádraží"
- name: minutesBefore
in: query
description: Set the start of interval from which to retrieve departures. Positive numbers are set in past relative to the time of request or `timeFrom` timestamp, negative numbers set the start in the future. Use to compensate for walking distance to a stop. Default is set to 0. Maximum value is 30 because of implemented data retention. Minimum value is -4320 (0 - 3 days GTFS calendar maximum).
required: false
schema:
type: number
example: 10
- name: minutesAfter
in: query
description: Set the end of interval from which to retrieve departures. Positive numbers are set in future relative to the time of request or `timeFrom` timestamp, negative are in the past. The sum of minutesBefore and minutesAfter must be larger than zero. Default is set to 180. Maximum value is 4320 (GTFS calendar maximum). Minimum value is -4350 (0 - 3 days GTFS calendar maximum - 30 minutes data retention).
required: false
schema:
type: number
example: 60
- name: timeFrom
in: query
description: Set initial timestamp for time interval given by `minutesBefore` and `minutesAfter`. Use to simulate query time different from now. Use ISO 8601 time format and URL encoded symbols - `%3A` for `:`, `%2B` for `.`, `%2F` for `+`. Time zone is set according to the `preferredTimezone` parameter. Applicable range is -6 hours +2 days from now.
required: false
schema:
type: string
example: "2021-01-21T06:00:00"
- name: includeMetroTrains
in: query
description: "When selecting a node by `name`, when `true`, will include metro and/or train stops that are a member of the same node. I.e. when querying _Na Knížecí_, setting this to `true` will add the metro station _Anděl_ to results as well because both have the same ASW node number 1040. ⚠️ Note: combination with `aswIds` is currently not supported, see [issue pid#222](https://gitlab.com/operator-ict/golemio/code/modules/pid/-/issues/222)."
required: false
schema:
type: boolean
example: true
- name: airCondition
in: query
description: Enrich departures with vehicle air condition information. Setting to `false` will force all items to be `null`. Useful for disabling the indication of air condition during cold season.
required: false
schema:
type: boolean
example: true
default: true
- name: preferredTimezone
in: query
description: Preferred timezone offset as defined in the IANA Time zone database in the form of Country/City (use an URL encoded slash sign `%2F` or use an underscore _ symbol), default is Europe/Prague
required: false
schema:
type: string
example: "Europe_Prague"
- name: mode
in: query
description: >-
Valid entries: `departures` (default), `arrivals`, `mixed`. Set how to handle behaviour in end stops. `departures` (default) returns all connections that depart from selected stops (does not return connections for which it is the final stop). `arrivals` returns all connections that arrive into the stops (does not return connections for which it is the first stop). `mixed` returns everything. Use `arrivals` to create dedicated arrival boards. Use `departures` for all other cases. Using `mixed` is not recomended as departures of adjoined routes will be returned twice.
required: false
schema:
type: string
example: "departures"
- name: order
in: query
description: >-
Valid entries: `real` (default), `timetable`. Order results by predicted time including trip delay or by timetable time.
required: false
schema:
type: string
example: "real"
- name: filter
in: query
description: >-
Valid entries: `none` (default), `routeOnce`, `routeOnceFill`, `routeHeadingOnce`, `routeHeadingOnceFill`, `routeHeadingOnceNoGap`, `routeHeadingOnceNoGapFill`. Defines how should be the list of departures returned. `none` returns all departures within the time and item limit. `routeOnce` returns exactly one occurence of departure for each `route_id`. Works best when querying a single stop. `routeHeadingOnce` returns one entry for each pair of `route_id` and `trip_headsign`, i.e. returns departures for routes that have multiple end stops. Works well when quering one or more stops in a node. `...NoGap` will ensure that departures with a distinct trip headsign will not be displayed if they should arrive too far in the future. `...Fill` attributes will behave the same as their namesakes but afterwards will fill the rest of request up to `total/limit` with further departures. Use to have every line/destination represented and have the display filled with departures at the same time.
required: false
schema:
type: string
example: "routeOnce"
- name: skip
in: query
description: |
Filters out trips matching the given states.
Multiple filters can be applied using array syntax, e.g., `&skip[]=canceled&skip[]=atStop`.
Using both `untracked` and `missing` will exclude all untracked vehicles, as missing vehicles are a subset of untracked vehicles.
We recommend using `missing` instead of `untracked`, as skipping all untracked vehicles may result in departures not appearing in the API response until the last few minutes before departure, especially for departure boards near the starting station/stop.
required: false
schema:
type: string
example: "canceled"
enum:
- canceled
- atStop
- untracked
- missing
- name: limit
in: query
description: Limits the number of items in response. The maximum is 1000 (default value is 20).
required: false
schema:
type: number
format: int64
example: 0
- name: total
in: query
description: Sets the number of items that will be queried. Use in conjunction with `offset`. Up to `total - offset`, but not more than `limit` items will be