mirror of
https://github.com/public-transport/db-vendo-client.git
synced 2025-02-22 22:59:35 +02:00
2468 lines
70 KiB
YAML
2468 lines
70 KiB
YAML
openapi: 3.0.3
|
||
info:
|
||
title: db-vendo-client
|
||
description: Schema for db-vendo-client/hafas-rest-api's Friendy Public Transport Format REST API
|
||
contact:
|
||
url: https://github.com/public-transport/db-vendo-client
|
||
version: '6'
|
||
paths:
|
||
/stops/{id}:
|
||
get:
|
||
summary: Finds a stop/station by ID.
|
||
description: Uses [`hafasClient.stop()`](https://github.com/public-transport/hafas-client/blob/6/docs/stop.md) to **find a stop/station by ID**.
|
||
externalDocs:
|
||
description: '`hafasClient.stop()` documentation'
|
||
url: https://github.com/public-transport/hafas-client/blob/6/docs/stop.md
|
||
parameters:
|
||
- name: id
|
||
in: path
|
||
description: stop/station ID
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: linesOfStops
|
||
in: query
|
||
description: Parse & expose lines at each stop/station?
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: language
|
||
in: query
|
||
description: Language of the results.
|
||
schema:
|
||
type: string
|
||
default: en
|
||
- name: pretty
|
||
in: query
|
||
description: Pretty-print JSON responses?
|
||
schema:
|
||
type: boolean
|
||
responses:
|
||
2XX:
|
||
description: The stop, in the [`hafas-client` format](https://github.com/public-transport/hafas-client/blob/6/docs/stop.md).
|
||
content:
|
||
application/json:
|
||
schema:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
/stops/{id}/departures:
|
||
get:
|
||
summary: Fetches departures at a stop/station.
|
||
description: Uses [`hafasClient.departures()`](https://github.com/public-transport/hafas-client/blob/6/docs/departures.md) to **query departures at a stop/station**.
|
||
externalDocs:
|
||
description: '`hafasClient.departures()` documentation'
|
||
url: https://github.com/public-transport/hafas-client/blob/6/docs/departures.md
|
||
parameters:
|
||
- name: id
|
||
in: path
|
||
description: stop/station ID to show departures for
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: when
|
||
in: query
|
||
description: 'Date & time to get departures for. – Default: *now*'
|
||
schema:
|
||
type: string
|
||
format: date-time
|
||
- name: direction
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: string
|
||
- name: duration
|
||
in: query
|
||
description: Show departures for how many minutes?
|
||
schema:
|
||
type: integer
|
||
default: 10
|
||
- name: results
|
||
in: query
|
||
description: 'Max. number of departures. – Default: *whatever HAFAS wants'
|
||
schema:
|
||
type: integer
|
||
- name: linesOfStops
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: remarks
|
||
in: query
|
||
description: Parse & return hints & warnings?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: language
|
||
in: query
|
||
description: Language of the results.
|
||
schema:
|
||
type: string
|
||
default: en
|
||
- name: products
|
||
in: query
|
||
description: Filter by profile-specific products (e.g. regional transport only).
|
||
schema:
|
||
$ref: '#/components/schemas/ProfileSpecificProducts'
|
||
- name: pretty
|
||
in: query
|
||
description: Pretty-print JSON responses?
|
||
schema:
|
||
type: boolean
|
||
responses:
|
||
2XX:
|
||
description: An object with an array of departures, in the [`hafas-client` format](https://github.com/public-transport/hafas-client/blob/6/docs/departures.md).
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
departures:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Alternative'
|
||
realtimeDataUpdatedAt:
|
||
type: integer
|
||
required:
|
||
- departures
|
||
/stops/{id}/arrivals:
|
||
get:
|
||
summary: Fetches arrivals at a stop/station.
|
||
description: Works like `/stops/{id}/departures`, except that it uses [`hafasClient.arrivals()`](https://github.com/public-transport/hafas-client/blob/6/docs/arrivals.md) to **query arrivals at a stop/station**.
|
||
externalDocs:
|
||
description: '`hafasClient.arrivals()` documentation'
|
||
url: https://github.com/public-transport/hafas-client/blob/6/docs/arrivals.md
|
||
parameters:
|
||
- name: id
|
||
in: path
|
||
description: stop/station ID to show arrivals for
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: when
|
||
in: query
|
||
description: 'Date & time to get departures for. – Default: *now*'
|
||
schema:
|
||
type: string
|
||
format: date-time
|
||
- name: direction
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: string
|
||
- name: duration
|
||
in: query
|
||
description: Show departures for how many minutes?
|
||
schema:
|
||
type: integer
|
||
default: 10
|
||
- name: results
|
||
in: query
|
||
description: 'Max. number of departures. – Default: *whatever HAFAS wants*'
|
||
schema:
|
||
type: integer
|
||
- name: linesOfStops
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: remarks
|
||
in: query
|
||
description: Parse & return hints & warnings?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: language
|
||
in: query
|
||
description: Language of the results.
|
||
schema:
|
||
type: string
|
||
default: en
|
||
- name: products
|
||
in: query
|
||
description: Filter by profile-specific products (e.g. regional transport only).
|
||
schema:
|
||
$ref: '#/components/schemas/ProfileSpecificProducts'
|
||
- name: pretty
|
||
in: query
|
||
description: Pretty-print JSON responses?
|
||
schema:
|
||
type: boolean
|
||
responses:
|
||
2XX:
|
||
description: An object with an array of arrivals, in the [`hafas-client` format](https://github.com/public-transport/hafas-client/blob/6/docs/arrivals.md).
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
arrivals:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Alternative'
|
||
realtimeDataUpdatedAt:
|
||
type: integer
|
||
required:
|
||
- arrivals
|
||
/journeys:
|
||
get:
|
||
summary: Finds journeys from A to B.
|
||
description: Uses [`hafasClient.journeys()`](https://github.com/public-transport/hafas-client/blob/6/docs/journeys.md) to **find journeys from A (`from`) to B (`to`)**.
|
||
externalDocs:
|
||
description: '`hafasClient.journeys()` documentation'
|
||
url: https://github.com/public-transport/hafas-client/blob/6/docs/journeys.md
|
||
parameters:
|
||
- name: from
|
||
in: query
|
||
schema:
|
||
type: string
|
||
description: '"from" as stop/station ID (e.g. from=8010159 for Halle (Saale) Hbf)'
|
||
- name: from.id
|
||
in: query
|
||
schema:
|
||
type: string
|
||
description: '"from" as POI (e.g. from.id=991561765&from.latitude=51.48364&from.longitude=11.98084 for Halle+(Saale),+Stadtpark+Halle+(Grünanlagen))'
|
||
- name: from.address
|
||
in: query
|
||
schema:
|
||
type: string
|
||
description: '"from" as an address (e.g. from.latitude=51.25639&from.longitude=7.46685&from.address=Hansestadt+Breckerfeld,+Hansering+3 for Hansestadt Breckerfeld, Hansering 3)'
|
||
- name: from.latitude
|
||
in: query
|
||
schema:
|
||
type: number
|
||
- name: from.longitude
|
||
in: query
|
||
schema:
|
||
type: number
|
||
- name: to
|
||
in: query
|
||
schema:
|
||
type: string
|
||
description: '"to" as stop/station ID'
|
||
- name: to.id
|
||
in: query
|
||
schema:
|
||
type: string
|
||
description: '"to" as POI'
|
||
- name: to.address
|
||
in: query
|
||
schema:
|
||
type: string
|
||
description: '"to" as an address'
|
||
- name: to.latitude
|
||
in: query
|
||
schema:
|
||
type: number
|
||
- name: to.longitude
|
||
in: query
|
||
schema:
|
||
type: number
|
||
- name: departure
|
||
in: query
|
||
description: 'Compute journeys departing at this date/time. Mutually exclusive with `arrival`. – Default: *now*'
|
||
schema:
|
||
type: string
|
||
format: date-time
|
||
- name: arrival
|
||
in: query
|
||
description: 'Compute journeys arriving at this date/time. Mutually exclusive with `departure`. – Default: *now*'
|
||
schema:
|
||
type: string
|
||
format: date-time
|
||
- name: earlierThan
|
||
in: query
|
||
description: Compute journeys "before" an `ealierRef`.
|
||
schema:
|
||
type: string
|
||
- name: laterThan
|
||
in: query
|
||
description: Compute journeys "after" an `laterRef`.
|
||
schema:
|
||
type: string
|
||
- name: results
|
||
in: query
|
||
description: Max. number of journeys.
|
||
schema:
|
||
type: integer
|
||
default: 3
|
||
- name: stopovers
|
||
in: query
|
||
description: Fetch & parse stopovers on the way?
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: transfers
|
||
in: query
|
||
description: 'Maximum number of transfers. – Default: *let HAFAS decide*'
|
||
schema:
|
||
type: integer
|
||
- name: transferTime
|
||
in: query
|
||
description: Minimum time in minutes for a single transfer.
|
||
schema:
|
||
type: integer
|
||
default: 0
|
||
- name: accessibility
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: string
|
||
- name: bike
|
||
in: query
|
||
description: Compute only bike-friendly journeys?
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: startWithWalking
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: walkingSpeed
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: string
|
||
default: normal
|
||
enum:
|
||
- slow
|
||
- normal
|
||
- fast
|
||
- name: tickets
|
||
in: query
|
||
description: Return information about available tickets? only supported for /journeys/{ref}
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: polylines
|
||
in: query
|
||
description: Fetch & parse a shape for each journey leg? only supported for /journeys/{ref}
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: subStops
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: entrances
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: remarks
|
||
in: query
|
||
description: Parse & return hints & warnings?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: scheduledDays
|
||
in: query
|
||
description: Parse & return dates each journey is valid on?
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: language
|
||
in: query
|
||
description: Language of the results.
|
||
schema:
|
||
type: string
|
||
default: en
|
||
- name: loyaltyCard
|
||
in: query
|
||
description: 'Type of loyalty card in use. – Default: *none*'
|
||
schema:
|
||
type: string
|
||
enum:
|
||
- bahncard-1st-25
|
||
- bahncard-2nd-25
|
||
- bahncard-1st-50
|
||
- bahncard-2nd-50
|
||
- bahncard-1st-100
|
||
- bahncard-2nd-100
|
||
- vorteilscard
|
||
- halbtaxabo
|
||
- generalabonnement-1st
|
||
- generalabonnement-2nd
|
||
- nl-40
|
||
- at-klimaticket
|
||
- name: firstClass
|
||
in: query
|
||
description: Search for first-class options?
|
||
schema:
|
||
type: boolean
|
||
default: 'false'
|
||
- name: age
|
||
in: query
|
||
description: 'Age of traveller – Default: *adult*'
|
||
schema:
|
||
type: integer
|
||
- name: products
|
||
in: query
|
||
description: Filter by profile-specific products (e.g. regional transport only).
|
||
schema:
|
||
$ref: '#/components/schemas/ProfileSpecificProducts'
|
||
- name: pretty
|
||
in: query
|
||
description: Pretty-print JSON responses?
|
||
schema:
|
||
type: boolean
|
||
responses:
|
||
2XX:
|
||
description: An object with an array of journeys, in the [`hafas-client` format](https://github.com/public-transport/hafas-client/blob/6/docs/journeys.md).
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
journeys:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Journey'
|
||
realtimeDataUpdatedAt:
|
||
type: integer
|
||
earlierRef:
|
||
type: string
|
||
laterRef:
|
||
type: string
|
||
required:
|
||
- journeys
|
||
/trips/{id}:
|
||
get:
|
||
summary: Fetches a trip by ID.
|
||
description: Uses [`hafasClient.trip()`](https://github.com/public-transport/hafas-client/blob/6/docs/trip.md) to **fetch a trip by ID**.
|
||
externalDocs:
|
||
description: '`hafasClient.trip()` documentation'
|
||
url: https://github.com/public-transport/hafas-client/blob/6/docs/trip.md
|
||
parameters:
|
||
- name: id
|
||
in: path
|
||
description: trip ID
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: stopovers
|
||
in: query
|
||
description: Fetch & parse stopovers on the way?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: remarks
|
||
in: query
|
||
description: Parse & return hints & warnings?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: polyline
|
||
in: query
|
||
description: Fetch & parse the geographic shape of the trip? (does not work for RIS trip ids from boards of db profile)
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: language
|
||
in: query
|
||
description: Language of the results.
|
||
schema:
|
||
type: string
|
||
default: en
|
||
- name: pretty
|
||
in: query
|
||
description: Pretty-print JSON responses?
|
||
schema:
|
||
type: boolean
|
||
responses:
|
||
2XX:
|
||
description: An object with the trip, in the [`hafas-client` format](https://github.com/public-transport/hafas-client/blob/6/docs/trip.md).
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
trip:
|
||
$ref: '#/components/schemas/Trip'
|
||
realtimeDataUpdatedAt:
|
||
type: integer
|
||
required:
|
||
- trip
|
||
/locations/nearby:
|
||
get:
|
||
summary: Finds stops/stations & POIs close to a geolocation.
|
||
description: Uses [`hafasClient.nearby()`](https://github.com/public-transport/hafas-client/blob/6/docs/nearby.md) to **find stops/stations & POIs close to the given geolocation**.
|
||
externalDocs:
|
||
description: '`hafasClient.nearby()` documentation'
|
||
url: https://github.com/public-transport/hafas-client/blob/6/docs/nearby.md
|
||
parameters:
|
||
- name: location
|
||
in: query
|
||
schema:
|
||
$ref: '#/components/schemas/Location'
|
||
- name: results
|
||
in: query
|
||
description: maximum number of results
|
||
schema:
|
||
type: integer
|
||
default: 8
|
||
- name: distance
|
||
in: query
|
||
description: 'maximum walking distance in meters – Default: –'
|
||
schema:
|
||
type: integer
|
||
- name: stops
|
||
in: query
|
||
description: Return stops/stations?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: poi
|
||
in: query
|
||
description: Return points of interest?
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: linesOfStops
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: language
|
||
in: query
|
||
description: Language of the results.
|
||
schema:
|
||
type: string
|
||
default: en
|
||
- name: pretty
|
||
in: query
|
||
description: Pretty-print JSON responses?
|
||
schema:
|
||
type: boolean
|
||
responses:
|
||
2XX:
|
||
description: An array of locations, in the [`hafas-client` format](https://github.com/public-transport/hafas-client/blob/6/docs/nearby.md).
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
/locations:
|
||
get:
|
||
summary: Finds stops/stations, POIs and addresses matching a query.
|
||
description: Uses [`hafasClient.locations()`](https://github.com/public-transport/hafas-client/blob/6/docs/locations.md) to **find stops/stations, POIs and addresses matching `query`**.
|
||
externalDocs:
|
||
description: '`hafasClient.locations()` documentation'
|
||
url: https://github.com/public-transport/hafas-client/blob/6/docs/locations.md
|
||
parameters:
|
||
- name: query
|
||
in: query
|
||
description: The term to search for.
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: fuzzy
|
||
in: query
|
||
description: Find more than exact matches?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: results
|
||
in: query
|
||
description: How many stations shall be shown?
|
||
schema:
|
||
type: integer
|
||
default: 10
|
||
- name: stops
|
||
in: query
|
||
description: Show stops/stations?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: addresses
|
||
in: query
|
||
description: Show addresses?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: poi
|
||
in: query
|
||
description: Show points of interest?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: linesOfStops
|
||
in: query
|
||
description: Parse & return lines of each stop/station?
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: language
|
||
in: query
|
||
description: Language of the results.
|
||
schema:
|
||
type: string
|
||
default: en
|
||
- name: pretty
|
||
in: query
|
||
description: Pretty-print JSON responses?
|
||
schema:
|
||
type: boolean
|
||
responses:
|
||
2XX:
|
||
description: An array of locations, in the [`hafas-client` format](https://github.com/public-transport/hafas-client/blob/6/docs/locations.md).
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
/journeys/{ref}:
|
||
get:
|
||
summary: Fetches up-to-date realtime data for a journey computed before.
|
||
description: |-
|
||
Uses [`hafasClient.refreshJourney()`](https://github.com/public-transport/hafas-client/blob/6/docs/refresh-journey.md) to **"refresh" a journey, using its `refreshToken`**.
|
||
|
||
The journey will be the same (equal `from`, `to`, `via`, date/time & vehicles used), but you can get up-to-date realtime data, like delays & cancellations.
|
||
externalDocs:
|
||
description: '`hafasClient.refreshJourney()` documentation'
|
||
url: https://github.com/public-transport/hafas-client/blob/6/docs/refresh-journey.md
|
||
parameters:
|
||
- name: ref
|
||
in: path
|
||
description: The journey's `refreshToken`.
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: stopovers
|
||
in: query
|
||
description: Fetch & parse stopovers on the way?
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: tickets
|
||
in: query
|
||
description: Return information about available tickets? mutually exclusive with polylines
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: polylines
|
||
in: query
|
||
description: Fetch & parse a shape for each journey leg? mutually exclusive with tickets
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: subStops
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: entrances
|
||
in: query
|
||
description: not supported
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: remarks
|
||
in: query
|
||
description: Parse & return hints & warnings?
|
||
schema:
|
||
type: boolean
|
||
default: true
|
||
- name: scheduledDays
|
||
in: query
|
||
description: Parse & return dates the journey is valid on?
|
||
schema:
|
||
type: boolean
|
||
default: false
|
||
- name: language
|
||
in: query
|
||
description: Language of the results.
|
||
schema:
|
||
type: string
|
||
default: en
|
||
- name: pretty
|
||
in: query
|
||
description: Pretty-print JSON responses?
|
||
schema:
|
||
type: boolean
|
||
responses:
|
||
2XX:
|
||
description: An object with the up-to-date journey, in the [`hafas-client` format](https://github.com/public-transport/hafas-client/blob/6/docs/refresh-journey.md).
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
journey:
|
||
$ref: '#/components/schemas/Journey'
|
||
realtimeDataUpdatedAt:
|
||
type: integer
|
||
required:
|
||
- journey
|
||
components:
|
||
schemas:
|
||
ProductType:
|
||
description: |-
|
||
A ProductType relates to how a means of transport "works" in local context.
|
||
Example: Even though S-Bahn and U-Bahn in Berlin are both trains, they have different operators, service patterns,
|
||
stations and look different. Therefore, they are two distinct products subway and suburban.
|
||
type: object
|
||
properties:
|
||
id:
|
||
type: string
|
||
mode:
|
||
enum:
|
||
- aircraft
|
||
- bicycle
|
||
- bus
|
||
- car
|
||
- gondola
|
||
- taxi
|
||
- train
|
||
- walking
|
||
- watercraft
|
||
type: string
|
||
name:
|
||
type: string
|
||
short:
|
||
type: string
|
||
bitmasks:
|
||
type: array
|
||
items:
|
||
type: number
|
||
default:
|
||
type: boolean
|
||
Profile:
|
||
description: |-
|
||
A profile is a specific customisation for each endpoint.
|
||
It parses data from the API differently, add additional information, or enable non-default methods.
|
||
type: object
|
||
properties:
|
||
locale:
|
||
type: string
|
||
timezone:
|
||
type: string
|
||
endpoint:
|
||
type: string
|
||
products:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/ProductType'
|
||
trip:
|
||
type: boolean
|
||
radar:
|
||
type: boolean
|
||
refreshJourney:
|
||
type: boolean
|
||
journeysFromTrip:
|
||
type: boolean
|
||
reachableFrom:
|
||
type: boolean
|
||
journeysWalkingSpeed:
|
||
type: boolean
|
||
tripsByName:
|
||
type: boolean
|
||
remarks:
|
||
type: boolean
|
||
remarksGetPolyline:
|
||
type: boolean
|
||
lines:
|
||
type: boolean
|
||
Location:
|
||
description: A location object is used by other items to indicate their locations.
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- location
|
||
id:
|
||
type: string
|
||
name:
|
||
type: string
|
||
poi:
|
||
type: boolean
|
||
address:
|
||
type: string
|
||
longitude:
|
||
type: number
|
||
latitude:
|
||
type: number
|
||
altitude:
|
||
type: number
|
||
distance:
|
||
type: number
|
||
Products:
|
||
description: Each public transportation network exposes its products as boolean properties. See {@link ProductType}
|
||
type: object
|
||
additionalProperties:
|
||
type: boolean
|
||
Facilities:
|
||
type: object
|
||
additionalProperties:
|
||
type: string
|
||
ReisezentrumOpeningHours:
|
||
type: object
|
||
properties:
|
||
Mo:
|
||
type: string
|
||
Di:
|
||
type: string
|
||
Mi:
|
||
type: string
|
||
Do:
|
||
type: string
|
||
Fr:
|
||
type: string
|
||
Sa:
|
||
type: string
|
||
So:
|
||
type: string
|
||
Station:
|
||
description: |-
|
||
A station is a larger building or area that can be identified by a name.
|
||
It is usually represented by a single node on a public transport map.
|
||
Whereas a stop usually specifies a location, a station often is a broader area
|
||
that may span across multiple levels or buildings.
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- station
|
||
id:
|
||
type: string
|
||
name:
|
||
type: string
|
||
station:
|
||
$ref: '#/components/schemas/Station'
|
||
location:
|
||
$ref: '#/components/schemas/Location'
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
lines:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Line'
|
||
isMeta:
|
||
type: boolean
|
||
regions:
|
||
description: region ids
|
||
type: array
|
||
items:
|
||
type: string
|
||
facilities:
|
||
$ref: '#/components/schemas/Facilities'
|
||
reisezentrumOpeningHours:
|
||
$ref: '#/components/schemas/ReisezentrumOpeningHours'
|
||
stops:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
entrances:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Location'
|
||
transitAuthority:
|
||
type: string
|
||
distance:
|
||
type: number
|
||
Ids:
|
||
description: Ids of a Stop, i.e. dhid as 'DELFI Haltestellen ID'
|
||
type: object
|
||
additionalProperties:
|
||
type: string
|
||
Stop:
|
||
description: |-
|
||
A stop is a single small point or structure at which vehicles stop.
|
||
A stop always belongs to a station. It may for example be a sign, a basic shelter or a railway platform.
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- stop
|
||
id:
|
||
type: string
|
||
name:
|
||
type: string
|
||
location:
|
||
$ref: '#/components/schemas/Location'
|
||
station:
|
||
$ref: '#/components/schemas/Station'
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
lines:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Line'
|
||
isMeta:
|
||
type: boolean
|
||
reisezentrumOpeningHours:
|
||
$ref: '#/components/schemas/ReisezentrumOpeningHours'
|
||
ids:
|
||
$ref: '#/components/schemas/Ids'
|
||
loadFactor:
|
||
type: string
|
||
entrances:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Location'
|
||
transitAuthority:
|
||
type: string
|
||
distance:
|
||
type: number
|
||
Region:
|
||
description: A region is a group of stations, for example a metropolitan area or a geographical or cultural region.
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- region
|
||
id:
|
||
type: string
|
||
name:
|
||
type: string
|
||
stations:
|
||
description: station ids
|
||
type: array
|
||
items:
|
||
type: string
|
||
Line:
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- line
|
||
id:
|
||
type: string
|
||
name:
|
||
type: string
|
||
adminCode:
|
||
type: string
|
||
fahrtNr:
|
||
type: string
|
||
additionalName:
|
||
type: string
|
||
product:
|
||
type: string
|
||
public:
|
||
type: boolean
|
||
mode:
|
||
enum:
|
||
- aircraft
|
||
- bicycle
|
||
- bus
|
||
- car
|
||
- gondola
|
||
- taxi
|
||
- train
|
||
- walking
|
||
- watercraft
|
||
type: string
|
||
routes:
|
||
description: routes ids
|
||
type: array
|
||
items:
|
||
type: string
|
||
operator:
|
||
$ref: '#/components/schemas/Operator'
|
||
express:
|
||
type: boolean
|
||
metro:
|
||
type: boolean
|
||
night:
|
||
type: boolean
|
||
nr:
|
||
type: number
|
||
symbol:
|
||
type: string
|
||
directions:
|
||
type: array
|
||
items:
|
||
type: string
|
||
productName:
|
||
type: string
|
||
RealtimeDataUpdatedAt:
|
||
type: object
|
||
properties:
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
Route:
|
||
description: A route represents a single set of stations, of a single line.
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- route
|
||
id:
|
||
type: string
|
||
line:
|
||
type: string
|
||
mode:
|
||
enum:
|
||
- aircraft
|
||
- bicycle
|
||
- bus
|
||
- car
|
||
- gondola
|
||
- taxi
|
||
- train
|
||
- walking
|
||
- watercraft
|
||
type: string
|
||
stops:
|
||
description: stop ids
|
||
type: array
|
||
items:
|
||
type: string
|
||
Cycle:
|
||
type: object
|
||
properties:
|
||
min:
|
||
type: number
|
||
max:
|
||
type: number
|
||
nr:
|
||
type: number
|
||
ArrivalDeparture:
|
||
type: object
|
||
properties:
|
||
arrival:
|
||
type: number
|
||
departure:
|
||
type: number
|
||
Schedule:
|
||
description: |-
|
||
There are many ways to format schedules of public transport routes.
|
||
This one tries to balance the amount of data and consumability.
|
||
It is specifically geared towards urban public transport, with frequent trains and homogenous travels.
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- schedule
|
||
id:
|
||
type: string
|
||
route:
|
||
type: string
|
||
mode:
|
||
enum:
|
||
- aircraft
|
||
- bicycle
|
||
- bus
|
||
- car
|
||
- gondola
|
||
- taxi
|
||
- train
|
||
- walking
|
||
- watercraft
|
||
type: string
|
||
sequence:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/ArrivalDeparture'
|
||
starts:
|
||
description: array of Unix timestamps
|
||
type: array
|
||
items:
|
||
type: string
|
||
Operator:
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- operator
|
||
id:
|
||
type: string
|
||
name:
|
||
type: string
|
||
Hint:
|
||
type: object
|
||
properties:
|
||
type:
|
||
enum:
|
||
- foreign-id
|
||
- hint
|
||
- local-fare-zone
|
||
- status
|
||
- stop-dhid
|
||
- stop-website
|
||
- transit-authority
|
||
type: string
|
||
code:
|
||
type: string
|
||
summary:
|
||
type: string
|
||
text:
|
||
type: string
|
||
tripId:
|
||
type: string
|
||
Status:
|
||
type: object
|
||
properties:
|
||
type:
|
||
enum:
|
||
- foreign-id
|
||
- hint
|
||
- local-fare-zone
|
||
- status
|
||
- stop-dhid
|
||
- stop-website
|
||
- transit-authority
|
||
type: string
|
||
code:
|
||
type: string
|
||
summary:
|
||
type: string
|
||
text:
|
||
type: string
|
||
tripId:
|
||
type: string
|
||
IcoCrd:
|
||
type: object
|
||
properties:
|
||
x:
|
||
type: number
|
||
'y':
|
||
type: number
|
||
type:
|
||
type: string
|
||
Edge:
|
||
type: object
|
||
properties:
|
||
fromLocation:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
toLocation:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
icon:
|
||
type: object
|
||
properties: {}
|
||
additionalProperties: true
|
||
dir:
|
||
type: number
|
||
icoCrd:
|
||
$ref: '#/components/schemas/IcoCrd'
|
||
Event:
|
||
type: object
|
||
properties:
|
||
fromLocation:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
toLocation:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
start:
|
||
type: string
|
||
end:
|
||
type: string
|
||
sections:
|
||
type: array
|
||
items:
|
||
type: string
|
||
Warning:
|
||
type: object
|
||
properties:
|
||
type:
|
||
enum:
|
||
- status
|
||
- warning
|
||
type: string
|
||
id:
|
||
type: string
|
||
icon:
|
||
type: object
|
||
properties: {}
|
||
additionalProperties: true
|
||
summary:
|
||
type: string
|
||
text:
|
||
type: string
|
||
category:
|
||
type: string
|
||
priority:
|
||
type: number
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
edges:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Edge'
|
||
events:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Event'
|
||
validFrom:
|
||
type: string
|
||
validUntil:
|
||
type: string
|
||
modified:
|
||
type: string
|
||
company:
|
||
type: string
|
||
categories:
|
||
type: array
|
||
items:
|
||
type: number
|
||
affectedLines:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Line'
|
||
fromStops:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
toStops:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
Geometry:
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- Point
|
||
coordinates:
|
||
type: array
|
||
items:
|
||
type: number
|
||
Feature:
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- Feature
|
||
properties:
|
||
anyOf:
|
||
- type: object
|
||
properties: {}
|
||
additionalProperties: true
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
geometry:
|
||
$ref: '#/components/schemas/Geometry'
|
||
FeatureCollection:
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- FeatureCollection
|
||
features:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Feature'
|
||
PrognosisType:
|
||
enum:
|
||
- calculated
|
||
- prognosed
|
||
type: string
|
||
StopOver:
|
||
description: A stopover represents a vehicle stopping at a stop/station at a specific time.
|
||
type: object
|
||
properties:
|
||
stop:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
departure:
|
||
description: null, if last stopOver of trip
|
||
type: string
|
||
departureDelay:
|
||
type: number
|
||
prognosedDeparture:
|
||
type: string
|
||
plannedDeparture:
|
||
type: string
|
||
departurePlatform:
|
||
type: string
|
||
prognosedDeparturePlatform:
|
||
type: string
|
||
plannedDeparturePlatform:
|
||
type: string
|
||
arrival:
|
||
description: null, if first stopOver of trip
|
||
type: string
|
||
arrivalDelay:
|
||
type: number
|
||
prognosedArrival:
|
||
type: string
|
||
plannedArrival:
|
||
type: string
|
||
arrivalPlatform:
|
||
type: string
|
||
prognosedArrivalPlatform:
|
||
type: string
|
||
plannedArrivalPlatform:
|
||
type: string
|
||
remarks:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Hint'
|
||
- $ref: '#/components/schemas/Status'
|
||
- $ref: '#/components/schemas/Warning'
|
||
passBy:
|
||
type: boolean
|
||
cancelled:
|
||
type: boolean
|
||
departurePrognosisType:
|
||
$ref: '#/components/schemas/PrognosisType'
|
||
arrivalPrognosisType:
|
||
$ref: '#/components/schemas/PrognosisType'
|
||
additional:
|
||
type: boolean
|
||
Trip:
|
||
description: Trip – a vehicle stopping at a set of stops at specific times
|
||
type: object
|
||
properties:
|
||
id:
|
||
type: string
|
||
origin:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
destination:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
departure:
|
||
type: string
|
||
plannedDeparture:
|
||
type: string
|
||
prognosedArrival:
|
||
type: string
|
||
departureDelay:
|
||
type: number
|
||
departurePlatform:
|
||
type: string
|
||
prognosedDeparturePlatform:
|
||
type: string
|
||
plannedDeparturePlatform:
|
||
type: string
|
||
arrival:
|
||
type: string
|
||
plannedArrival:
|
||
type: string
|
||
prognosedDeparture:
|
||
type: string
|
||
arrivalDelay:
|
||
type: number
|
||
arrivalPlatform:
|
||
type: string
|
||
prognosedArrivalPlatform:
|
||
type: string
|
||
plannedArrivalPlatform:
|
||
type: string
|
||
stopovers:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/StopOver'
|
||
schedule:
|
||
type: number
|
||
price:
|
||
$ref: '#/components/schemas/Price'
|
||
operator:
|
||
type: number
|
||
direction:
|
||
type: string
|
||
line:
|
||
$ref: '#/components/schemas/Line'
|
||
cancelled:
|
||
type: boolean
|
||
walking:
|
||
type: boolean
|
||
loadFactor:
|
||
type: string
|
||
distance:
|
||
type: number
|
||
public:
|
||
type: boolean
|
||
transfer:
|
||
type: boolean
|
||
cycle:
|
||
$ref: '#/components/schemas/Cycle'
|
||
alternatives:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Alternative'
|
||
polyline:
|
||
$ref: '#/components/schemas/FeatureCollection'
|
||
remarks:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Hint'
|
||
- $ref: '#/components/schemas/Status'
|
||
- $ref: '#/components/schemas/Warning'
|
||
currentLocation:
|
||
$ref: '#/components/schemas/Location'
|
||
departurePrognosisType:
|
||
$ref: '#/components/schemas/PrognosisType'
|
||
arrivalPrognosisType:
|
||
$ref: '#/components/schemas/PrognosisType'
|
||
checkin:
|
||
type: boolean
|
||
scheduledDays:
|
||
$ref: '#/components/schemas/ScheduledDays'
|
||
TripWithRealtimeData:
|
||
type: object
|
||
properties:
|
||
trip:
|
||
$ref: '#/components/schemas/Trip'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
TripsWithRealtimeData:
|
||
type: object
|
||
properties:
|
||
trips:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Trip'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
WarningsWithRealtimeData:
|
||
type: object
|
||
properties:
|
||
remarks:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Warning'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
LinesWithRealtimeData:
|
||
type: object
|
||
properties:
|
||
lines:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Line'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
Price:
|
||
type: object
|
||
properties:
|
||
amount:
|
||
type: number
|
||
currency:
|
||
type: string
|
||
hint:
|
||
type: string
|
||
Alternative:
|
||
type: object
|
||
properties:
|
||
tripId:
|
||
type: string
|
||
direction:
|
||
type: string
|
||
location:
|
||
$ref: '#/components/schemas/Location'
|
||
line:
|
||
$ref: '#/components/schemas/Line'
|
||
stop:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
when:
|
||
type: string
|
||
plannedWhen:
|
||
type: string
|
||
prognosedWhen:
|
||
type: string
|
||
delay:
|
||
type: number
|
||
platform:
|
||
type: string
|
||
plannedPlatform:
|
||
type: string
|
||
prognosedPlatform:
|
||
type: string
|
||
remarks:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Hint'
|
||
- $ref: '#/components/schemas/Status'
|
||
- $ref: '#/components/schemas/Warning'
|
||
cancelled:
|
||
type: boolean
|
||
loadFactor:
|
||
type: string
|
||
provenance:
|
||
type: string
|
||
previousStopovers:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/StopOver'
|
||
nextStopovers:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/StopOver'
|
||
frames:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Frame'
|
||
polyline:
|
||
$ref: '#/components/schemas/FeatureCollection'
|
||
currentTripPosition:
|
||
$ref: '#/components/schemas/Location'
|
||
origin:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
destination:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
prognosisType:
|
||
$ref: '#/components/schemas/PrognosisType'
|
||
Departures:
|
||
type: object
|
||
properties:
|
||
departures:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Alternative'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
Arrivals:
|
||
type: object
|
||
properties:
|
||
arrivals:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Alternative'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
Leg:
|
||
description: Leg of journey
|
||
type: object
|
||
properties:
|
||
tripId:
|
||
type: string
|
||
origin:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
destination:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
departure:
|
||
type: string
|
||
plannedDeparture:
|
||
type: string
|
||
prognosedArrival:
|
||
type: string
|
||
departureDelay:
|
||
type: number
|
||
departurePlatform:
|
||
type: string
|
||
prognosedDeparturePlatform:
|
||
type: string
|
||
plannedDeparturePlatform:
|
||
type: string
|
||
arrival:
|
||
type: string
|
||
plannedArrival:
|
||
type: string
|
||
prognosedDeparture:
|
||
type: string
|
||
arrivalDelay:
|
||
type: number
|
||
arrivalPlatform:
|
||
type: string
|
||
prognosedArrivalPlatform:
|
||
type: string
|
||
plannedArrivalPlatform:
|
||
type: string
|
||
stopovers:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/StopOver'
|
||
schedule:
|
||
type: number
|
||
price:
|
||
$ref: '#/components/schemas/Price'
|
||
operator:
|
||
type: number
|
||
direction:
|
||
type: string
|
||
line:
|
||
$ref: '#/components/schemas/Line'
|
||
reachable:
|
||
type: boolean
|
||
cancelled:
|
||
type: boolean
|
||
walking:
|
||
type: boolean
|
||
loadFactor:
|
||
type: string
|
||
distance:
|
||
type: number
|
||
public:
|
||
type: boolean
|
||
transfer:
|
||
type: boolean
|
||
cycle:
|
||
$ref: '#/components/schemas/Cycle'
|
||
alternatives:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Alternative'
|
||
polyline:
|
||
$ref: '#/components/schemas/FeatureCollection'
|
||
remarks:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Hint'
|
||
- $ref: '#/components/schemas/Status'
|
||
- $ref: '#/components/schemas/Warning'
|
||
currentLocation:
|
||
$ref: '#/components/schemas/Location'
|
||
departurePrognosisType:
|
||
$ref: '#/components/schemas/PrognosisType'
|
||
arrivalPrognosisType:
|
||
$ref: '#/components/schemas/PrognosisType'
|
||
checkin:
|
||
type: boolean
|
||
ScheduledDays:
|
||
type: object
|
||
additionalProperties:
|
||
type: boolean
|
||
Journey:
|
||
description: |-
|
||
A journey is a computed set of directions to get from A to B at a specific time.
|
||
It would typically be the result of a route planning algorithm.
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
enum:
|
||
- journey
|
||
legs:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Leg'
|
||
refreshToken:
|
||
type: string
|
||
remarks:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Hint'
|
||
- $ref: '#/components/schemas/Status'
|
||
- $ref: '#/components/schemas/Warning'
|
||
price:
|
||
$ref: '#/components/schemas/Price'
|
||
cycle:
|
||
$ref: '#/components/schemas/Cycle'
|
||
scheduledDays:
|
||
$ref: '#/components/schemas/ScheduledDays'
|
||
Journeys:
|
||
type: object
|
||
properties:
|
||
earlierRef:
|
||
type: string
|
||
laterRef:
|
||
type: string
|
||
journeys:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Journey'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
JourneyWithRealtimeData:
|
||
type: object
|
||
properties:
|
||
journey:
|
||
$ref: '#/components/schemas/Journey'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
Duration:
|
||
type: object
|
||
properties:
|
||
duration:
|
||
type: number
|
||
stations:
|
||
type: array
|
||
items:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Station'
|
||
- $ref: '#/components/schemas/Stop'
|
||
DurationsWithRealtimeData:
|
||
type: object
|
||
properties:
|
||
reachable:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Duration'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
Frame:
|
||
type: object
|
||
properties:
|
||
origin:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Stop'
|
||
destination:
|
||
anyOf:
|
||
- $ref: '#/components/schemas/Location'
|
||
- $ref: '#/components/schemas/Stop'
|
||
t:
|
||
type: number
|
||
Movement:
|
||
type: object
|
||
properties:
|
||
direction:
|
||
type: string
|
||
tripId:
|
||
type: string
|
||
line:
|
||
$ref: '#/components/schemas/Line'
|
||
location:
|
||
$ref: '#/components/schemas/Location'
|
||
nextStopovers:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/StopOver'
|
||
frames:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Frame'
|
||
polyline:
|
||
$ref: '#/components/schemas/FeatureCollection'
|
||
Radar:
|
||
type: object
|
||
properties:
|
||
movements:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Movement'
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
ServerInfo:
|
||
type: object
|
||
properties:
|
||
hciVersion:
|
||
type: string
|
||
timetableStart:
|
||
type: string
|
||
timetableEnd:
|
||
type: string
|
||
serverTime:
|
||
type: string
|
||
realtimeDataUpdatedAt:
|
||
type: number
|
||
JourneysOptionsCommon:
|
||
type: object
|
||
properties:
|
||
departure:
|
||
description: departure date, undefined corresponds to Date.Now
|
||
default: undefined
|
||
type: string
|
||
format: date-time
|
||
arrival:
|
||
description: arrival date, departure and arrival are mutually exclusive.
|
||
default: undefined
|
||
type: string
|
||
format: date-time
|
||
earlierThan:
|
||
description: earlierThan, use {@link Journeys#earlierRef}, earlierThan and departure/arrival are mutually exclusive.
|
||
default: undefined
|
||
type: string
|
||
laterThan:
|
||
description: laterThan, use {@link Journeys#laterRef}, laterThan and departure/arrival are mutually exclusive.
|
||
default: undefined
|
||
type: string
|
||
results:
|
||
description: how many search results?
|
||
default: 3
|
||
type: number
|
||
via:
|
||
description: let journeys pass this station
|
||
default: undefined
|
||
type: string
|
||
stopovers:
|
||
description: return stations on the way?
|
||
default: false
|
||
type: boolean
|
||
transfers:
|
||
description: 'Maximum nr of transfers. Default: Let HAFAS decide.'
|
||
default: 10
|
||
type: number
|
||
transferTime:
|
||
description: minimum time for a single transfer in minutes
|
||
default: 10
|
||
type: number
|
||
accessibility:
|
||
description: '''none'', ''partial'' or ''complete'''
|
||
default: none
|
||
type: string
|
||
bike:
|
||
description: only bike-friendly journeys
|
||
default: false
|
||
type: boolean
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
tickets:
|
||
description: return tickets? only available with some profiles
|
||
default: false
|
||
type: boolean
|
||
polylines:
|
||
description: return a shape for each leg?
|
||
default: false
|
||
type: boolean
|
||
subStops:
|
||
description: parse & expose sub-stops of stations?
|
||
default: false
|
||
type: boolean
|
||
entrances:
|
||
description: parse & expose entrances of stops/stations?
|
||
default: true
|
||
type: boolean
|
||
remarks:
|
||
description: parse & expose hints & warnings?
|
||
default: true
|
||
type: boolean
|
||
walkingSpeed:
|
||
description: '''slow'', ''normal'', ''fast'''
|
||
default: slow
|
||
type: string
|
||
startWithWalking:
|
||
description: start with walking
|
||
default: false
|
||
type: boolean
|
||
language:
|
||
description: language to get results in
|
||
default: en
|
||
type: string
|
||
scheduledDays:
|
||
description: parse which days each journey is valid on
|
||
default: false
|
||
type: boolean
|
||
when:
|
||
type: string
|
||
format: date-time
|
||
LoyaltyCard:
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
discount:
|
||
type: number
|
||
class:
|
||
type: number
|
||
AgeGroup:
|
||
enum:
|
||
- B
|
||
- E
|
||
- K
|
||
- S
|
||
- 'Y'
|
||
type: string
|
||
RoutingMode:
|
||
enum:
|
||
- FULL
|
||
- HYBRID
|
||
- INFOS
|
||
- 'OFF'
|
||
- REALTIME
|
||
- SERVER_DEFAULT
|
||
type: string
|
||
JourneysOptionsDbProfile:
|
||
description: JourneysOptions specific to Db Profile
|
||
type: object
|
||
properties:
|
||
firstClass:
|
||
description: firstClass
|
||
default: false
|
||
type: boolean
|
||
ageGroup:
|
||
$ref: '#/components/schemas/AgeGroup'
|
||
description: ageGroup
|
||
default: none
|
||
age:
|
||
description: age
|
||
default: none
|
||
type: number
|
||
loyaltyCard:
|
||
$ref: '#/components/schemas/LoyaltyCard'
|
||
description: LoyaltyCard
|
||
default: none
|
||
routingMode:
|
||
$ref: '#/components/schemas/RoutingMode'
|
||
description: RoutingMode
|
||
default: none
|
||
JourneysOptions:
|
||
allOf:
|
||
- $ref: '#/components/schemas/JourneysOptionsCommon'
|
||
- $ref: '#/components/schemas/JourneysOptionsDbProfile'
|
||
JourneysFromTripOptions:
|
||
type: object
|
||
properties:
|
||
stopovers:
|
||
description: return stations on the way?
|
||
default: false
|
||
type: boolean
|
||
transferTime:
|
||
description: minimum time for a single transfer in minutes
|
||
default: 0
|
||
type: number
|
||
accessibility:
|
||
description: '''none'', ''partial'' or ''complete'''
|
||
default: '''none'''
|
||
type: string
|
||
tickets:
|
||
description: return tickets? only available with some profiles
|
||
default: false
|
||
type: boolean
|
||
polylines:
|
||
description: return leg shapes?
|
||
default: false
|
||
type: boolean
|
||
subStops:
|
||
description: parse & expose sub-stops of stations?
|
||
default: true
|
||
type: boolean
|
||
entrances:
|
||
description: parse & expose entrances of stops/stations?
|
||
default: true
|
||
type: boolean
|
||
remarks:
|
||
description: parse & expose hints & warnings?
|
||
default: true
|
||
type: boolean
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
description: products
|
||
default: undefined
|
||
LocationsOptions:
|
||
type: object
|
||
properties:
|
||
fuzzy:
|
||
description: find only exact matches?
|
||
default: true
|
||
type: boolean
|
||
results:
|
||
description: how many search results?
|
||
default: 10
|
||
type: number
|
||
stops:
|
||
description: return stops/stations?
|
||
default: true
|
||
type: boolean
|
||
addresses:
|
||
description: return addresses
|
||
default: false
|
||
type: boolean
|
||
poi:
|
||
description: points of interest
|
||
default: true
|
||
type: boolean
|
||
subStops:
|
||
description: parse & expose sub-stops of stations?
|
||
default: false
|
||
type: boolean
|
||
entrances:
|
||
description: parse & expose entrances of stops/stations?
|
||
default: true
|
||
type: boolean
|
||
linesOfStops:
|
||
description: parse & expose lines at each stop/station?
|
||
default: false
|
||
type: boolean
|
||
language:
|
||
description: Language of the results
|
||
default: en
|
||
type: string
|
||
TripOptions:
|
||
type: object
|
||
properties:
|
||
stopovers:
|
||
description: return stations on the way?
|
||
default: true
|
||
type: boolean
|
||
polyline:
|
||
description: return a shape for the trip?
|
||
default: false
|
||
type: boolean
|
||
subStops:
|
||
description: parse & expose sub-stops of stations?
|
||
default: true
|
||
type: boolean
|
||
entrances:
|
||
description: parse & expose entrances of stops/stations?
|
||
default: true
|
||
type: boolean
|
||
remarks:
|
||
description: parse & expose hints & warnings?
|
||
default: true
|
||
type: boolean
|
||
scheduledDays:
|
||
description: parse which days each journey is valid on
|
||
default: false
|
||
type: boolean
|
||
language:
|
||
description: Language of the results
|
||
default: en
|
||
type: string
|
||
StopOptions:
|
||
type: object
|
||
properties:
|
||
linesOfStops:
|
||
description: parse & expose lines at the stop/station?
|
||
default: false
|
||
type: boolean
|
||
subStops:
|
||
description: parse & expose sub-stops of stations?
|
||
default: true
|
||
type: boolean
|
||
entrances:
|
||
description: parse & expose entrances of stops/stations?
|
||
default: true
|
||
type: boolean
|
||
remarks:
|
||
description: parse & expose hints & warnings?
|
||
default: true
|
||
type: boolean
|
||
language:
|
||
description: Language of the results
|
||
default: en
|
||
type: string
|
||
DeparturesArrivalsOptions:
|
||
type: object
|
||
properties:
|
||
when:
|
||
description: departure date, undefined corresponds to Date.Now
|
||
default: undefined
|
||
type: string
|
||
format: date-time
|
||
direction:
|
||
description: only show departures heading to this station, only supported for `dbweb` profile
|
||
default: undefined
|
||
type: string
|
||
line:
|
||
description: filter by line ID
|
||
default: undefined
|
||
type: string
|
||
duration:
|
||
description: show departures for the next n minutes
|
||
default: 120
|
||
type: number
|
||
results:
|
||
description: max. number of results; `null` means "whatever HAFAS wants"
|
||
default: 10
|
||
type: number
|
||
subStops:
|
||
description: parse & expose sub-stops of stations?
|
||
default: true
|
||
type: boolean
|
||
entrances:
|
||
description: parse & expose entrances of stops/stations?
|
||
default: true
|
||
type: boolean
|
||
linesOfStops:
|
||
description: parse & expose lines at the stop/station?
|
||
default: false
|
||
type: boolean
|
||
remarks:
|
||
description: parse & expose hints & warnings?
|
||
default: false
|
||
type: boolean
|
||
stopovers:
|
||
description: fetch & parse previous/next stopovers?
|
||
default: false
|
||
type: boolean
|
||
includeRelatedStations:
|
||
description: departures at related stations
|
||
default: true
|
||
type: boolean
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
description: products
|
||
default: undefined
|
||
language:
|
||
description: language
|
||
default: en
|
||
type: string
|
||
RefreshJourneyOptions:
|
||
type: object
|
||
properties:
|
||
stopovers:
|
||
description: return stations on the way?
|
||
default: false
|
||
type: boolean
|
||
polylines:
|
||
description: return a shape for each leg? mutually exclusive with tickets
|
||
default: false
|
||
type: boolean
|
||
tickets:
|
||
description: return tickets? mutually exclusive with polylines
|
||
default: false
|
||
type: boolean
|
||
subStops:
|
||
description: not supported
|
||
default: true
|
||
type: boolean
|
||
entrances:
|
||
description: not supported
|
||
default: true
|
||
type: boolean
|
||
remarks:
|
||
description: parse & expose hints & warnings?
|
||
default: true
|
||
type: boolean
|
||
scheduledDays:
|
||
description: parse & expose dates the journey is valid on?
|
||
default: false
|
||
type: boolean
|
||
language:
|
||
description: language
|
||
default: en
|
||
type: string
|
||
NearByOptions:
|
||
type: object
|
||
properties:
|
||
results:
|
||
description: maximum number of results
|
||
default: 8
|
||
type: number
|
||
distance:
|
||
description: maximum walking distance in meters
|
||
default: undefined
|
||
type: number
|
||
poi:
|
||
description: return points of interest?
|
||
default: false
|
||
type: boolean
|
||
stops:
|
||
description: return stops/stations?
|
||
default: true
|
||
type: boolean
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
description: products
|
||
default: undefined
|
||
subStops:
|
||
description: parse & expose sub-stops of stations?
|
||
default: true
|
||
type: boolean
|
||
entrances:
|
||
description: parse & expose entrances of stops/stations?
|
||
default: true
|
||
type: boolean
|
||
linesOfStops:
|
||
description: parse & expose lines at each stop/station?
|
||
default: false
|
||
type: boolean
|
||
language:
|
||
description: language
|
||
default: en
|
||
type: string
|
||
ReachableFromOptions:
|
||
type: object
|
||
properties:
|
||
when:
|
||
description: when
|
||
default: undefined
|
||
type: string
|
||
format: date-time
|
||
maxTransfers:
|
||
description: maximum of transfers
|
||
default: 5
|
||
type: number
|
||
maxDuration:
|
||
description: maximum travel duration in minutes, pass `null` for infinite
|
||
default: 20
|
||
type: number
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
description: products
|
||
default: undefined
|
||
subStops:
|
||
description: parse & expose sub-stops of stations?
|
||
default: true
|
||
type: boolean
|
||
entrances:
|
||
description: parse & expose entrances of stops/stations?
|
||
default: true
|
||
type: boolean
|
||
polylines:
|
||
description: return leg shapes?
|
||
default: false
|
||
type: boolean
|
||
BoundingBox:
|
||
type: object
|
||
properties:
|
||
north:
|
||
type: number
|
||
west:
|
||
type: number
|
||
south:
|
||
type: number
|
||
east:
|
||
type: number
|
||
RadarOptions:
|
||
type: object
|
||
properties:
|
||
results:
|
||
description: maximum number of vehicles
|
||
default: 256
|
||
type: number
|
||
frames:
|
||
description: nr of frames to compute
|
||
default: 3
|
||
type: number
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
description: optionally an object of booleans
|
||
default: null
|
||
duration:
|
||
description: compute frames for the next n seconds
|
||
default: 20
|
||
type: number
|
||
subStops:
|
||
description: parse & expose sub-stops of stations?
|
||
default: true
|
||
type: boolean
|
||
entrances:
|
||
description: parse & expose entrances of stops/stations?
|
||
default: true
|
||
type: boolean
|
||
polylines:
|
||
description: return a shape for the trip?
|
||
default: false
|
||
type: boolean
|
||
when:
|
||
description: when
|
||
default: undefined
|
||
type: string
|
||
format: date-time
|
||
Filter:
|
||
type: object
|
||
properties:
|
||
type:
|
||
type: string
|
||
mode:
|
||
type: string
|
||
value:
|
||
type: string
|
||
TripsByNameOptions:
|
||
type: object
|
||
properties:
|
||
when:
|
||
description: departure date, undefined corresponds to Date.Now
|
||
default: undefined
|
||
type: string
|
||
format: date-time
|
||
fromWhen:
|
||
type: string
|
||
format: date-time
|
||
untilWhen:
|
||
type: string
|
||
format: date-time
|
||
onlyCurrentlyRunning:
|
||
type: boolean
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
currentlyStoppingAt:
|
||
type: string
|
||
lineName:
|
||
type: string
|
||
operatorNames:
|
||
type: array
|
||
items:
|
||
type: string
|
||
additionalFilters:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Filter'
|
||
RemarksOptions:
|
||
type: object
|
||
properties:
|
||
from:
|
||
anyOf:
|
||
- type: string
|
||
format: date-time
|
||
- type: number
|
||
to:
|
||
anyOf:
|
||
- type: string
|
||
format: date-time
|
||
- type: number
|
||
results:
|
||
description: maximum number of remarks
|
||
default: 100
|
||
type: number
|
||
products:
|
||
$ref: '#/components/schemas/Products'
|
||
polylines:
|
||
description: return leg shapes? (not supported by all endpoints)
|
||
default: false
|
||
type: boolean
|
||
language:
|
||
description: Language of the results
|
||
default: en
|
||
type: string
|
||
LinesOptions:
|
||
type: object
|
||
properties:
|
||
language:
|
||
description: Language of the results
|
||
default: en
|
||
type: string
|
||
ServerOptions:
|
||
type: object
|
||
properties:
|
||
versionInfo:
|
||
description: versionInfo
|
||
default: true
|
||
type: boolean
|
||
language:
|
||
description: Language of the results
|
||
default: en
|
||
type: string
|
||
HafasClient:
|
||
type: object
|
||
properties:
|
||
journeys:
|
||
description: Retrieves journeys
|
||
type: object
|
||
refreshJourney:
|
||
description: refreshes a Journey
|
||
type: object
|
||
trip:
|
||
description: Refetch information about a trip
|
||
type: object
|
||
departures:
|
||
description: Retrieves departures
|
||
type: object
|
||
arrivals:
|
||
description: Retrieves arrivals
|
||
type: object
|
||
journeysFromTrip:
|
||
description: Retrieves journeys from trip id to station
|
||
type: object
|
||
locations:
|
||
description: Retrieves locations or stops
|
||
type: object
|
||
stop:
|
||
description: Retrieves information about a stop
|
||
type: object
|
||
nearby:
|
||
description: Retrieves nearby stops from location
|
||
type: object
|
||
reachableFrom:
|
||
description: Retrieves stations reachable within a certain time from a location
|
||
type: object
|
||
radar:
|
||
description: Retrieves all vehicles currently in an area.
|
||
type: object
|
||
tripsByName:
|
||
description: Retrieves trips by name.
|
||
type: object
|
||
remarks:
|
||
description: Fetches all remarks known to the HAFAS endpoint
|
||
type: object
|
||
lines:
|
||
description: Fetches all lines known to the HAFAS endpoint
|
||
type: object
|
||
serverInfo:
|
||
description: Fetches meta information from the HAFAS endpoint
|
||
type: object
|
||
ProfileSpecificProducts:
|
||
type: object
|
||
properties:
|
||
nationalExpress:
|
||
description: Include InterCityExpress (ICE)?
|
||
type: boolean
|
||
default: true
|
||
national:
|
||
description: Include InterCity & EuroCity (IC/EC)?
|
||
type: boolean
|
||
default: true
|
||
regionalExpress:
|
||
description: Include InterRegio, FlixTrain, Westbahn etc.?
|
||
type: boolean
|
||
default: true
|
||
regional:
|
||
description: Include Regio (RB)?
|
||
type: boolean
|
||
default: true
|
||
suburban:
|
||
description: Include S-Bahn (S)?
|
||
type: boolean
|
||
default: true
|
||
bus:
|
||
description: Include Bus (B)?
|
||
type: boolean
|
||
default: true
|
||
ferry:
|
||
description: Include Ferry (F)?
|
||
type: boolean
|
||
default: true
|
||
subway:
|
||
description: Include U-Bahn (U)?
|
||
type: boolean
|
||
default: true
|
||
tram:
|
||
description: Include Tram (T)?
|
||
type: boolean
|
||
default: true
|
||
taxi:
|
||
description: Include Group Taxi (Taxi)?
|
||
type: boolean
|
||
default: true
|
||
externalDocs:
|
||
description: human-readable docs
|
||
url: https://github.com/public-transport/db-vendo-client/blob/main/docs/api.md
|