Skip to content
Mathew Trivett edited this page Oct 15, 2020 · 4 revisions
type TflApiPresentationEntitiesAccidentStatsAccidentDetail {
  borough: String
  casualties: [TflApiPresentationEntitiesAccidentStatsCasualty]
  date: String
  id: Int
  lat: Float
  location: String
  lon: Float
  severity: String
  vehicles: [TflApiPresentationEntitiesAccidentStatsVehicle]
}
type TflApiPresentationEntitiesAccidentStatsCasualty {
  age: Int
  ageBand: String
  class: String
  mode: String
  severity: String
}
type TflApiPresentationEntitiesAccidentStatsVehicle {
  type: String
}
type TflApiPresentationEntitiesPlace {
  """
  A bag of additional key/value pairs with extra information about this place.
  """
  additionalProperties: [TflApiPresentationEntitiesAdditionalProperties]
  children: [TflApiPresentationEntitiesPlace]
  childrenUrls: [String]

  """A human readable name."""
  commonName: String

  """
  The distance of the place from its search point, if this is the result
              of a geographical search, otherwise zero.
  """
  distance: Float

  """A unique identifier."""
  id: String

  """WGS84 latitude of the location."""
  lat: Float

  """WGS84 longitude of the location."""
  lon: Float

  """The type of Place. See /Place/Meta/placeTypes for possible values."""
  placeType: String

  """The unique location of this resource."""
  url: String
}
type TflApiPresentationEntitiesAdditionalProperties {
  category: String
  key: String
  modified: String
  sourceSystemKey: String
  value: String
}
type TflApiPresentationEntitiesMode {
  isFarePaying: Boolean
  isScheduledService: Boolean
  isTflService: Boolean
  modeName: String
}
type TflApiPresentationEntitiesLine {
  created: String
  crowding: TflApiPresentationEntitiesCrowding
  disruptions: [TflApiPresentationEntitiesDisruption]
  id: String
  lineStatuses: [TflApiPresentationEntitiesLineStatus]
  modeName: String
  modified: String
  name: String
  routeSections: [TflApiPresentationEntitiesMatchedRoute]
  serviceTypes: [TflApiPresentationEntitiesLineServiceTypeInfo]
}
type TflApiPresentationEntitiesCrowding {
  """Busiest times at a station (static information)"""
  passengerFlows: [TflApiPresentationEntitiesPassengerFlow]

  """
  Train Loading on a scale 1-6, 1 being "Very quiet" and 6 being "Exceptionally busy" (static information)
  """
  trainLoadings: [TflApiPresentationEntitiesTrainLoading]
}
type TflApiPresentationEntitiesPassengerFlow {
  """
  Time in 24hr format with 15 minute intervals e.g. 0500-0515, 0515-0530 etc.
  """
  timeSlice: String

  """Count of passenger flow towards a platform"""
  value: Int
}
type TflApiPresentationEntitiesTrainLoading {
  """Direction in regards to Journey Planner i.e. inbound or outbound"""
  direction: String

  """
  The Line Name e.g. "Victoria"
  """
  line: String

  """Direction of the Line e.g. NB, SB, WB etc."""
  lineDirection: String

  """Naptan of the adjacent station"""
  naptanTo: String

  """Direction displayed on the platform e.g. NB, SB, WB etc."""
  platformDirection: String

  """
  Time in 24hr format with 15 minute intervals e.g. 0500-0515, 0515-0530 etc.
  """
  timeSlice: String

  """
  Scale between 1-6, 
               1 = Very quiet, 2 = Quiet, 3 = Fairly busy, 4 = Busy, 5 = Very busy, 6 = Exceptionally busy
  """
  value: Int
}
"""Represents a disruption to a route within the transport network."""
type TflApiPresentationEntitiesDisruption {
  """Gets or sets the additionaInfo of this disruption."""
  additionalInfo: String

  """Gets or sets the routes affected by this disruption"""
  affectedRoutes: [TflApiPresentationEntitiesRouteSection]

  """Gets or sets the stops affected by this disruption"""
  affectedStops: [TflApiPresentationEntitiesStopPoint]

  """Gets or sets the category of this dispruption."""
  category: Category

  """Gets or sets the description of the category."""
  categoryDescription: String

  """Text describing the closure type"""
  closureText: String

  """Gets or sets the date/time when this disruption was created."""
  created: String

  """Gets or sets the description of this disruption."""
  description: String

  """Gets or sets the date/time when this disruption was last updated."""
  lastUpdate: String

  """Gets or sets the summary of this disruption."""
  summary: String

  """Gets or sets the disruption type of this dispruption."""
  type: String
}
type TflApiPresentationEntitiesRouteSection {
  """The name of the Destination StopPoint"""
  destinationName: String

  """Inbound or Outbound"""
  direction: String

  """The Id of the route"""
  id: String

  """The Id of the Line"""
  lineId: String

  """The co-ordinates of the route's path as a geoJSON lineString"""
  lineString: String

  """
  Name such as "72"
  """
  name: String

  """The name of the Origin StopPoint"""
  originationName: String

  """The route code"""
  routeCode: String
  routeSectionNaptanEntrySequence: [TflApiPresentationEntitiesRouteSectionNaptanEntrySequence]

  """The DateTime that the Service containing this Route is valid from."""
  validFrom: String

  """The DateTime that the Service containing this Route is valid until."""
  validTo: String
}
type TflApiPresentationEntitiesRouteSectionNaptanEntrySequence {
  ordinal: Int
  stopPoint: TflApiPresentationEntitiesStopPoint
}
type TflApiPresentationEntitiesStopPoint {
  accessibilitySummary: String

  """
  A bag of additional key/value pairs with extra information about this place.
  """
  additionalProperties: [TflApiPresentationEntitiesAdditionalProperties]
  children: [TflApiPresentationEntitiesPlace]
  childrenUrls: [String]

  """A human readable name."""
  commonName: String

  """
  The distance of the place from its search point, if this is the result
              of a geographical search, otherwise zero.
  """
  distance: Float
  fullName: String
  hubNaptanCode: String
  icsCode: String

  """A unique identifier."""
  id: String

  """
  The indicator of the stop point e.g. "Stop K"
  """
  indicator: String

  """WGS84 latitude of the location."""
  lat: Float
  lineGroup: [TflApiPresentationEntitiesLineGroup]
  lineModeGroups: [TflApiPresentationEntitiesLineModeGroup]
  lines: [TflApiPresentationEntitiesIdentifier]

  """WGS84 longitude of the location."""
  lon: Float
  modes: [String]
  naptanId: String
  naptanMode: String

  """The type of Place. See /Place/Meta/placeTypes for possible values."""
  placeType: String
  platformName: String
  smsCode: String
  stationNaptan: String
  status: Boolean

  """
  The stop letter, if it could be cleansed from the Indicator e.g. "K"
  """
  stopLetter: String
  stopType: String

  """The unique location of this resource."""
  url: String
}
type TflApiPresentationEntitiesLineGroup {
  lineIdentifier: [String]
  naptanIdReference: String
  stationAtcoCode: String
}
type TflApiPresentationEntitiesLineModeGroup {
  lineIdentifier: [String]
  modeName: String
}
type TflApiPresentationEntitiesIdentifier {
  crowding: TflApiPresentationEntitiesCrowding
  fullName: String
  id: String
  name: String
  routeType: RouteType
  status: Status
  type: String
  uri: String
}
enum RouteType {
  UNKNOWN
  ALL
  CYCLE_SUPERHIGHWAYS
  QUIETWAYS
  CYCLEWAYS
  MINI_HOLLANDS
  CENTRAL_LONDON_GRID
  STREETSPACE_ROUTE
}
enum Status {
  UNKNOWN
  ALL
  OPEN
  IN_PROGRESS
  PLANNED
  PLANNED___SUBJECT_TO_FEASIBILITY_AND_CONSULTATION_
  NOT_OPEN
}
enum Category {
  UNDEFINED
  REALTIME
  PLANNEDWORK
  INFORMATION
  EVENT
  CROWDING
  STATUSALERT
}
type TflApiPresentationEntitiesLineStatus {
  created: String

  """Represents a disruption to a route within the transport network."""
  disruption: TflApiPresentationEntitiesDisruption
  id: Int
  lineId: String
  modified: String
  reason: String
  statusSeverity: Int
  statusSeverityDescription: String
  validityPeriods: [TflApiPresentationEntitiesValidityPeriod]
}
"""Represents a period for which a planned works is valid."""
type TflApiPresentationEntitiesValidityPeriod {
  """Gets or sets the start date."""
  fromDate: String

  """If true is a realtime status rather than planned or info"""
  isNow: Boolean

  """Gets or sets the end date."""
  toDate: String
}
"""Description of a Route used in Route search results."""
type TflApiPresentationEntitiesMatchedRoute {
  """The Id (NaPTAN code) or the Destination StopPoint"""
  destination: String

  """The name of the Destination StopPoint"""
  destinationName: String

  """Inbound or Outbound"""
  direction: String

  """
  Name such as "72"
  """
  name: String

  """The name of the Origin StopPoint"""
  originationName: String

  """The Id (NaPTAN code) of the Origin StopPoint"""
  originator: String

  """The route code"""
  routeCode: String

  """Regular or Night"""
  serviceType: String

  """The DateTime that the Service containing this Route is valid from."""
  validFrom: String

  """The DateTime that the Service containing this Route is valid until."""
  validTo: String
}
type TflApiPresentationEntitiesLineServiceTypeInfo {
  name: String
  uri: String
}
"""DTO to capture the prediction details"""
type TflApiPresentationEntitiesPrediction {
  """Bearing (between 0 to 359)"""
  bearing: String

  """The current location of the vehicle."""
  currentLocation: String

  """Name of the destination"""
  destinationName: String

  """Naptan Identifier for the prediction's destination"""
  destinationNaptanId: String

  """Direction (unified to inbound/outbound)"""
  direction: String

  """The expected arrival time of the vehicle at the stop/station"""
  expectedArrival: String

  """The identitier for the prediction"""
  id: String

  """Unique identifier for the Line"""
  lineId: String

  """Line Name"""
  lineName: String

  """The mode name of the station/line the prediction relates to"""
  modeName: String

  """Identifier for the prediction"""
  naptanId: String

  """
  The type of the operation (1: is new or has been updated, 2: should be deleted from any client cache)
  """
  operationType: Int

  """Platform name (for bus, this is the stop letter)"""
  platformName: String

  """Station name"""
  stationName: String

  """The expiry time for the prediction"""
  timeToLive: String

  """Prediction of the Time to station in seconds"""
  timeToStation: Int

  """
  Timestamp for when the prediction was inserted/modified (source column drives what objects are broadcast on each iteration)
  """
  timestamp: String
  timing: TflApiPresentationEntitiesPredictionTiming

  """
  Routing information or other descriptive text about the path of the vehicle towards the destination
  """
  towards: String

  """
  The actual vehicle in transit (for train modes, the leading car of the rolling set)
  """
  vehicleId: String
}
type TflApiPresentationEntitiesPredictionTiming {
  countdownServerAdjustment: String
  insert: String
  read: String
  received: String
  sent: String
  source: String
}
enum Direction {
  INBOUND
  OUTBOUND
  ALL
}
enum ServiceTypes2ListItem {
  REGULAR
  NIGHT
}
type TflApiPresentationEntitiesStatusSeverity {
  description: String
  modeName: String
  severityLevel: Int
}
type TflApiPresentationEntitiesTimetableResponse {
  direction: String
  disambiguation: TflApiPresentationEntitiesTimetablesDisambiguation
  lineId: String
  lineName: String
  pdfUrl: String
  stations: [TflApiPresentationEntitiesMatchedStop]
  statusErrorMessage: String
  stops: [TflApiPresentationEntitiesMatchedStop]
  timetable: TflApiPresentationEntitiesTimetable
}
type TflApiPresentationEntitiesTimetablesDisambiguation {
  disambiguationOptions: [TflApiPresentationEntitiesTimetablesDisambiguationOption]
}
type TflApiPresentationEntitiesTimetablesDisambiguationOption {
  description: String
  uri: String
}
type TflApiPresentationEntitiesMatchedStop {
  accessibilitySummary: String
  direction: String
  hasDisruption: Boolean
  icsId: String
  id: String
  lat: Float
  lines: [TflApiPresentationEntitiesIdentifier]
  lon: Float
  modes: [String]
  name: String
  parentId: String
  routeId: Int
  stationId: String
  status: Boolean
  stopLetter: String
  stopType: String
  topMostParentId: String
  towards: String
  url: String
  zone: String
}

