---
title: "Computes optimal connections from one place to another."
method: GET
path: "/api/v6/plan"
tags: ["routing"]
---

# Computes optimal connections from one place to another.

`GET /api/v6/plan`

## Query parameters

- `fromPlace` string, required
- `toPlace` string, required
- `radius` number, double
- `via` string[]
- `viaMinimumStay` integer[]
- `time` string, date-time
- `maxTransfers` integer
- `maxTravelTime` integer
- `minTransferTime` integer
- `additionalTransferTime` integer
- `transferTimeFactor` number
- `maxMatchingDistance` number
- `pedestrianProfile` 'FOOT' | 'WHEELCHAIR' — Different accessibility profiles for pedestrians.
- `pedestrianSpeed` number — Average speed for pedestrian routing in meters per second
- `cyclingSpeed` number — Average speed for bike routing in meters per second
- `vehicleHeight` number — Vehicle height for HGV routing in meters
- `vehicleWidth` number — Vehicle width for HGV routing in meters
- `vehicleLength` number — Vehicle length for HGV routing in meters
- `vehicleWeight` number — Vehicle gross weight for HGV routing in tons
- `vehicleHazmat` boolean — Whether the vehicle carries hazardous materials for HGV routing
- `vehicleHazmatWater` boolean — Whether the vehicle carries hazardous materials dangerous to water for HGV routing
- `vehicleAxleCount` integer — Axle count for HGV routing
- `vehicleAxleLoad` number — Maximum axle load for HGV routing in tons
- `vehicleTrailer` boolean — Whether the vehicle has a trailer for HGV routing
- `vehicleTopSpeed` integer — Vehicle top speed for HGV routing in km/h
- `vehicleLezAccess` boolean — Whether the vehicle is allowed to use low-emission zones for HGV routing
- `elevationCosts` 'NONE' | 'LOW' | 'HIGH' — Different elevation cost profiles for street routing. Using a elevation cost profile will prefer routes with a smaller incline and smaller difference in elevation, even if the routed way is longer. - `NONE`: Ignore elevation data for routing. This is the default behavior - `LOW`: Add a low penalty for inclines. This will favor longer paths, if the elevation increase and incline are smaller. - `HIGH`: Add a high penalty for inclines. This will favor even longer paths, if the elevation increase and incline are smaller.
- `useRoutedTransfers` boolean
- `detailedTransfers` boolean
- `detailedLegs` boolean
- `joinInterlinedLegs` boolean
- `transitModes` Mode[]
- `directModes` Mode[]
- `preTransitModes` Mode[]
- `postTransitModes` Mode[]
- `directRentalFormFactors` RentalFormFactor[]
- `preTransitRentalFormFactors` RentalFormFactor[]
- `postTransitRentalFormFactors` RentalFormFactor[]
- `directRentalPropulsionTypes` RentalPropulsionType[]
- `preTransitRentalPropulsionTypes` RentalPropulsionType[]
- `postTransitRentalPropulsionTypes` RentalPropulsionType[]
- `directRentalProviders` string[]
- `directRentalProviderGroups` string[]
- `preTransitRentalProviders` string[]
- `preTransitRentalProviderGroups` string[]
- `postTransitRentalProviders` string[]
- `postTransitRentalProviderGroups` string[]
- `ignoreDirectRentalReturnConstraints` boolean
- `ignorePreTransitRentalReturnConstraints` boolean
- `ignorePostTransitRentalReturnConstraints` boolean
- `numItineraries` integer
- `maxItineraries` integer
- `pageCursor` string
- `timetableView` boolean
- `arriveBy` boolean
- `searchWindow` integer
- `requireBikeTransport` boolean
- `requireCarTransport` boolean
- `noCompulsoryReservation` boolean
- `maxPreTransitTime` integer
- `maxPostTransitTime` integer
- `maxDirectTime` integer
- `fastestDirectFactor` number
- `timeout` integer
- `passengers` integer
- `luggage` integer
- `slowDirect` boolean
- `fastestSlowDirectFactor` number
- `withFares` boolean
- `numLegAlternatives` integer
- `withScheduledSkippedStops` boolean
- `realtimeMode` 'OFF' | 'REALTIME_ANNOTATION_ONLY' | 'REALTIME' — Controls whether realtime data (delays, cancellations, added/changed trips) is used. - `REALTIME`: use realtime data for routing/sorting. - `REALTIME_ANNOTATION_ONLY`: route, sort and window on the scheduled timetable only, but still annotate the response with realtime data. - `OFF`: use the scheduled timetable only, with no realtime annotation.
- `language` string[]
- `algorithm` 'RAPTOR' | 'PONG' | 'TB'

## Response `200`

routing result