```graphql
type TflApiPresentationEntitiesTimetable {
  departureStopId: String
  routes: [TflApiPresentationEntitiesTimetableRoute]
}
type TflApiPresentationEntitiesTimetableRoute {
  schedules: [TflApiPresentationEntitiesSchedule]
  stationIntervals: [TflApiPresentationEntitiesStationInterval]
}
type TflApiPresentationEntitiesSchedule {
  firstJourney: TflApiPresentationEntitiesKnownJourney
  knownJourneys: [TflApiPresentationEntitiesKnownJourney]
  lastJourney: TflApiPresentationEntitiesKnownJourney
  name: String
  periods: [TflApiPresentationEntitiesPeriod]
}
type TflApiPresentationEntitiesKnownJourney {
  hour: String
  intervalId: Int
  minute: String
}
type TflApiPresentationEntitiesPeriod {
  frequency: TflApiPresentationEntitiesServiceFrequency
  fromTime: TflApiPresentationEntitiesTwentyFourHourClockTime
  toTime: TflApiPresentationEntitiesTwentyFourHourClockTime
  type: Type
}
type TflApiPresentationEntitiesServiceFrequency {
  highestFrequency: Float
  lowestFrequency: Float
}
type TflApiPresentationEntitiesTwentyFourHourClockTime {
  hour: String
  minute: String
}
enum Type {
  NORMAL
  FREQUENCYHOURS
  FREQUENCYMINUTES
  UNKNOWN
}
type TflApiPresentationEntitiesStationInterval {
  id: String
  intervals: [TflApiPresentationEntitiesInterval]
}
type TflApiPresentationEntitiesInterval {
  stopId: String
  timeToArrival: Float
}
type TflApiPresentationEntitiesActiveServiceType {
  mode: String
  serviceType: String
}
"""Bike point occupancy"""
type TflApiPresentationEntitiesBikePointOccupancy {
  """Total bike counts"""
  bikesCount: Int

  """Empty docks"""
  emptyDocks: Int

  """Id of the bike point such as BikePoints_1"""
  id: String

  """Name / Common name of the bike point"""
  name: String

  """Total docks available"""
  totalDocks: Int
}
""""""
type TflApiPresentationEntitiesChargeConnectorOccupancy {
  """"""
  id: Int

  """"""
  sourceSystemPlaceId: String

  """"""
  status: String
}
type TflApiPresentationEntitiesPlaceCategory {
  availableKeys: [String]
  category: String
}
type TflApiPresentationEntitiesRoadCorridor {
  """
  The Bounds of the Corridor, given by the south-east followed by the north-west co-ordinate
              pair in geoJSON format e.g. "[[-1.241531,51.242151],[1.641223,53.765721]]"
  """
  bounds: String

  """
  The display name of the Corridor e.g. "North Circular (A406)". This
              may be identical to the Id.
  """
  displayName: String

  """
  The Envelope of the Corridor, given by the corner co-ordinates of a rectangular (four-point) polygon
              in geoJSON format e.g. "[[-1.241531,51.242151],[-1.241531,53.765721],[1.641223,53.765721],[1.641223,51.242151]]"
  """
  envelope: String

  """
  The group name of the Corridor e.g. "Central London". Most corridors are not grouped, in which case this field can be null.
  """
  group: String

  """
  The Id of the Corridor e.g. "A406"
  """
  id: String

  """
  The end of the period over which status has been aggregated, or null if this is the current corridor status.
  """
  statusAggregationEndDate: String

  """
  The start of the period over which status has been aggregated, or null if this is the current corridor status.
  """
  statusAggregationStartDate: String

  """Standard multi-mode status severity code"""
  statusSeverity: String

  """Description of the status severity as applied to RoadCorridors"""
  statusSeverityDescription: String

  """URL to retrieve this Corridor."""
  url: String
}
type TflApiPresentationEntitiesRoadDisruption {
  """Describes the nature of disruption e.g. Traffic Incidents, Works"""
  category: String

  """
  Full text of comments describing the disruption, including details of any road closures and diversions, where appropriate.
  """
  comments: String

  """The Ids of affected corridors, if any."""
  corridorIds: [String]

  """
  Text of the most recent update from the LSTCC on the state of the
               disruption, including the current traffic impact and any advice to
               road users.
  """
  currentUpdate: String

  """
  The time when the last CurrentUpdate description was recorded, 
              or null if no CurrentUpdate has been applied.
  """
  currentUpdateDateTime: String

  """
  The date and time on which the disruption ended. For planned disruptions, this date will have a valid value. For unplanned 
              disruptions in progress, this field will be omitted.
  """
  endDateTime: String
  geography: SystemDataSpatialDbGeography
  geometry: SystemDataSpatialDbGeography

  """
  True if any of the affected Streets have a "Full Closure" status, false otherwise. A RoadDisruption that has HasClosures is considered a 
              Severe or Serious disruption for severity filtering purposes.
  """
  hasClosures: Boolean

  """Unique identifier for the road disruption"""
  id: String

  """
  True if the disruption is planned on a future date that is open to change
  """
  isProvisional: Boolean

  """
  The date and time on which the disruption was last modified in the system. This information can reliably be used by a developer to quickly
              compare two instances of the same disruption to determine if it has been changed.
  """
  lastModifiedTime: String

  """
  This describes the level of potential impact on traffic operations of the disruption. 
              High = e.g. a one-off disruption on a major or high profile route which will require a high level of operational attention 
              Medium = This is the default value 
              Low = e.g. a frequently occurring disruption which is well known
  """
  levelOfInterest: String

  """The text of any associated link"""
  linkText: String

  """The url of any associated link"""
  linkUrl: String

  """
  Main road name / number (borough) or preset area name where the disruption is located. This might be useful for a map popup where space is limited.
  """
  location: String

  """
  An ordinal of the disruption based on severity, level of interest and corridor.
  """
  ordinal: Int

  """
  Latitude and longitude (WGS84) of the centroid of the disruption, stored in a geoJSON-formatted string.
  """
  point: String
  publishEndDate: String

  """TDM Additional properties"""
  publishStartDate: String
  recurringSchedules: [TflApiPresentationEntitiesRoadDisruptionSchedule]
  roadDisruptionImpactAreas: [TflApiPresentationEntitiesRoadDisruptionImpactArea]
  roadDisruptionLines: [TflApiPresentationEntitiesRoadDisruptionLine]
  roadProject: TflApiPresentationEntitiesRoadProject

  """A description of the severity of the disruption."""
  severity: String

  """
  The date and time which the disruption started. For a planned disruption (i.e. planned road works) this date will be in the future.
              For unplanned disruptions, this will default to the date on which the disruption was first recorded, but may be adjusted by the operator.
  """
  startDateTime: String

  """
  This describes the status of the disruption.  
              Active = currently in progress 
              Active Long Term = currently in progress and long term
              Scheduled = scheduled to start within the next 180 days
              Recurring Works = planned maintenance works that follow a regular routine or pattern and whose next occurrence is to start within the next 180 days.
              Recently Cleared = recently cleared in the last 24 hours
              Note that the status of Scheduled or Recurring Works disruptions will change to Active when they start, and will change status again when they end.
  """
  status: String

  """A collection of zero or more streets affected by the disruption."""
  streets: [TflApiPresentationEntitiesStreet]

  """
  Describes the sub-category of disruption e.g. Collapsed Manhole, Abnormal Load
  """
  subCategory: String
  timeFrame: String

  """URL to retrieve this road disruption"""
  url: String
}
type SystemDataSpatialDbGeography {
  geography: SystemDataSpatialDbGeographyWellKnownValue
}
type SystemDataSpatialDbGeographyWellKnownValue {
  coordinateSystemId: Int
  wellKnownBinary: String
  wellKnownText: String
}
type TflApiPresentationEntitiesRoadDisruptionSchedule {
  endTime: String
  startTime: String
}
type TflApiPresentationEntitiesRoadDisruptionImpactArea {
  endDate: String
  endTime: String
  id: Int
  polygon: SystemDataSpatialDbGeography
  roadDisruptionId: String
  startDate: String
  startTime: String
}
type TflApiPresentationEntitiesRoadDisruptionLine {
  endDate: String
  endTime: String
  id: Int
  isDiversion: Boolean
  multiLineString: SystemDataSpatialDbGeography
  roadDisruptionId: String
  startDate: String
  startTime: String
}
type TflApiPresentationEntitiesRoadProject {
  boroughsBenefited: [String]
  constructionEndDate: String
  constructionStartDate: String
  consultationEndDate: String
  consultationPageUrl: String
  consultationStartDate: String
  contactEmail: String
  contactName: String
  cycleSuperhighwayId: String
  externalPageUrl: String
  phase: Phase
  projectDescription: String
  projectId: String
  projectName: String
  projectPageUrl: String
  projectSummaryPageUrl: String
  schemeName: String
}
enum Phase {
  UNSCOPED
  CONCEPT
  CONSULTATIONENDED
  CONSULTATION
  CONSTRUCTION
  COMPLETE
}
type TflApiPresentationEntitiesStreet {
  """
  Type of road closure. Some example values:
              Open = road is open, not blocked, not closed, not restricted. It maybe that the disruption has been moved out of the carriageway.
              Partial Closure = road is partially blocked, closed or restricted. 
              Full Closure = road is fully blocked or closed.
  """
  closure: String

  """
  The direction of the disruption on the street. Some example values:
              All Directions
              All Approaches
              Clockwise
              Anti-Clockwise
              Northbound
              Eastbound
              Southbound
              Westbound
              Both Directions
  """
  directions: String

  """Street name"""
  name: String

  """
  Geographic description of the sections of this street that are affected.
  """
  segments: [TflApiPresentationEntitiesStreetSegment]

  """
  The ID from the source system of the disruption that this street belongs to.
  """
  sourceSystemId: Float

  """
  The key of the source system of the disruption that this street belongs to.
  """
  sourceSystemKey: String
}
type TflApiPresentationEntitiesStreetSegment {
  """
  geoJSON formatted LineString containing two latitude/longitude (WGS84) pairs that identify the start and end points of the street segment.
  """
  lineString: String

  """
  The ID from the source system of the disruption that this street belongs to.
  """
  sourceSystemId: Float

  """
  The key of the source system of the disruption that this street belongs to.
  """
  sourceSystemKey: String

  """
  A 16 digit unique integer identifying a OS ITN (Ordnance Survey Integrated Transport Network) road link.
  """
  toid: String
}
type TflApiPresentationEntitiesSearchResponse {
  from: Int
  matches: [TflApiPresentationEntitiesSearchMatch]
  maxScore: Float
  page: Int
  pageSize: Int
  provider: String
  query: String
  total: Int
}
type TflApiPresentationEntitiesSearchMatch {
  id: String
  lat: Float
  lon: Float
  name: String
  url: String
}
"""DTO to capture the prediction details"""
type TflApiPresentationEntitiesArrivalDeparture {
  """Reason for cancellation or delay"""
  cause: String

  """Status of departure"""
  departureStatus: DepartureStatus

  """Name of the destination"""
  destinationName: String

  """Naptan Identifier for the prediction's destination"""
  destinationNaptanId: String

  """Estimated time of arrival"""
  estimatedTimeOfArrival: String

  """Estimated time of arrival"""
  estimatedTimeOfDeparture: String

  """Estimated time of arrival"""
  minutesAndSecondsToArrival: String

  """Estimated time of arrival"""
  minutesAndSecondsToDeparture: String

  """Identifier for the prediction"""
  naptanId: String

  """Platform name (for bus, this is the stop letter)"""
  platformName: String

  """Estimated time of arrival"""
  scheduledTimeOfArrival: String

  """Estimated time of arrival"""
  scheduledTimeOfDeparture: String

  """Station name"""
  stationName: String
  timing: TflApiPresentationEntitiesPredictionTiming
}
enum DepartureStatus {
  ONTIME
  DELAYED
  CANCELLED
  NOTSTOPPINGATSTATION
}
type TflApiPresentationEntitiesDisruptedPoint {
  additionalInformation: String
  appearance: String
  atcoCode: String
  commonName: String
  description: String
  fromDate: String
  mode: String
  stationAtcoCode: String
  toDate: String
  type: String
}
"""A paged response containing StopPoints"""
type TflApiPresentationEntitiesStopPointsResponse {
  """The centre latitude/longitude of this list of StopPoints"""
  centrePoint: [Float]

  """The index of this page"""
  page: Int

  """
  The maximum size of the page in this response i.e. the maximum number of StopPoints
  """
  pageSize: Int

  """Collection of stop points"""
  stopPoints: [TflApiPresentationEntitiesStopPoint]

  """The total number of StopPoints available across all pages"""
  total: Int
}
type TflApiPresentationEntitiesStopPointCategory {
  availableKeys: [String]
  category: String
}
type TflApiPresentationEntitiesStopPointRouteSection {
  destinationName: String
  direction: String
  isActive: Boolean
  lineId: String
  lineString: String
  mode: String
  naptanId: String
  routeSectionName: String
  serviceType: String
  validFrom: String
  validTo: String
  vehicleDestinationText: String
}
type TflApiPresentationEntitiesLineServiceType {
  lineName: String
  lineSpecificServiceTypes: [TflApiPresentationEntitiesLineSpecificServiceType]
}
type TflApiPresentationEntitiesLineSpecificServiceType {
  serviceType: TflApiPresentationEntitiesLineServiceTypeInfo
  stopServesServiceType: Boolean
}
type TflApiPresentationEntitiesCarParkOccupancy {
  bays: [TflApiPresentationEntitiesBay]
  carParkDetailsUrl: String
  id: String
  name: String
}
type TflApiPresentationEntitiesBay {
  bayCount: Int
  bayType: String
  free: Int
  occupied: Int
}
"""A DTO representing a list of possible journeys."""
type TflApiPresentationEntitiesJourneyPlannerItineraryResult {
  cycleHireDockingStationData: TflApiPresentationEntitiesJourneyPlannerJourneyPlannerCycleHireDockingStationData
  journeyVector: TflApiPresentationEntitiesJourneyPlannerJourneyVector
  journeys: [TflApiPresentationEntitiesJourneyPlannerJourney]
  lines: [TflApiPresentationEntitiesLine]
  recommendedMaxAgeMinutes: Int
  searchCriteria: TflApiPresentationEntitiesJourneyPlannerSearchCriteria
  stopMessages: [String]
}
type TflApiPresentationEntitiesJourneyPlannerJourneyPlannerCycleHireDockingStationData {
  destinationId: String
  destinationNumberOfBikes: Int
  destinationNumberOfEmptySlots: Int
  originId: String
  originNumberOfBikes: Int
  originNumberOfEmptySlots: Int
}
type TflApiPresentationEntitiesJourneyPlannerJourneyVector {
  from: String
  to: String
  uri: String
  via: String
}
"""Object that represents an end to end journey (see schematic)."""
type TflApiPresentationEntitiesJourneyPlannerJourney {
  arrivalDateTime: String
  duration: Int
  fare: TflApiPresentationEntitiesJourneyPlannerJourneyFare
  legs: [TflApiPresentationEntitiesJourneyPlannerLeg]
  startDateTime: String
}
type TflApiPresentationEntitiesJourneyPlannerJourneyFare {
  caveats: [TflApiPresentationEntitiesJourneyPlannerFareCaveat]
  fares: [TflApiPresentationEntitiesJourneyPlannerFare]
  totalCost: Int
}
type TflApiPresentationEntitiesJourneyPlannerFareCaveat {
  text: String
  type: String
}
type TflApiPresentationEntitiesJourneyPlannerFare {
  chargeLevel: String
  chargeProfileName: String
  cost: Int
  highZone: Int
  isHopperFare: Boolean
  lowZone: Int
  offPeak: Int
  peak: Int
  taps: [TflApiPresentationEntitiesJourneyPlannerFareTap]
}
type TflApiPresentationEntitiesJourneyPlannerFareTap {
  atcoCode: String
  tapDetails: TflApiPresentationEntitiesJourneyPlannerFareTapDetails
}
type TflApiPresentationEntitiesJourneyPlannerFareTapDetails {
  busRouteId: String
  hostDeviceType: String
  modeType: String
  nationalLocationCode: Int
  tapTimestamp: String
  validationType: String
}
type TflApiPresentationEntitiesJourneyPlannerLeg {
  """
  Represents a point located at a latitude and longitude using the WGS84 co-ordinate system.
  """
  arrivalPoint: TflApiPresentationEntitiesPoint
  arrivalTime: String

  """
  Represents a point located at a latitude and longitude using the WGS84 co-ordinate system.
  """
  departurePoint: TflApiPresentationEntitiesPoint
  departureTime: String
  disruptions: [TflApiPresentationEntitiesDisruption]
  distance: Float
  duration: Int
  hasFixedLocations: Boolean
  instruction: TflApiPresentationEntitiesInstruction
  isDisrupted: Boolean
  mode: TflApiPresentationEntitiesIdentifier
  obstacles: [TflApiPresentationEntitiesJourneyPlannerObstacle]
  path: TflApiPresentationEntitiesJourneyPlannerPath
  plannedWorks: [TflApiPresentationEntitiesJourneyPlannerPlannedWork]
  routeOptions: [TflApiPresentationEntitiesJourneyPlannerRouteOption]
  speed: String
}
"""
Represents a point located at a latitude and longitude using the WGS84 co-ordinate system.
"""
type TflApiPresentationEntitiesPoint {
  """WGS84 latitude of the location."""
  lat: Float

  """WGS84 longitude of the location."""
  lon: Float
}
type TflApiPresentationEntitiesInstruction {
  detailed: String
  steps: [TflApiPresentationEntitiesInstructionStep]
  summary: String
}
type TflApiPresentationEntitiesInstructionStep {
  cumulativeDistance: Int
  cumulativeTravelTime: Int
  description: String
  descriptionHeading: String
  distance: Int
  latitude: Float
  longitude: Float
  pathAttribute: TflApiPresentationEntitiesPathAttribute
  skyDirection: Int
  skyDirectionDescription: SkyDirectionDescription
  streetName: String
  trackType: TrackType
  turnDirection: String
}
type TflApiPresentationEntitiesPathAttribute {
  name: String
  value: String
}
enum SkyDirectionDescription {
  NORTH
  NORTHEAST
  EAST
  SOUTHEAST
  SOUTH
  SOUTHWEST
  WEST
  NORTHWEST
}
enum TrackType {
  CYCLESUPERHIGHWAY
  CANALTOWPATH
  QUIETROAD
  PROVISIONFORCYCLISTS
  BUSYROADS
  NONE
  PUSHBIKE
  QUIETWAY
}
type TflApiPresentationEntitiesJourneyPlannerObstacle {
  incline: String
  position: String
  stopId: Int
  type: String
}
type TflApiPresentationEntitiesJourneyPlannerPath {
  elevation: [TflApiCommonJourneyPlannerJpElevation]
  lineString: String
  stopPoints: [TflApiPresentationEntitiesIdentifier]
}
type TflApiCommonJourneyPlannerJpElevation {
  distance: Int
  endLat: Float
  endLon: Float
  gradient: Float
  heightFromPreviousPoint: Int
  startLat: Float
  startLon: Float
}
type TflApiPresentationEntitiesJourneyPlannerPlannedWork {
  createdDateTime: String
  description: String
  id: String
  lastUpdateDateTime: String
}
type TflApiPresentationEntitiesJourneyPlannerRouteOption {
  directions: [String]

  """The Id of the route"""
  id: String
  lineIdentifier: TflApiPresentationEntitiesIdentifier

  """
  Name such as "72"
  """
  name: String
}
type TflApiPresentationEntitiesJourneyPlannerSearchCriteria {
  dateTime: String
  dateTimeType: DateTimeType
  timeAdjustments: TflApiPresentationEntitiesJourneyPlannerTimeAdjustments
}
enum DateTimeType {
  ARRIVING
  DEPARTING
}
type TflApiPresentationEntitiesJourneyPlannerTimeAdjustments {
  earlier: TflApiPresentationEntitiesJourneyPlannerTimeAdjustment
  earliest: TflApiPresentationEntitiesJourneyPlannerTimeAdjustment
  later: TflApiPresentationEntitiesJourneyPlannerTimeAdjustment
  latest: TflApiPresentationEntitiesJourneyPlannerTimeAdjustment
}
type TflApiPresentationEntitiesJourneyPlannerTimeAdjustment {
  date: String
  time: String
  timeIs: String
  uri: String
}
enum AccessibilityPreferenceListItem {
  NOREQUIREMENTS
  NOSOLIDSTAIRS
  NOESCALATORS
  NOELEVATORS
  STEPFREETOVEHICLE
  STEPFREETOPLATFORM
}
enum BikeProficiencyListItem {
  EASY
  MODERATE
  FAST
}
enum CyclePreference {
  NONE
  LEAVEATSTATION
  TAKEONTRANSPORT
  ALLTHEWAY
  CYCLEHIRE
}
enum JourneyPreference {
  LEASTINTERCHANGE
  LEASTTIME
  LEASTWALKING
}
enum TimeIs {
  ARRIVING
  DEPARTING
}
enum WalkingSpeed {
  SLOW
  AVERAGE
  FAST
}
type TflApiPresentationEntitiesRouteSearchResponse {
  input: String
  searchMatches: [TflApiPresentationEntitiesRouteSearchMatch]
}
type TflApiPresentationEntitiesRouteSearchMatch {
  id: String
  lat: Float
  lineId: String
  lineName: String
  lineRouteSection: [TflApiPresentationEntitiesLineRouteSection]
  lon: Float
  matchedRouteSections: [TflApiPresentationEntitiesMatchedRouteSections]
  matchedStops: [TflApiPresentationEntitiesMatchedStop]
  mode: String
  name: String
  url: String
}
type TflApiPresentationEntitiesLineRouteSection {
  destination: String
  direction: String
  fromStation: String
  routeId: Int
  serviceType: String
  toStation: String
  vehicleDestinationText: String
}
type TflApiPresentationEntitiesMatchedRouteSections {
  id: Int
}
type TflApiPresentationEntitiesRouteSequence {
  direction: String
  isOutboundOnly: Boolean
  lineId: String
  lineName: String
  lineStrings: [String]
  mode: String
  orderedLineRoutes: [TflApiPresentationEntitiesOrderedRoute]
  stations: [TflApiPresentationEntitiesMatchedStop]
  stopPointSequences: [TflApiPresentationEntitiesStopPointSequence]
}
type TflApiPresentationEntitiesOrderedRoute {
  name: String
  naptanIds: [String]
  serviceType: String
}
type TflApiPresentationEntitiesStopPointSequence {
  """The id of this branch."""
  branchId: Int
  direction: String
  lineId: String
  lineName: String

  """
  The ids of the next branch(es) in the sequence. Note that the next and previous branch id can be
              identical in the case of a looped route e.g. the Circle line.
  """
  nextBranchIds: [Int]

  """
  The ids of the previous branch(es) in the sequence. Note that the next and previous branch id can be
              identical in the case of a looped route e.g. the Circle line.
  """
  prevBranchIds: [Int]
  serviceType: ServiceType
  stopPoint: [TflApiPresentationEntitiesMatchedStop]
}
enum ServiceType {
  REGULAR
  NIGHT
}
""""""
type TflApiPresentationEntitiesVehicleMatch {
  colour: String
  compliance: Compliance
  make: String
  model: String
  type: String
  vrm: String
}
enum Compliance {
  NOTAVAILABLE
  NOTCOMPLIANT
  COMPLIANT
  EXEMPT
}
enum Direction2 {
  AVERAGE
  FROM
  TO
}
Clone this wiki locally