- object
  - `requestParameters` object, required — the routing query
  - `debugOutput` object, required — debug statistics
  - `from` Place, required
    - `name` string, required — name of the transit stop / PoI / address
    - `stopId` string — The ID of the stop. This is often something that users don't care about.
    - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
    - `importance` number — The importance of the stop between 0-1.
    - `lat` number, required — latitude
    - `lon` number, required — longitude
    - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
    - `tz` string — timezone name (e.g. "Europe/Berlin")
    - `arrival` string, date-time — arrival time
    - `departure` string, date-time — departure time
    - `scheduledArrival` string, date-time — scheduled arrival time
    - `scheduledDeparture` string, date-time — scheduled departure time
    - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
    - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
    - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
    - `description` string — description of the location that provides more detailed information
    - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
    - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
    - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
    - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
    - `alerts` Alert[] — Alerts for this stop.
      - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
      - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
        - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
        - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
      - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
        - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
        - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
      - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
      - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
      - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
      - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
      - `url` string — The URL which provides additional information about the alert.
      - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
      - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
      - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
      - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
      - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
      - `imageUrl` string — String containing an URL linking to an image.
      - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
      - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
    - `flex` string — for `FLEX` transports, the flex location area or location group name
    - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
    - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
    - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
    - `modes` Mode[] — available transport modes for stops
  - `to` Place, required
    - `name` string, required — name of the transit stop / PoI / address
    - `stopId` string — The ID of the stop. This is often something that users don't care about.
    - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
    - `importance` number — The importance of the stop between 0-1.
    - `lat` number, required — latitude
    - `lon` number, required — longitude
    - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
    - `tz` string — timezone name (e.g. "Europe/Berlin")
    - `arrival` string, date-time — arrival time
    - `departure` string, date-time — departure time
    - `scheduledArrival` string, date-time — scheduled arrival time
    - `scheduledDeparture` string, date-time — scheduled departure time
    - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
    - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
    - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
    - `description` string — description of the location that provides more detailed information
    - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
    - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
    - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
    - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
    - `alerts` Alert[] — Alerts for this stop.
      - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
      - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
        - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
        - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
      - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
        - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
        - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
      - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
      - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
      - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
      - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
      - `url` string — The URL which provides additional information about the alert.
      - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
      - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
      - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
      - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
      - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
      - `imageUrl` string — String containing an URL linking to an image.
      - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
      - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
    - `flex` string — for `FLEX` transports, the flex location area or location group name
    - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
    - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
    - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
    - `modes` Mode[] — available transport modes for stops
  - `direct` Itinerary[], required — Direct trips by `WALK`, `BIKE`, `CAR`, etc. without time-dependency. The starting time (`arriveBy=false`) / arrival time (`arriveBy=true`) is always the queried `time` parameter (set to \"now\" if not set). But all `direct` connections are meant to be independent of absolute times.
    - `duration` integer, required — journey duration in seconds
    - `startTime` string, date-time, required — journey departure time
    - `endTime` string, date-time, required — journey arrival time
    - `transfers` integer, required — The number of transfers this trip has.
    - `id` string, required — Experimental (format might change). Opaque itinerary identifier. Pass it as `itineraryId` to `refresh-itinerary` endpoint for reconstruction using the new schedule/realtime data.
    - `legs` Leg[], required — Journey legs
      - `mode` 'WALK' | 'BIKE' | 'RENTAL' | 'CAR' | 'HGV' | 'CAR_PARKING' | 'CAR_DROPOFF' | 'ODM' | 'RIDE_SHARING' | 'FLEX' | 'DEBUG_BUS_ROUTE' | 'DEBUG_RAILWAY_ROUTE' | 'DEBUG_FERRY_ROUTE' | 'TRANSIT' | 'TRAM' | 'SUBWAY' | 'FERRY' | 'AIRPLANE' | 'BUS' | 'COACH' | 'RAIL' | 'HIGHSPEED_RAIL' | 'LONG_DISTANCE' | 'NIGHT_RAIL' | 'REGIONAL_FAST_RAIL' | 'REGIONAL_RAIL' | 'SUBURBAN' | 'FUNICULAR' | 'AERIAL_LIFT' | 'OTHER' | 'AREAL_LIFT' | 'METRO' | 'CABLE_CAR', required — # Street modes - `WALK` - `BIKE` - `RENTAL` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs. - `CAR` - `HGV` Heavy goods vehicles (only supported for direct connections) - `CAR_PARKING` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs. - `CAR_DROPOFF` Experimental. Expect unannounced breaking changes (without version bumps) for all perameters and returned structs. - `ODM` on-demand taxis from the Prima+ÖV Project - `RIDE_SHARING` ride sharing from the Prima+ÖV Project - `FLEX` flexible transports # Transit modes - `TRANSIT`: translates to `TRAM,FERRY,AIRPLANE,BUS,COACH,RAIL,ODM,RIDE_SHARING,FUNICULAR,AERIAL_LIFT,OTHER` - `TRAM`: trams - `SUBWAY`: subway trains (Paris Metro, London Underground, but also NYC Subway, Hamburger Hochbahn, and other non-underground services) - `FERRY`: ferries - `AIRPLANE`: airline flights - `BUS`: short distance buses (does not include `COACH`) - `COACH`: long distance buses (does not include `BUS`) - `RAIL`: translates to `HIGHSPEED_RAIL,LONG_DISTANCE,NIGHT_RAIL,REGIONAL_RAIL,SUBURBAN,SUBWAY` - `HIGHSPEED_RAIL`: long distance high speed trains (e.g. TGV) - `LONG_DISTANCE`: long distance inter city trains - `NIGHT_RAIL`: long distance night trains - `REGIONAL_FAST_RAIL`: deprecated, `REGIONAL_RAIL` will be used - `REGIONAL_RAIL`: regional train - `SUBURBAN`: suburban trains (e.g. S-Bahn, RER, Elizabeth Line, ...) - `ODM`: demand responsive transport - `RIDE_SHARING`: ride sharing - `FUNICULAR`: Funicular. Any rail system designed for steep inclines. - `AERIAL_LIFT`: Aerial lift, suspended cable car (e.g., gondola lift, aerial tramway). Cable transport where cabins, cars, gondolas or open chairs are suspended by means of one or more cables. - `AREAL_LIFT`: deprecated - `METRO`: deprecated - `CABLE_CAR`: deprecated
      - `from` Place, required
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `to` Place, required
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `duration` integer, required — Leg duration in seconds If leg is footpath: The footpath duration is derived from the default footpath duration using the query parameters `transferTimeFactor` and `additionalTransferTime` as follows: `leg.duration = defaultDuration * transferTimeFactor + additionalTransferTime.` In case the defaultDuration is needed, it can be calculated by `defaultDuration = (leg.duration - additionalTransferTime) / transferTimeFactor`. Note that the default values are `transferTimeFactor = 1` and `additionalTransferTime = 0` in case they are not explicitly provided in the query.
      - `startTime` string, date-time, required — leg departure time
      - `endTime` string, date-time, required — leg arrival time
      - `scheduledStartTime` string, date-time, required — scheduled leg departure time
      - `scheduledEndTime` string, date-time, required — scheduled leg arrival time
      - `realTime` boolean, required — Whether there is real-time data about this leg
      - `scheduled` boolean, required — Whether this leg was originally scheduled to run or is an additional service. Scheduled times will equal realtime times in this case.
      - `distance` number — For non-transit legs the distance traveled while traversing this leg in meters.
      - `interlineWithPreviousLeg` boolean — For transit legs, if the rider should stay on the vehicle as it changes route names.
      - `headsign` string — For transit legs, the headsign of the bus or train being used. For non-transit legs, null
      - `tripFrom` Place
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `tripTo` Place
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `category` Category — not available for GTFS datasets by default For NeTEx it contains information about the vehicle category, e.g. IC/InterCity
        - `id` string, required
        - `name` string, required
        - `shortName` string, required
      - `routeId` string
      - `routeUrl` string
      - `directionId` string
      - `routeColor` string
      - `routeTextColor` string
      - `routeType` integer
      - `agencyName` string
      - `agencyUrl` string
      - `agencyFareUrl` string
      - `agencyId` string
      - `tripId` string
      - `routeShortName` string
      - `routeLongName` string
      - `tripShortName` string
      - `displayName` string
      - `cancelled` boolean — Whether this trip is cancelled
      - `source` string — Filename and line number where this trip is from
      - `intermediateStops` Place[] — For transit legs, intermediate stops between the Place where the leg originates and the Place where the leg ends. For non-transit legs, null.
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `legGeometry` EncodedPolyline, required
        - `points` string, required — The encoded points of the polyline using the Google polyline encoding.
        - `precision` integer, required — The precision of the returned polyline (7 for /v1, 6 for /v2) Be aware that with precision 7, coordinates with |longitude| > 107.37 are undefined/will overflow.
        - `length` integer, required — The number of points in the string
      - `steps` StepInstruction[] — A series of turn by turn instructions used for walking, biking and driving. This field is omitted if the request disables detailed leg output.
        - `relativeDirection` 'DEPART' | 'HARD_LEFT' | 'LEFT' | 'SLIGHTLY_LEFT' | 'CONTINUE' | 'SLIGHTLY_RIGHT' | 'RIGHT' | 'HARD_RIGHT' | 'CIRCLE_CLOCKWISE' | 'CIRCLE_COUNTERCLOCKWISE' | 'STAIRS' | 'ELEVATOR' | 'UTURN_LEFT' | 'UTURN_RIGHT', required
        - `distance` number, required — The distance in meters that this step takes.
        - `fromLevel` number, required — level where this segment starts, based on OpenStreetMap data
        - `toLevel` number, required — level where this segment starts, based on OpenStreetMap data
        - `osmWay` integer — OpenStreetMap way ID
        - `fromOsmNode` integer — OpenStreetMap node ID where this segment starts
        - `toOsmNode` integer — OpenStreetMap node ID where this segment ends
        - `polyline` EncodedPolyline, required
          - `points` string, required — The encoded points of the polyline using the Google polyline encoding.
          - `precision` integer, required — The precision of the returned polyline (7 for /v1, 6 for /v2) Be aware that with precision 7, coordinates with |longitude| > 107.37 are undefined/will overflow.
          - `length` integer, required — The number of points in the string
        - `streetName` string, required — The name of the street.
        - `exit` string, required — Not implemented! When exiting a highway or traffic circle, the exit name/number.
        - `stayOn` boolean, required — Not implemented! Indicates whether or not a street changes direction at an intersection.
        - `area` boolean, required — Not implemented! This step is on an open area, such as a plaza or train platform, and thus the directions should say something like "cross"
        - `toll` boolean — Indicates that a fee must be paid by general traffic to use a road, road bridge or road tunnel.
        - `accessRestriction` string — Experimental. Indicates whether access to this part of the route is restricted. See: https://wiki.openstreetmap.org/wiki/Conditional_restrictions
        - `elevationUp` integer — incline in meters across this path segment
        - `elevationDown` integer — decline in meters across this path segment
      - `rental` Rental — Vehicle rental
        - `providerId` string, required — Rental provider ID
        - `providerGroupId` string, required — Rental provider group ID
        - `systemId` string, required — Vehicle share system ID
        - `systemName` string — Vehicle share system name
        - `url` string — URL of the vehicle share system
        - `color` string — Color associated with this provider, in hexadecimal RGB format (e.g. "#FF0000" for red). Can be empty.
        - `stationName` string — Name of the station
        - `fromStationName` string — Name of the station where the vehicle is picked up (empty for free floating vehicles)
        - `toStationName` string — Name of the station where the vehicle is returned (empty for free floating vehicles)
        - `rentalUriAndroid` string — Rental URI for Android (deep link to the specific station or vehicle)
        - `rentalUriIOS` string — Rental URI for iOS (deep link to the specific station or vehicle)
        - `rentalUriWeb` string — Rental URI for web (deep link to the specific station or vehicle)
        - `formFactor` 'BICYCLE' | 'CARGO_BICYCLE' | 'CAR' | 'MOPED' | 'SCOOTER_STANDING' | 'SCOOTER_SEATED' | 'OTHER'
        - `propulsionType` 'HUMAN' | 'ELECTRIC_ASSIST' | 'ELECTRIC' | 'COMBUSTION' | 'COMBUSTION_DIESEL' | 'HYBRID' | 'PLUG_IN_HYBRID' | 'HYDROGEN_FUEL_CELL'
        - `returnConstraint` 'NONE' | 'ANY_STATION' | 'ROUNDTRIP_STATION'
      - `fareTransferIndex` integer — Index into `Itinerary.fareTransfers` array to identify which fare transfer this leg belongs to
      - `effectiveFareLegIndex` integer — Index into the `Itinerary.fareTransfers[fareTransferIndex].effectiveFareLegProducts` array to identify which effective fare leg this itinerary leg belongs to
      - `alerts` Alert[] — Alerts for this stop.
        - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
        - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
          - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
        - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
          - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
        - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
        - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
        - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
        - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
        - `url` string — The URL which provides additional information about the alert.
        - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
        - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
        - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
        - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
        - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
        - `imageUrl` string — String containing an URL linking to an image.
        - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
        - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
      - `loopedCalendarSince` string, date-time — If set, this attribute indicates that this trip has been expanded beyond the feed end date (enabled by config flag `timetable.dataset.extend_calendar`) by looping active weekdays, e.g. from calendar.txt in GTFS.
      - `bikesAllowed` boolean — Whether bikes can be carried on this leg.
      - `wheelchairAccessible` 'ACCESSIBLE' | 'NOT_ACCESSIBLE'
      - `reservation` 'NONE' | 'COMPULSORY'
      - `ticketUrls` TicketUrls
        - `web` string
        - `android` string
        - `ios` string
      - `alternatives` array[] — Alternative connections that can replace this transit leg. Each alternative is normally a sequence of 3 legs: `[ingress footpath, transit, egress footpath]`. Only populated when the request sets `numLegAlternatives` > 0 (capped to that value). Interlined legs: `alternatives` is populated only on the first (main) leg of an interlined chain. Subsequent interlined legs (carrying `interlineWithPreviousLeg=true`) leave `alternatives` unset. Alternatives are valid for the whole interlined segment. An alternative may itself cover an interlined segment: the alternative's middle transit then expands into multiple interlined legs when `joinInterlinedLegs=false`. In that case the alternative contains more than 3 legs: ingress footpath, followed by N interlined transit legs (the secondary ones carrying `interlineWithPreviousLeg=true`), followed by an egress footpath.
        - Leg[]
    - `fareTransfers` FareTransfer[] — Fare information
      - `rule` 'A_AB' | 'A_AB_B' | 'AB'
      - `transferProducts` FareProduct[]
        - `name` string, required — The name of the fare product as displayed to riders.
        - `amount` number, required — The cost of the fare product. May be negative to represent transfer discounts. May be zero to represent a fare product that is free.
        - `currency` string, required — ISO 4217 currency code. The currency of the cost of the fare product.
        - `riderCategory` RiderCategory
          - `riderCategoryName` string, required — Rider category name as displayed to the rider.
          - `isDefaultFareCategory` boolean, required — Specifies if this category should be considered the default (i.e. the main category displayed to riders).
          - `eligibilityUrl` string — URL to a web page providing detailed information about the rider category and/or its eligibility criteria.
        - `media` FareMedia
          - `fareMediaName` string — Name of the fare media. Required for transit cards and mobile apps.
          - `fareMediaType` 'NONE' | 'PAPER_TICKET' | 'TRANSIT_CARD' | 'CONTACTLESS_EMV' | 'MOBILE_APP', required — - `NONE`: No fare media involved (e.g., cash payment) - `PAPER_TICKET`: Physical paper ticket - `TRANSIT_CARD`: Physical transit card with stored value - `CONTACTLESS_EMV`: cEMV (contactless payment) - `MOBILE_APP`: Mobile app with virtual transit cards/passes
      - `effectiveFareLegProducts` array[], required — Lists all valid fare products for the effective fare legs. This is an `array<array<FareProduct>>` where the inner array lists all possible fare products that would cover this effective fare leg. Each "effective fare leg" can have multiple options for adult/child/weekly/monthly/day/one-way tickets etc. You can see the outer array as AND (you need one ticket for each effective fare leg (`A_AB_B`), the first effective fare leg (`A_AB`) or no fare leg at all but only the transfer product (`AB`) and the inner array as OR (you can choose which ticket to buy)
        - array[]
          - FareProduct[]
            - `name` string, required — The name of the fare product as displayed to riders.
            - `amount` number, required — The cost of the fare product. May be negative to represent transfer discounts. May be zero to represent a fare product that is free.
            - `currency` string, required — ISO 4217 currency code. The currency of the cost of the fare product.
            - `riderCategory` RiderCategory
              - …
            - `media` FareMedia
              - …
  - `itineraries` Itinerary[], required — list of itineraries
    - `duration` integer, required — journey duration in seconds
    - `startTime` string, date-time, required — journey departure time
    - `endTime` string, date-time, required — journey arrival time
    - `transfers` integer, required — The number of transfers this trip has.
    - `id` string, required — Experimental (format might change). Opaque itinerary identifier. Pass it as `itineraryId` to `refresh-itinerary` endpoint for reconstruction using the new schedule/realtime data.
    - `legs` Leg[], required — Journey legs
      - `mode` 'WALK' | 'BIKE' | 'RENTAL' | 'CAR' | 'HGV' | 'CAR_PARKING' | 'CAR_DROPOFF' | 'ODM' | 'RIDE_SHARING' | 'FLEX' | 'DEBUG_BUS_ROUTE' | 'DEBUG_RAILWAY_ROUTE' | 'DEBUG_FERRY_ROUTE' | 'TRANSIT' | 'TRAM' | 'SUBWAY' | 'FERRY' | 'AIRPLANE' | 'BUS' | 'COACH' | 'RAIL' | 'HIGHSPEED_RAIL' | 'LONG_DISTANCE' | 'NIGHT_RAIL' | 'REGIONAL_FAST_RAIL' | 'REGIONAL_RAIL' | 'SUBURBAN' | 'FUNICULAR' | 'AERIAL_LIFT' | 'OTHER' | 'AREAL_LIFT' | 'METRO' | 'CABLE_CAR', required — # Street modes - `WALK` - `BIKE` - `RENTAL` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs. - `CAR` - `HGV` Heavy goods vehicles (only supported for direct connections) - `CAR_PARKING` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs. - `CAR_DROPOFF` Experimental. Expect unannounced breaking changes (without version bumps) for all perameters and returned structs. - `ODM` on-demand taxis from the Prima+ÖV Project - `RIDE_SHARING` ride sharing from the Prima+ÖV Project - `FLEX` flexible transports # Transit modes - `TRANSIT`: translates to `TRAM,FERRY,AIRPLANE,BUS,COACH,RAIL,ODM,RIDE_SHARING,FUNICULAR,AERIAL_LIFT,OTHER` - `TRAM`: trams - `SUBWAY`: subway trains (Paris Metro, London Underground, but also NYC Subway, Hamburger Hochbahn, and other non-underground services) - `FERRY`: ferries - `AIRPLANE`: airline flights - `BUS`: short distance buses (does not include `COACH`) - `COACH`: long distance buses (does not include `BUS`) - `RAIL`: translates to `HIGHSPEED_RAIL,LONG_DISTANCE,NIGHT_RAIL,REGIONAL_RAIL,SUBURBAN,SUBWAY` - `HIGHSPEED_RAIL`: long distance high speed trains (e.g. TGV) - `LONG_DISTANCE`: long distance inter city trains - `NIGHT_RAIL`: long distance night trains - `REGIONAL_FAST_RAIL`: deprecated, `REGIONAL_RAIL` will be used - `REGIONAL_RAIL`: regional train - `SUBURBAN`: suburban trains (e.g. S-Bahn, RER, Elizabeth Line, ...) - `ODM`: demand responsive transport - `RIDE_SHARING`: ride sharing - `FUNICULAR`: Funicular. Any rail system designed for steep inclines. - `AERIAL_LIFT`: Aerial lift, suspended cable car (e.g., gondola lift, aerial tramway). Cable transport where cabins, cars, gondolas or open chairs are suspended by means of one or more cables. - `AREAL_LIFT`: deprecated - `METRO`: deprecated - `CABLE_CAR`: deprecated
      - `from` Place, required
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `to` Place, required
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `duration` integer, required — Leg duration in seconds If leg is footpath: The footpath duration is derived from the default footpath duration using the query parameters `transferTimeFactor` and `additionalTransferTime` as follows: `leg.duration = defaultDuration * transferTimeFactor + additionalTransferTime.` In case the defaultDuration is needed, it can be calculated by `defaultDuration = (leg.duration - additionalTransferTime) / transferTimeFactor`. Note that the default values are `transferTimeFactor = 1` and `additionalTransferTime = 0` in case they are not explicitly provided in the query.
      - `startTime` string, date-time, required — leg departure time
      - `endTime` string, date-time, required — leg arrival time
      - `scheduledStartTime` string, date-time, required — scheduled leg departure time
      - `scheduledEndTime` string, date-time, required — scheduled leg arrival time
      - `realTime` boolean, required — Whether there is real-time data about this leg
      - `scheduled` boolean, required — Whether this leg was originally scheduled to run or is an additional service. Scheduled times will equal realtime times in this case.
      - `distance` number — For non-transit legs the distance traveled while traversing this leg in meters.
      - `interlineWithPreviousLeg` boolean — For transit legs, if the rider should stay on the vehicle as it changes route names.
      - `headsign` string — For transit legs, the headsign of the bus or train being used. For non-transit legs, null
      - `tripFrom` Place
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `tripTo` Place
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `category` Category — not available for GTFS datasets by default For NeTEx it contains information about the vehicle category, e.g. IC/InterCity
        - `id` string, required
        - `name` string, required
        - `shortName` string, required
      - `routeId` string
      - `routeUrl` string
      - `directionId` string
      - `routeColor` string
      - `routeTextColor` string
      - `routeType` integer
      - `agencyName` string
      - `agencyUrl` string
      - `agencyFareUrl` string
      - `agencyId` string
      - `tripId` string
      - `routeShortName` string
      - `routeLongName` string
      - `tripShortName` string
      - `displayName` string
      - `cancelled` boolean — Whether this trip is cancelled
      - `source` string — Filename and line number where this trip is from
      - `intermediateStops` Place[] — For transit legs, intermediate stops between the Place where the leg originates and the Place where the leg ends. For non-transit legs, null.
        - `name` string, required — name of the transit stop / PoI / address
        - `stopId` string — The ID of the stop. This is often something that users don't care about.
        - `parentId` string — If it's not a root stop, this field contains the `stopId` of the parent stop.
        - `importance` number — The importance of the stop between 0-1.
        - `lat` number, required — latitude
        - `lon` number, required — longitude
        - `level` number — level according to OpenStreetMap If no level is given, the field will be unset. For older versions (v1-v5), this field is mandatory and therefore set to 0. Affected endpoints: plan, trip, stoptimes, one-to-all, map/stops, map/trips
        - `tz` string — timezone name (e.g. "Europe/Berlin")
        - `arrival` string, date-time — arrival time
        - `departure` string, date-time — departure time
        - `scheduledArrival` string, date-time — scheduled arrival time
        - `scheduledDeparture` string, date-time — scheduled departure time
        - `scheduledTrack` string — scheduled track from the static schedule timetable dataset
        - `track` string — The current track/platform information, updated with real-time updates if available. Can be missing if neither real-time updates nor the schedule timetable contains track information.
        - `stopCode` string — Short, abbreviated identifier of the stop intended for users (e.g. printed on signage, used in SMS / passenger info systems). Comes from the GTFS `stop_code` field.
        - `description` string — description of the location that provides more detailed information
        - `vertexType` 'NORMAL' | 'BIKESHARE' | 'TRANSIT' — - `NORMAL` - latitude / longitude coordinate or address - `BIKESHARE` - bike sharing station - `TRANSIT` - transit stop
        - `pickupType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `dropoffType` 'NORMAL' | 'NOT_ALLOWED' — - `NORMAL` - entry/exit is possible normally - `NOT_ALLOWED` - entry/exit is not allowed
        - `cancelled` boolean — Whether this stop is cancelled due to the realtime situation.
        - `alerts` Alert[] — Alerts for this stop.
          - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
          - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
            - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
            - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
          - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
          - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
          - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
          - `url` string — The URL which provides additional information about the alert.
          - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
          - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
          - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
          - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
          - `imageUrl` string — String containing an URL linking to an image.
          - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
          - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
        - `flex` string — for `FLEX` transports, the flex location area or location group name
        - `flexId` string — for `FLEX` transports, the flex location area ID or location group ID
        - `flexStartPickupDropOffWindow` string, date-time — Time that on-demand service becomes available
        - `flexEndPickupDropOffWindow` string, date-time — Time that on-demand service ends
        - `modes` Mode[] — available transport modes for stops
      - `legGeometry` EncodedPolyline, required
        - `points` string, required — The encoded points of the polyline using the Google polyline encoding.
        - `precision` integer, required — The precision of the returned polyline (7 for /v1, 6 for /v2) Be aware that with precision 7, coordinates with |longitude| > 107.37 are undefined/will overflow.
        - `length` integer, required — The number of points in the string
      - `steps` StepInstruction[] — A series of turn by turn instructions used for walking, biking and driving. This field is omitted if the request disables detailed leg output.
        - `relativeDirection` 'DEPART' | 'HARD_LEFT' | 'LEFT' | 'SLIGHTLY_LEFT' | 'CONTINUE' | 'SLIGHTLY_RIGHT' | 'RIGHT' | 'HARD_RIGHT' | 'CIRCLE_CLOCKWISE' | 'CIRCLE_COUNTERCLOCKWISE' | 'STAIRS' | 'ELEVATOR' | 'UTURN_LEFT' | 'UTURN_RIGHT', required
        - `distance` number, required — The distance in meters that this step takes.
        - `fromLevel` number, required — level where this segment starts, based on OpenStreetMap data
        - `toLevel` number, required — level where this segment starts, based on OpenStreetMap data
        - `osmWay` integer — OpenStreetMap way ID
        - `fromOsmNode` integer — OpenStreetMap node ID where this segment starts
        - `toOsmNode` integer — OpenStreetMap node ID where this segment ends
        - `polyline` EncodedPolyline, required
          - `points` string, required — The encoded points of the polyline using the Google polyline encoding.
          - `precision` integer, required — The precision of the returned polyline (7 for /v1, 6 for /v2) Be aware that with precision 7, coordinates with |longitude| > 107.37 are undefined/will overflow.
          - `length` integer, required — The number of points in the string
        - `streetName` string, required — The name of the street.
        - `exit` string, required — Not implemented! When exiting a highway or traffic circle, the exit name/number.
        - `stayOn` boolean, required — Not implemented! Indicates whether or not a street changes direction at an intersection.
        - `area` boolean, required — Not implemented! This step is on an open area, such as a plaza or train platform, and thus the directions should say something like "cross"
        - `toll` boolean — Indicates that a fee must be paid by general traffic to use a road, road bridge or road tunnel.
        - `accessRestriction` string — Experimental. Indicates whether access to this part of the route is restricted. See: https://wiki.openstreetmap.org/wiki/Conditional_restrictions
        - `elevationUp` integer — incline in meters across this path segment
        - `elevationDown` integer — decline in meters across this path segment
      - `rental` Rental — Vehicle rental
        - `providerId` string, required — Rental provider ID
        - `providerGroupId` string, required — Rental provider group ID
        - `systemId` string, required — Vehicle share system ID
        - `systemName` string — Vehicle share system name
        - `url` string — URL of the vehicle share system
        - `color` string — Color associated with this provider, in hexadecimal RGB format (e.g. "#FF0000" for red). Can be empty.
        - `stationName` string — Name of the station
        - `fromStationName` string — Name of the station where the vehicle is picked up (empty for free floating vehicles)
        - `toStationName` string — Name of the station where the vehicle is returned (empty for free floating vehicles)
        - `rentalUriAndroid` string — Rental URI for Android (deep link to the specific station or vehicle)
        - `rentalUriIOS` string — Rental URI for iOS (deep link to the specific station or vehicle)
        - `rentalUriWeb` string — Rental URI for web (deep link to the specific station or vehicle)
        - `formFactor` 'BICYCLE' | 'CARGO_BICYCLE' | 'CAR' | 'MOPED' | 'SCOOTER_STANDING' | 'SCOOTER_SEATED' | 'OTHER'
        - `propulsionType` 'HUMAN' | 'ELECTRIC_ASSIST' | 'ELECTRIC' | 'COMBUSTION' | 'COMBUSTION_DIESEL' | 'HYBRID' | 'PLUG_IN_HYBRID' | 'HYDROGEN_FUEL_CELL'
        - `returnConstraint` 'NONE' | 'ANY_STATION' | 'ROUNDTRIP_STATION'
      - `fareTransferIndex` integer — Index into `Itinerary.fareTransfers` array to identify which fare transfer this leg belongs to
      - `effectiveFareLegIndex` integer — Index into the `Itinerary.fareTransfers[fareTransferIndex].effectiveFareLegProducts` array to identify which effective fare leg this itinerary leg belongs to
      - `alerts` Alert[] — Alerts for this stop.
        - `code` string — Attribute or notice code (e.g. for HRDF or NeTEx)
        - `communicationPeriod` TimeRange[] — Time when the alert should be shown to the user. If missing, the alert will be shown as long as it appears in the feed. If multiple ranges are given, the alert will be shown during all of them.
          - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
        - `impactPeriod` TimeRange[] — Time when the services are affected by the disruption mentioned in the alert.
          - `start` string, date-time, required — If missing, the interval starts at minus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
          - `end` string, date-time, required — If missing, the interval ends at plus infinity. If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
        - `cause` 'UNKNOWN_CAUSE' | 'OTHER_CAUSE' | 'TECHNICAL_PROBLEM' | 'STRIKE' | 'DEMONSTRATION' | 'ACCIDENT' | 'HOLIDAY' | 'WEATHER' | 'MAINTENANCE' | 'CONSTRUCTION' | 'POLICE_ACTIVITY' | 'MEDICAL_EMERGENCY' | 'SPECIAL_EVENT' — Cause of this alert.
        - `causeDetail` string — Description of the cause of the alert that allows for agency-specific language; more specific than the Cause.
        - `effect` 'NO_SERVICE' | 'REDUCED_SERVICE' | 'SIGNIFICANT_DELAYS' | 'DETOUR' | 'ADDITIONAL_SERVICE' | 'MODIFIED_SERVICE' | 'OTHER_EFFECT' | 'UNKNOWN_EFFECT' | 'STOP_MOVED' | 'NO_EFFECT' | 'ACCESSIBILITY_ISSUE' — The effect of this problem on the affected entity.
        - `effectDetail` string — Description of the effect of the alert that allows for agency-specific language; more specific than the Effect.
        - `url` string — The URL which provides additional information about the alert.
        - `headerText` string, required — Header for the alert. This plain-text string will be highlighted, for example in boldface.
        - `descriptionText` string, required — Description for the alert. This plain-text string will be formatted as the body of the alert (or shown on an explicit "expand" request by the user). The information in the description should add to the information of the header.
        - `ttsHeaderText` string — Text containing the alert's header to be used for text-to-speech implementations. This field is the text-to-speech version of header_text. It should contain the same information as headerText but formatted such that it can read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
        - `ttsDescriptionText` string — Text containing a description for the alert to be used for text-to-speech implementations. This field is the text-to-speech version of description_text. It should contain the same information as description_text but formatted such that it can be read as text-to-speech (for example, abbreviations removed, numbers spelled out, etc.)
        - `severityLevel` 'UNKNOWN_SEVERITY' | 'INFO' | 'WARNING' | 'SEVERE' — The severity of the alert.
        - `imageUrl` string — String containing an URL linking to an image.
        - `imageMediaType` string — IANA media type as to specify the type of image to be displayed. The type must start with "image/"
        - `imageAlternativeText` string — Text describing the appearance of the linked image in the image field (e.g., in case the image can't be displayed or the user can't see the image for accessibility reasons). See the HTML spec for alt image text.
      - `loopedCalendarSince` string, date-time — If set, this attribute indicates that this trip has been expanded beyond the feed end date (enabled by config flag `timetable.dataset.extend_calendar`) by looping active weekdays, e.g. from calendar.txt in GTFS.
      - `bikesAllowed` boolean — Whether bikes can be carried on this leg.
      - `wheelchairAccessible` 'ACCESSIBLE' | 'NOT_ACCESSIBLE'
      - `reservation` 'NONE' | 'COMPULSORY'
      - `ticketUrls` TicketUrls
        - `web` string
        - `android` string
        - `ios` string
      - `alternatives` array[] — Alternative connections that can replace this transit leg. Each alternative is normally a sequence of 3 legs: `[ingress footpath, transit, egress footpath]`. Only populated when the request sets `numLegAlternatives` > 0 (capped to that value). Interlined legs: `alternatives` is populated only on the first (main) leg of an interlined chain. Subsequent interlined legs (carrying `interlineWithPreviousLeg=true`) leave `alternatives` unset. Alternatives are valid for the whole interlined segment. An alternative may itself cover an interlined segment: the alternative's middle transit then expands into multiple interlined legs when `joinInterlinedLegs=false`. In that case the alternative contains more than 3 legs: ingress footpath, followed by N interlined transit legs (the secondary ones carrying `interlineWithPreviousLeg=true`), followed by an egress footpath.
        - Leg[]
    - `fareTransfers` FareTransfer[] — Fare information
      - `rule` 'A_AB' | 'A_AB_B' | 'AB'
      - `transferProducts` FareProduct[]
        - `name` string, required — The name of the fare product as displayed to riders.
        - `amount` number, required — The cost of the fare product. May be negative to represent transfer discounts. May be zero to represent a fare product that is free.
        - `currency` string, required — ISO 4217 currency code. The currency of the cost of the fare product.
        - `riderCategory` RiderCategory
          - `riderCategoryName` string, required — Rider category name as displayed to the rider.
          - `isDefaultFareCategory` boolean, required — Specifies if this category should be considered the default (i.e. the main category displayed to riders).
          - `eligibilityUrl` string — URL to a web page providing detailed information about the rider category and/or its eligibility criteria.
        - `media` FareMedia
          - `fareMediaName` string — Name of the fare media. Required for transit cards and mobile apps.
          - `fareMediaType` 'NONE' | 'PAPER_TICKET' | 'TRANSIT_CARD' | 'CONTACTLESS_EMV' | 'MOBILE_APP', required — - `NONE`: No fare media involved (e.g., cash payment) - `PAPER_TICKET`: Physical paper ticket - `TRANSIT_CARD`: Physical transit card with stored value - `CONTACTLESS_EMV`: cEMV (contactless payment) - `MOBILE_APP`: Mobile app with virtual transit cards/passes
      - `effectiveFareLegProducts` array[], required — Lists all valid fare products for the effective fare legs. This is an `array<array<FareProduct>>` where the inner array lists all possible fare products that would cover this effective fare leg. Each "effective fare leg" can have multiple options for adult/child/weekly/monthly/day/one-way tickets etc. You can see the outer array as AND (you need one ticket for each effective fare leg (`A_AB_B`), the first effective fare leg (`A_AB`) or no fare leg at all but only the transfer product (`AB`) and the inner array as OR (you can choose which ticket to buy)
        - array[]
          - FareProduct[]
            - `name` string, required — The name of the fare product as displayed to riders.
            - `amount` number, required — The cost of the fare product. May be negative to represent transfer discounts. May be zero to represent a fare product that is free.
            - `currency` string, required — ISO 4217 currency code. The currency of the cost of the fare product.
            - `riderCategory` RiderCategory
              - …
            - `media` FareMedia
              - …
  - `previousPageCursor` string, required — Use the cursor to get the previous page of results. Insert the cursor into the request and post it to get the previous page. The previous page is a set of itineraries departing BEFORE the first itinerary in the result for a depart after search. When using the default sort order the previous set of itineraries is inserted before the current result.
  - `nextPageCursor` string, required — Use the cursor to get the next page of results. Insert the cursor into the request and post it to get the next page. The next page is a set of itineraries departing AFTER the last itinerary in this result.

## Other responses

- `400` — Bad Request
- `404` — Not Found
- `422` — Unprocessable Entity
- `500` — Internal Server Error

---

[API](https://skmtc.net/motis-project/apis/motis-api.md) · [All operations](https://skmtc.net/motis-project/apis/motis-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/motis-project/motis-api/versions/947bd5a43e8d/schema)
