openapi: 3.0.0
servers:
  - url: http://timetableapi.ptv.vic.gov.au
  - url: https://timetableapi.ptv.vic.gov.au
info:
  contact:
    name: Public Transport Victoria
    url: http://ptv.vic.gov.au/digital
  description: "The PTV Timetable API provides direct access to Public Transport Victoria’s public transport timetable data.\r

    \r

    The API returns scheduled timetable, route and stop data for all metropolitan and regional train, tram and bus services in Victoria, including Night Network(Night Train and Night Tram data are included in metropolitan train and tram services data, respectively, whereas Night Bus is a separate route type).\r

    \r

    The API also returns real-time data for metropolitan train, tram and bus services (where this data is made available to PTV), as well as disruption information, stop facility information, and access to myki ticket outlet data.\r

    \r

    This Swagger is for Version 3 of the PTV Timetable API. By using this documentation you agree to comply with the licence and terms of service.\r

    \r

    Train timetable data is updated daily, while the remaining data is updated weekly, taking into account any planned timetable changes (for example, due to holidays or planned disruptions). The PTV timetable API is the same API used by PTV for its apps. To access the most up to date data PTV has (including real-time data) you must use the API dynamically.\r

    \r

    You can access the PTV Timetable API through a HTTP or HTTPS interface, as follows:\r

    \r

    \    base URL / version number / API name / query string\r

    The base URL is either:\r

    \  *  http://timetableapi.ptv.vic.gov.au\r

    or\r

    \  *  https://timetableapi.ptv.vic.gov.au\r

    \r

    The Swagger JSON file is available at http://timetableapi.ptv.vic.gov.au/swagger/docs/v3\r

    \r

    Frequently asked questions are available on the PTV website at http://ptv.vic.gov.au/apifaq\r

    \r

    Links to the following information are also provided on the PTV website at http://ptv.vic.gov.au/ptv-timetable-api/\r

    * How to register for an API key and calculate a signature\r

    * PTV Timetable API V2 to V3 Migration Guide\r

    * Documentation for Version 2 of the PTV Timetable API\r

    * PTV Timetable API Data Quality Statement\r

    \r

    All information about how to use the API is in this documentation. PTV cannot provide technical support for the API.\r

    \r

    Credits: This page has been based on Steve Bennett's http://opentransportdata.org/, used with permission.\r\n"
  license:
    name: Creative Commons Attribution 4.0 International
    url: https://creativecommons.org/licenses/by/4.0/
  title: PTV Timetable API - Version 3
  version: v3
  x-apisguru-categories:
    - transport
  x-logo:
    backgroundColor: "#FFFFFF"
    url: https://pbs.twimg.com/profile_images/544730682023346176/sAia9jJQ_400x400.jpeg
  x-origin:
    - format: openapi
      url: http://timetableapi.ptv.vic.gov.au/swagger/docs/v3
      version: "3.0"
  x-providerName: ptv.vic.gov.au
paths:
  "/v3/departures/route_type/{route_type}/stop/{stop_id}":
    get:
      deprecated: false
      operationId: Departures_GetForStop
      parameters:
        - description: Number identifying transport mode; values returned via RouteTypes API
          in: path
          name: route_type
          required: true
          schema:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
            format: int32
            type: integer
        - description: Identifier of stop; values returned by Stops API
          in: path
          name: stop_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Filter by platform number at stop
          explode: true
          in: query
          name: platform_numbers
          required: false
          schema:
            items:
              format: int32
              type: integer
            type: array
        - description: Filter by identifier of direction of travel; values returned by Directions API - /v3/directions/route/{route_id}
          in: query
          name: direction_id
          required: false
          schema:
            format: int32
            type: integer
        - description: Indicates that stop_id parameter will accept "GTFS stop_id" data
          in: query
          name: gtfs
          required: false
          schema:
            type: boolean
        - description: Filter by the date and time of the request (ISO 8601 UTC format) (default = current date and time)
          in: query
          name: date_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: Maximum number of results returned
          in: query
          name: max_results
          required: false
          schema:
            format: int32
            type: integer
        - description: Indicates if cancelled services (if they exist) are returned (default = false) - metropolitan train only
          in: query
          name: include_cancelled
          required: false
          schema:
            type: boolean
        - description: Indicates if filtering runs (and their departures) to those that arrive at destination before date_utc (default = false). Requires max_results &gt; 0.
          in: query
          name: look_backwards
          required: false
          schema:
            type: boolean
        - description: "List of objects to be returned in full (i.e. expanded) - options include: All, Stop, Route, Run, Direction, Disruption, VehiclePosition, VehicleDescriptor or None.\r

            \            Run must be expanded to receive VehiclePosition and VehicleDescriptor information."
          explode: true
          in: query
          name: expand
          required: false
          schema:
            items:
              enum:
                - All
                - Stop
                - Route
                - Run
                - Direction
                - Disruption
                - VehicleDescriptor
                - VehiclePosition
                - None
              type: string
            type: array
        - description: Indicates if the route geopath should be returned
          in: query
          name: include_geopath
          required: false
          schema:
            type: boolean
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DeparturesResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DeparturesResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DeparturesResponse"
          description: Service departures from the specified stop for all routes of the specified route type; departures are timetabled and real-time (if applicable).
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View departures for all routes from a stop
      tags:
        - Departures
  "/v3/departures/route_type/{route_type}/stop/{stop_id}/route/{route_id}":
    get:
      deprecated: false
      operationId: Departures_GetForStopAndRoute
      parameters:
        - description: Number identifying transport mode; values returned via RouteTypes API
          in: path
          name: route_type
          required: true
          schema:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
            format: int32
            type: integer
        - description: Identifier of stop; values returned by Stops API
          in: path
          name: stop_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Identifier of route; values returned by Routes API - v3/routes
          in: path
          name: route_id
          required: true
          schema:
            type: string
        - description: Filter by identifier of direction of travel; values returned by Directions API - /v3/directions/route/{route_id}
          in: query
          name: direction_id
          required: false
          schema:
            format: int32
            type: integer
        - description: Indicates that stop_id parameter will accept "GTFS stop_id" data
          in: query
          name: gtfs
          required: false
          schema:
            type: boolean
        - description: Filter by the date and time of the request (ISO 8601 UTC format) (default = current date and time)
          in: query
          name: date_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: Maximum number of results returned
          in: query
          name: max_results
          required: false
          schema:
            format: int32
            type: integer
        - description: Indicates if cancelled services (if they exist) are returned (default = false) - metropolitan train only
          in: query
          name: include_cancelled
          required: false
          schema:
            type: boolean
        - description: Indicates if filtering runs (and their departures) to those that arrive at destination before date_utc (default = false). Requires max_results &gt; 0.
          in: query
          name: look_backwards
          required: false
          schema:
            type: boolean
        - description: "List of objects to be returned in full (i.e. expanded) - options include: All, Stop, Route, Run, Direction, Disruption, VehiclePosition, VehicleDescriptor or None.\r

            \            Run must be expanded to receive VehiclePosition and VehicleDescriptor information."
          explode: true
          in: query
          name: expand
          required: false
          schema:
            items:
              enum:
                - All
                - Stop
                - Route
                - Run
                - Direction
                - Disruption
                - VehicleDescriptor
                - VehiclePosition
                - None
              type: string
            type: array
        - description: Indicates if the route geopath should be returned
          in: query
          name: include_geopath
          required: false
          schema:
            type: boolean
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DeparturesResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DeparturesResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DeparturesResponse"
          description: Service departures from the specified stop for the specified route (and route type); departures are timetabled and real-time (if applicable).
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View departures for a specific route from a stop
      tags:
        - Departures
  "/v3/directions/route/{route_id}":
    get:
      deprecated: false
      operationId: Directions_ForRoute
      parameters:
        - description: Identifier of route; values returned by Routes API - v3/routes
          in: path
          name: route_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DirectionsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DirectionsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DirectionsResponse"
          description: The directions that a specified route travels in.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View directions that a route travels in
      tags:
        - Directions
  "/v3/directions/{direction_id}":
    get:
      deprecated: false
      operationId: Directions_ForDirection
      parameters:
        - description: Identifier of direction of travel; values returned by Directions API - /v3/directions/route/{route_id}
          in: path
          name: direction_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DirectionsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DirectionsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DirectionsResponse"
          description: All routes that travel in the specified direction.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all routes for a direction of travel
      tags:
        - Directions
  "/v3/directions/{direction_id}/route_type/{route_type}":
    get:
      deprecated: false
      operationId: Directions_ForDirectionAndType
      parameters:
        - description: Identifier of direction of travel; values returned by Directions API - /v3/directions/route/{route_id}
          in: path
          name: direction_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Number identifying transport mode; values returned via RouteTypes API
          in: path
          name: route_type
          required: true
          schema:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
            format: int32
            type: integer
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DirectionsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DirectionsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DirectionsResponse"
          description: All routes of the specified route type that travel in the specified direction.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all routes of a particular type for a direction of travel
      tags:
        - Directions
  /v3/disruptions:
    get:
      deprecated: false
      operationId: Disruptions_GetAllDisruptions
      parameters:
        - description: Filter by route_type; values returned via RouteTypes API
          explode: true
          in: query
          name: route_types
          required: false
          schema:
            items:
              enum:
                - 0
                - 1
                - 2
                - 3
                - 4
              format: int32
              type: integer
            type: array
        - description: Filter by disruption_mode; values returned via v3/disruptions/modes API
          explode: true
          in: query
          name: disruption_modes
          required: false
          schema:
            items:
              enum:
                - 1
                - 2
                - 3
                - 4
                - 5
                - 7
                - 8
                - 9
                - 10
                - 11
                - 12
                - 13
                - 14
                - 100
              format: int32
              type: integer
            type: array
        - description: Filter by status of disruption
          in: query
          name: disruption_status
          required: false
          schema:
            enum:
              - current
              - planned
            type: string
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
          description: All disruption information for all route types.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all disruptions for all route types
      tags:
        - Disruptions
  /v3/disruptions/modes:
    get:
      deprecated: false
      operationId: Disruptions_GetDisruptionModes
      parameters:
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionModesResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DisruptionModesResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionModesResponse"
          description: Disruption specific modes
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: Get all disruption modes
      tags:
        - Disruptions
  "/v3/disruptions/route/{route_id}":
    get:
      deprecated: false
      operationId: Disruptions_GetDisruptionsByRoute
      parameters:
        - description: Identifier of route; values returned by Routes API - v3/routes
          in: path
          name: route_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Filter by status of disruption
          in: query
          name: disruption_status
          required: false
          schema:
            enum:
              - current
              - planned
            type: string
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
          description: All disruption information (if any exists) for the specified route.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all disruptions for a particular route
      tags:
        - Disruptions
  "/v3/disruptions/route/{route_id}/stop/{stop_id}":
    get:
      deprecated: false
      operationId: Disruptions_GetDisruptionsByRouteAndStop
      parameters:
        - description: Identifier of route; values returned by Routes API - v3/routes
          in: path
          name: route_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Identifier of stop; values returned by Stops API - v3/stops
          in: path
          name: stop_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Filter by status of disruption
          in: query
          name: disruption_status
          required: false
          schema:
            enum:
              - current
              - planned
            type: string
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
          description: All disruption information (if any exists) for the specified route and stop.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all disruptions for a particular route and stop
      tags:
        - Disruptions
  "/v3/disruptions/stop/{stop_id}":
    get:
      deprecated: false
      operationId: Disruptions_GetDisruptionsByStop
      parameters:
        - description: Identifier of stop; values returned by Stops API - v3/stops
          in: path
          name: stop_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Filter by status of disruption
          in: query
          name: disruption_status
          required: false
          schema:
            enum:
              - current
              - planned
            type: string
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionsResponse"
          description: All disruption information (if any exists) for the specified stop.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all disruptions for a particular stop
      tags:
        - Disruptions
  "/v3/disruptions/{disruption_id}":
    get:
      deprecated: false
      operationId: Disruptions_GetDisruptionById
      parameters:
        - description: Identifier of disruption; values returned by Disruptions API - /v3/disruptions OR /v3/disruptions/route/{route_id}
          in: path
          name: disruption_id
          required: true
          schema:
            format: int64
            type: integer
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.DisruptionResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.DisruptionResponse"
          description: Disruption information for the specified disruption ID.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View a specific disruption
      tags:
        - Disruptions
  "/v3/fare_estimate/min_zone/{minZone}/max_zone/{maxZone}":
    get:
      deprecated: false
      operationId: FareEstimate_GetFareEstimateByZone
      parameters:
        - description: Minimum Zone travelled through ie. 1
          in: path
          name: minZone
          required: true
          schema:
            format: int32
            type: integer
        - description: Maximum Zone travelled through id. 6
          in: path
          name: maxZone
          required: true
          schema:
            format: int32
            type: integer
        - description: JourneyTouchOnUtc in format yyyy-M-d h:m (e.g 2016-5-31 16:53).
          in: query
          name: journey_touch_on_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: JourneyTouchOffUtc in format yyyy-M-d h:m (e.g 2016-5-31 16:53).
          in: query
          name: journey_touch_off_utc
          required: false
          schema:
            format: date-time
            type: string
        - in: query
          name: is_journey_in_free_tram_zone
          required: false
          schema:
            type: boolean
        - explode: true
          in: query
          name: travelled_route_types
          required: false
          schema:
            items:
              enum:
                - 0
                - 1
                - 2
                - 3
                - 4
              format: int32
              type: integer
            type: array
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.FareEstimateResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.FareEstimateResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.FareEstimateResponse"
          description: Resultant set fare estimates
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: Estimate a fare by zone
      tags:
        - FareEstimate
  /v3/outlets:
    get:
      deprecated: false
      operationId: Outlets_GetAllOutlets
      parameters:
        - description: Maximum number of results returned (default = 30)
          in: query
          name: max_results
          required: false
          schema:
            format: int32
            type: integer
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.OutletResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.OutletResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.OutletResponse"
          description: Ticket outlets.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: List all ticket outlets
      tags:
        - Outlets
  "/v3/outlets/location/{latitude},{longitude}":
    get:
      deprecated: false
      operationId: Outlets_GetOutletsByGeolocation
      parameters:
        - description: Geographic coordinate of latitude
          in: path
          name: latitude
          required: true
          schema:
            format: float
            type: number
        - description: Geographic coordinate of longitude
          in: path
          name: longitude
          required: true
          schema:
            format: float
            type: number
        - description: Filter by maximum distance (in metres) from location specified via latitude and longitude parameters (default = 300)
          in: query
          name: max_distance
          required: false
          schema:
            format: double
            type: number
        - description: Maximum number of results returned (default = 30)
          in: query
          name: max_results
          required: false
          schema:
            format: int32
            type: integer
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.OutletGeolocationResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.OutletGeolocationResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.OutletGeolocationResponse"
          description: Ticket outlets near the specified location.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: List ticket outlets near a specific location
      tags:
        - Outlets
  "/v3/pattern/run/{run_ref}/route_type/{route_type}":
    get:
      deprecated: false
      operationId: Patterns_GetPatternByRun
      parameters:
        - description: The run_ref is the identifier of a run as returned by the departures/* and runs/* endpoints. WARNING, run_id is deprecated. Use run_ref instead.
          in: path
          name: run_ref
          required: true
          schema:
            type: string
        - description: Number identifying transport mode; values returned via RouteTypes API
          in: path
          name: route_type
          required: true
          schema:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
            format: int32
            type: integer
        - description: "List of objects to be returned in full (i.e. expanded) - options include: All, Stop, Route, Run, Direction, Disruption, VehiclePosition, VehicleDescriptor and None. Default is Disruption. Run must be expanded to receive VehiclePosition and VehicleDescriptor information."
          explode: true
          in: query
          name: expand
          required: true
          schema:
            items:
              enum:
                - All
                - Stop
                - Route
                - Run
                - Direction
                - Disruption
                - VehicleDescriptor
                - VehiclePosition
                - None
              type: string
            type: array
        - description: Filter by stop_id; values returned by Stops API
          in: query
          name: stop_id
          required: false
          schema:
            format: int32
            type: integer
        - description: Filter by the date and time of the request (ISO 8601 UTC format)
          in: query
          name: date_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: Include any skipped stops in a stopping pattern. Defaults to false.
          in: query
          name: include_skipped_stops
          required: false
          schema:
            type: boolean
        - description: Indicates if geopath data will be returned (default = false)
          in: query
          name: include_geopath
          required: false
          schema:
            type: boolean
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.StoppingPattern"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.StoppingPattern"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.StoppingPattern"
          description: "The stopping pattern of the specified run_ref and route type. (NOTE: the departure sequence field should be used to sort departures in chronological order, however it is not always N+1 or N-1 of the previous or following departure. e.g 100, 200, 250, 300 instead of 1, 2, 3, 4)"
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View the stopping pattern for a specific trip/service run
      tags:
        - Patterns
  /v3/route_types:
    get:
      deprecated: false
      operationId: RouteTypes_GetRouteTypes
      parameters:
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.RouteTypesResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.RouteTypesResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.RouteTypesResponse"
          description: All route types (i.e. identifiers of transport modes) and their names.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all route types and their names
      tags:
        - RouteTypes
  /v3/routes:
    get:
      deprecated: false
      operationId: Routes_OneOrMoreRoutes
      parameters:
        - description: Filter by route_type; values returned via RouteTypes API
          explode: true
          in: query
          name: route_types
          required: false
          schema:
            items:
              enum:
                - 0
                - 1
                - 2
                - 3
                - 4
              format: int32
              type: integer
            type: array
        - description: Filter by name  of route (accepts partial route name matches)
          in: query
          name: route_name
          required: false
          schema:
            type: string
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.RouteResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.RouteResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.RouteResponse"
          description: Route names and numbers for all routes of all route types.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View route names and numbers for all routes
      tags:
        - Routes
  "/v3/routes/{route_id}":
    get:
      deprecated: false
      operationId: Routes_RouteFromId
      parameters:
        - description: Identifier of route; values returned by Departures, Directions and Disruptions APIs
          in: path
          name: route_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Indicates kif geopath data will be returned (default = false)
          in: query
          name: include_geopath
          required: false
          schema:
            type: boolean
        - description: Filter geopaths by date (ISO 8601 UTC format) (default = current date)
          in: query
          name: geopath_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.RouteResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.RouteResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.RouteResponse"
          description: The route name and number for the specified route ID.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View route name and number for specific route ID
      tags:
        - Routes
  "/v3/runs/route/{route_id}":
    get:
      deprecated: false
      operationId: Runs_ForRoute
      parameters:
        - description: Identifier of route; values returned by Routes API - v3/routes.
          in: path
          name: route_id
          required: true
          schema:
            format: int32
            type: integer
        - description: "List of objects to be returned in full (i.e. expanded) - options include: All, VehiclePosition, VehicleDescriptor, or None. Default is None."
          explode: true
          in: query
          name: expand
          required: false
          schema:
            items:
              enum:
                - All
                - VehicleDescriptor
                - VehiclePosition
                - None
              type: string
            type: array
        - description: Date of the request. (optional - defaults to now)
          in: query
          name: date_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.RunsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.RunsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.RunsResponse"
          description: All trip/service run details for the specified route ID.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all trip/service runs for a specific route ID
      tags:
        - Runs
  "/v3/runs/route/{route_id}/route_type/{route_type}":
    get:
      deprecated: false
      operationId: Runs_ForRouteAndRouteType
      parameters:
        - description: Identifier of route; values returned by Routes API - v3/routes.
          in: path
          name: route_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Number identifying transport mode; values returned via RouteTypes API
          in: path
          name: route_type
          required: true
          schema:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
            format: int32
            type: integer
        - description: "List of objects to be returned in full (i.e. expanded) - options include: All, VehiclePosition, VehicleDescriptor, or None. Default is All."
          explode: true
          in: query
          name: expand
          required: true
          schema:
            items:
              enum:
                - All
                - VehicleDescriptor
                - VehiclePosition
                - None
              type: string
            type: array
        - description: Date of the request. (optional - defaults to now)
          in: query
          name: date_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.RunsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.RunsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.RunsResponse"
          description: All trip/service run details for the specified route ID and route type.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all trip/service runs for a specific route ID and route type
      tags:
        - Runs
  "/v3/runs/{run_ref}":
    get:
      deprecated: false
      operationId: Runs_ForRun
      parameters:
        - description: The run_ref is the identifier of a run as returned by the departures/* and runs/* endpoints. WARNING, run_id is deprecated. Use run_ref instead.
          in: path
          name: run_ref
          required: true
          schema:
            type: string
        - description: "List of objects to be returned in full (i.e. expanded) - options include: All, VehiclePosition, VehicleDescriptor, or None. Default is None."
          explode: true
          in: query
          name: expand
          required: true
          schema:
            items:
              enum:
                - All
                - VehicleDescriptor
                - VehiclePosition
                - None
              type: string
            type: array
        - description: Date of the request. (optional - defaults to now)
          in: query
          name: date_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: Indicates if geopath data will be returned (default = false)
          in: query
          name: include_geopath
          required: false
          schema:
            type: boolean
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.RunsResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.RunsResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.RunsResponse"
          description: All trip/service run details for the specified run_ref.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all trip/service runs for a specific run_ref
      tags:
        - Runs
  "/v3/runs/{run_ref}/route_type/{route_type}":
    get:
      deprecated: false
      operationId: Runs_ForRunAndRouteType
      parameters:
        - description: The run_ref is the identifier of a run as returned by the departures/* and runs/* endpoints. WARNING, run_id is deprecated. Use run_ref instead.
          in: path
          name: run_ref
          required: true
          schema:
            type: string
        - description: Number identifying transport mode; values returned via RouteTypes API
          in: path
          name: route_type
          required: true
          schema:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
            format: int32
            type: integer
        - description: "List of objects to be returned in full (i.e. expanded) - options include: All, VehiclePosition, VehicleDescriptor, or None. Default is None."
          explode: true
          in: query
          name: expand
          required: true
          schema:
            items:
              enum:
                - All
                - VehicleDescriptor
                - VehiclePosition
                - None
              type: string
            type: array
        - description: Date of the request. (optional - defaults to now)
          in: query
          name: date_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: Indicates if geopath data will be returned (default = false)
          in: query
          name: include_geopath
          required: false
          schema:
            type: boolean
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.RunResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.RunResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.RunResponse"
          description: The trip/service run details for the run_ref and route type specified.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View the trip/service run for a specific run_ref and route type
      tags:
        - Runs
  "/v3/search/{search_term}":
    get:
      deprecated: false
      operationId: Search_Search
      parameters:
        - description: "Search text (note: if search text is numeric and/or less than 3 characters, the API will only return routes)"
          in: path
          name: search_term
          required: true
          schema:
            type: string
        - description: "Filter by route_type; values returned via RouteTypes API (note: stops and routes are ordered by route_types specified)"
          explode: true
          in: query
          name: route_types
          required: false
          schema:
            items:
              enum:
                - 0
                - 1
                - 2
                - 3
                - 4
              format: int32
              type: integer
            type: array
        - description: Filter by geographic coordinate of latitude
          in: query
          name: latitude
          required: false
          schema:
            format: float
            type: number
        - description: Filter by geographic coordinate of longitude
          in: query
          name: longitude
          required: false
          schema:
            format: float
            type: number
        - description: Filter by maximum distance (in metres) from location specified via latitude and longitude parameters
          in: query
          name: max_distance
          required: false
          schema:
            format: float
            type: number
        - description: Placeholder for future development; currently unavailable
          in: query
          name: include_addresses
          required: false
          schema:
            type: boolean
        - description: Indicates if outlets will be returned in response (default = true)
          in: query
          name: include_outlets
          required: false
          schema:
            type: boolean
        - description: Indicates whether to find stops by suburbs in the search term (default = true)
          in: query
          name: match_stop_by_suburb
          required: false
          schema:
            type: boolean
        - description: Indicates whether to find routes by suburbs in the search term (default = true)
          in: query
          name: match_route_by_suburb
          required: false
          schema:
            type: boolean
        - description: Indicates whether to search for stops according to a metlink stop ID (default = false)
          in: query
          name: match_stop_by_gtfs_stop_id
          required: false
          schema:
            type: boolean
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.SearchResult"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.SearchResult"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.SearchResult"
          description: "Stops, routes and myki ticket outlets that contain the search term (note: stops and routes are ordered by route_type by default)."
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View stops, routes and myki ticket outlets that match the search term
      tags:
        - Search
  "/v3/stops/location/{latitude},{longitude}":
    get:
      deprecated: false
      operationId: Stops_StopsByGeolocation
      parameters:
        - description: Geographic coordinate of latitude
          in: path
          name: latitude
          required: true
          schema:
            format: float
            type: number
        - description: Geographic coordinate of longitude
          in: path
          name: longitude
          required: true
          schema:
            format: float
            type: number
        - description: Filter by route_type; values returned via RouteTypes API
          explode: true
          in: query
          name: route_types
          required: false
          schema:
            items:
              enum:
                - 0
                - 1
                - 2
                - 3
                - 4
              format: int32
              type: integer
            type: array
        - description: Maximum number of results returned (default = 30)
          in: query
          name: max_results
          required: false
          schema:
            format: int32
            type: integer
        - description: Filter by maximum distance (in metres) from location specified via latitude and longitude parameters (default = 300)
          in: query
          name: max_distance
          required: false
          schema:
            format: double
            type: number
        - description: Indicates if stop disruption information will be returned (default = false)
          in: query
          name: stop_disruptions
          required: false
          schema:
            type: boolean
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.StopsByDistanceResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.StopsByDistanceResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.StopsByDistanceResponse"
          description: All stops near the specified location.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all stops near a specific location
      tags:
        - Stops
  "/v3/stops/route/{route_id}/route_type/{route_type}":
    get:
      deprecated: false
      operationId: Stops_StopsForRoute
      parameters:
        - description: Identifier of route; values returned by Routes API - v3/routes
          in: path
          name: route_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Number identifying transport mode; values returned via RouteTypes API
          in: path
          name: route_type
          required: true
          schema:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
            format: int32
            type: integer
        - description: An optional direction; values returned by Directions API. When this is set, stop sequence information is returned in the response.
          in: query
          name: direction_id
          required: false
          schema:
            format: int32
            type: integer
        - description: Indicates if stop disruption information will be returned (default = false)
          in: query
          name: stop_disruptions
          required: false
          schema:
            type: boolean
        - description: Indicates if geopath data will be returned (default = false)
          in: query
          name: include_geopath
          required: false
          schema:
            type: boolean
        - description: Filter geopaths by date (ISO 8601 UTC format) (default = current date)
          in: query
          name: geopath_utc
          required: false
          schema:
            format: date-time
            type: string
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.StopsOnRouteResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.StopsOnRouteResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.StopsOnRouteResponse"
          description: All stops on the specified route.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View all stops on a specific route
      tags:
        - Stops
  "/v3/stops/{stop_id}/route_type/{route_type}":
    get:
      deprecated: false
      operationId: Stops_StopDetails
      parameters:
        - description: Identifier of stop; values returned by Stops API
          in: path
          name: stop_id
          required: true
          schema:
            format: int32
            type: integer
        - description: Number identifying transport mode; values returned via RouteTypes API
          in: path
          name: route_type
          required: true
          schema:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
            format: int32
            type: integer
        - description: Indicates if stop location information will be returned (default = false)
          in: query
          name: stop_location
          required: false
          schema:
            type: boolean
        - description: Indicates if stop amenity information will be returned (default = false)
          in: query
          name: stop_amenities
          required: false
          schema:
            type: boolean
        - description: Indicates if stop accessibility information will be returned (default = false)
          in: query
          name: stop_accessibility
          required: false
          schema:
            type: boolean
        - description: Indicates if stop contact information will be returned (default = false)
          in: query
          name: stop_contact
          required: false
          schema:
            type: boolean
        - description: Indicates if stop ticket information will be returned (default = false)
          in: query
          name: stop_ticket
          required: false
          schema:
            type: boolean
        - description: Incdicates whether the stop_id is a GTFS ID or not
          in: query
          name: gtfs
          required: false
          schema:
            type: boolean
        - description: Indicates if stop staffing information will be returned (default = false)
          in: query
          name: stop_staffing
          required: false
          schema:
            type: boolean
        - description: Indicates if stop disruption information will be returned (default = false)
          in: query
          name: stop_disruptions
          required: false
          schema:
            type: boolean
        - description: Please ignore
          in: query
          name: token
          required: false
          schema:
            type: string
        - description: Your developer id
          in: query
          name: devid
          required: false
          schema:
            type: string
        - description: Authentication signature for request
          in: query
          name: signature
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.StopResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.StopResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.StopResponse"
          description: Stop location, amenity and accessibility facility information for the specified stop (metropolitan and V/Line stations only).
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Invalid Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/html:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
            text/json:
              schema:
                $ref: "#/components/schemas/V3.ErrorResponse"
          description: Access Denied
      summary: View facilities at a specific stop (Metro and V/Line stations only)
      tags:
        - Stops
components:
  schemas:
    V2.Object:
      properties: {}
      type: object
    V2.Void:
      properties: {}
      type: object
    V3.BulkDeparturesRequest:
      properties:
        date_utc:
          description: Filter by the date and time of the request (ISO 8601 UTC format) (default = current date and time)
          format: date-time
          type: string
        expand:
          description: "List objects to be returned in full (i.e. expanded) - options include: all, stop, route, run, direction, disruption, none"
          items:
            enum:
              - All
              - Stop
              - Route
              - Run
              - Direction
              - Disruption
              - VehicleDescriptor
              - VehiclePosition
              - None
            type: string
          type: array
        include_cancelled:
          description: Indicates if cancelled services (if they exist) are returned (default = false) - metropolitan train only
          type: boolean
        include_geopath:
          description: Indicates if the route geopath should be returned
          type: boolean
        look_backwards:
          description: Indicates if filtering runs (and their departures) to those that arrive at destination before date_utc (default = false). Requires max_results &gt; 0.
          type: boolean
        requests:
          description: Collection of departure requests
          items:
            $ref: "#/components/schemas/V3.StopDepartureRequest"
          type: array
      required:
        - requests
      type: object
    V3.BulkDeparturesResponse:
      properties:
        directions:
          description: Directions of travel of route
          items:
            $ref: "#/components/schemas/V3.Direction"
          type: array
        disruptions:
          additionalProperties:
            $ref: "#/components/schemas/V3.Disruption"
          description: Disruption information applicable to relevant routes or stops
          type: object
        responses:
          description: Contains departures for the requested stop and route(s). It includes details as to the route_direction and whether it is still valid.
          items:
            $ref: "#/components/schemas/V3.BulkDeparturesUpdateResponse"
          type: array
        routes:
          description: Train lines, tram routes, bus routes, regional coach routes, Night Bus routes
          items:
            $ref: "#/components/schemas/V2.Object"
          type: array
        runs:
          description: Individual trips/services of a route
          items:
            $ref: "#/components/schemas/V3.Run"
          type: array
        status:
          $ref: "#/components/schemas/V3.Status"
        stops:
          additionalProperties:
            $ref: "#/components/schemas/V3.BulkDeparturesStopResponse"
          description: A train station, tram stop, bus stop, regional coach stop or Night Bus stop
          type: object
      type: object
    V3.BulkDeparturesRouteDirectionResponse:
      properties:
        direction_id:
          description: Direction of travel identifier
          format: int32
          type: integer
        direction_name:
          description: Name of direction of travel
          type: string
        route_id:
          description: Route identifier
          type: string
      type: object
    V3.BulkDeparturesStopResponse:
      properties:
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
        stop_landmark:
          description: Landmark in proximity of stop
          type: string
        stop_latitude:
          description: Geographic coordinate of latitude at stop
          format: float
          type: number
        stop_longitude:
          description: Geographic coordinate of longitude at stop
          format: float
          type: number
        stop_name:
          description: Name of stop
          type: string
        stop_suburb:
          description: suburb of stop
          type: string
      type: object
    V3.BulkDeparturesUpdateResponse:
      properties:
        departures:
          description: Timetabled and real-time service departures
          items:
            $ref: "#/components/schemas/V3.Departure"
          type: array
        requested_route_direction:
          $ref: "#/components/schemas/V3.BulkDeparturesRouteDirectionResponse"
        route_direction:
          $ref: "#/components/schemas/V3.BulkDeparturesRouteDirectionResponse"
        route_direction_status:
          description: "The status of the route direction (changed | unchanged).\r

            \            If changed, requests should change the requested_route_direction for the route_direction supplied."
          enum:
            - 0
            - 1
          format: int32
          type: integer
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
      type: object
    V3.Departure:
      properties:
        at_platform:
          description: Indicates if the metropolitan train service is at the platform at the time of query; returns false for other modes
          type: boolean
        departure_sequence:
          description: Chronological sequence for the departures in a run. Order ascendingly by this field to get chronological order (earliest first) of departures with the same run_ref. NOTE, this field is not always N+1 or N-1 of the previous or following departure. e.g 100, 200, 250, 300 instead of 1, 2, 3, 4
          format: int32
          type: integer
        direction_id:
          description: Direction of travel identifier
          format: int32
          type: integer
        disruption_ids:
          description: Disruption information identifier(s)
          items:
            format: int64
            type: integer
          type: array
        estimated_departure_utc:
          description: Real-time estimate of departure time and date in ISO 8601 UTC format
          format: date-time
          type: string
        flags:
          description: Flag indicating special condition for run (e.g. RR Reservations Required, GC Guaranteed Connection, DOO Drop Off Only, PUO Pick Up Only, MO Mondays only, TU Tuesdays only, WE Wednesdays only, TH Thursdays only, FR Fridays only, SS School days only; ignore E flag)
          type: string
        platform_number:
          description: Platform number at stop (metropolitan train only; returns null for other modes)
          type: string
        route_id:
          description: Route identifier
          format: int32
          type: integer
        run_id:
          description: Numeric trip/service run identifier. Defaults to -1 when run identifier is Alphanumeric
          format: int32
          readOnly: true
          type: integer
        run_ref:
          description: Alphanumeric trip/service run identifier
          type: string
        scheduled_departure_utc:
          description: Scheduled (i.e. timetabled) departure time and date in ISO 8601 UTC format
          format: date-time
          type: string
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
      type: object
    V3.DeparturesBroadParameters:
      properties:
        date_utc:
          description: Filter by the date and time of the request (ISO 8601 UTC format) (default = current date and time)
          format: date-time
          type: string
        direction_id:
          description: Filter by identifier of direction of travel; values returned by Directions API - /v3/directions/route/{route_id}
          format: int32
          type: integer
        expand:
          description: "List of objects to be returned in full (i.e. expanded) - options include: All, Stop, Route, Run, Direction, Disruption, VehiclePosition, VehicleDescriptor or None.\r

            \            Run must be expanded to receive VehiclePosition and VehicleDescriptor information."
          items:
            enum:
              - All
              - Stop
              - Route
              - Run
              - Direction
              - Disruption
              - VehicleDescriptor
              - VehiclePosition
              - None
            type: string
          type: array
        gtfs:
          description: Indicates that stop_id parameter will accept "GTFS stop_id" data
          type: boolean
        include_cancelled:
          description: Indicates if cancelled services (if they exist) are returned (default = false) - metropolitan train only
          type: boolean
        include_geopath:
          description: Indicates if the route geopath should be returned
          type: boolean
        look_backwards:
          description: Indicates if filtering runs (and their departures) to those that arrive at destination before date_utc (default = false). Requires max_results &gt; 0.
          type: boolean
        max_results:
          description: Maximum number of results returned
          format: int32
          type: integer
        platform_numbers:
          description: Filter by platform number at stop
          items:
            format: int32
            type: integer
          type: array
      type: object
    V3.DeparturesResponse:
      properties:
        departures:
          description: Timetabled and real-time service departures
          items:
            $ref: "#/components/schemas/V3.Departure"
          type: array
        directions:
          additionalProperties:
            $ref: "#/components/schemas/V3.Direction"
          description: Directions of travel of route
          type: object
        disruptions:
          additionalProperties:
            $ref: "#/components/schemas/V3.Disruption"
          description: Disruption information applicable to relevant routes or stops
          type: object
        routes:
          additionalProperties:
            $ref: "#/components/schemas/V2.Object"
          description: Train lines, tram routes, bus routes, regional coach routes, Night Bus routes
          type: object
        runs:
          additionalProperties:
            $ref: "#/components/schemas/V3.Run"
          description: Individual trips/services of a route
          type: object
        status:
          $ref: "#/components/schemas/V3.Status"
        stops:
          additionalProperties:
            $ref: "#/components/schemas/V3.StopModel"
          description: A train station, tram stop, bus stop, regional coach stop or Night Bus stop
          type: object
      type: object
    V3.DeparturesSpecificParameters:
      properties:
        date_utc:
          description: Filter by the date and time of the request (ISO 8601 UTC format) (default = current date and time)
          format: date-time
          type: string
        direction_id:
          description: Filter by identifier of direction of travel; values returned by Directions API - /v3/directions/route/{route_id}
          format: int32
          type: integer
        expand:
          description: "List of objects to be returned in full (i.e. expanded) - options include: All, Stop, Route, Run, Direction, Disruption, VehiclePosition, VehicleDescriptor or None.\r

            \            Run must be expanded to receive VehiclePosition and VehicleDescriptor information."
          items:
            enum:
              - All
              - Stop
              - Route
              - Run
              - Direction
              - Disruption
              - VehicleDescriptor
              - VehiclePosition
              - None
            type: string
          type: array
        gtfs:
          description: Indicates that stop_id parameter will accept "GTFS stop_id" data
          type: boolean
        include_cancelled:
          description: Indicates if cancelled services (if they exist) are returned (default = false) - metropolitan train only
          type: boolean
        include_geopath:
          description: Indicates if the route geopath should be returned
          type: boolean
        look_backwards:
          description: Indicates if filtering runs (and their departures) to those that arrive at destination before date_utc (default = false). Requires max_results &gt; 0.
          type: boolean
        max_results:
          description: Maximum number of results returned
          format: int32
          type: integer
      type: object
    V3.Direction:
      properties:
        direction_id:
          description: Direction of travel identifier
          format: int32
          type: integer
        direction_name:
          description: Name of direction of travel
          type: string
        route_id:
          description: Route identifier
          format: int32
          type: integer
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
      type: object
    V3.DirectionWithDescription:
      properties:
        direction_id:
          description: Direction of travel identifier
          format: int32
          type: integer
        direction_name:
          description: Name of direction of travel
          type: string
        route_direction_description:
          type: string
        route_id:
          description: Route identifier
          format: int32
          type: integer
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
      type: object
    V3.DirectionsResponse:
      properties:
        directions:
          description: Directions of travel of route
          items:
            $ref: "#/components/schemas/V3.DirectionWithDescription"
          type: array
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.Disruption:
      properties:
        colour:
          type: string
        description:
          description: Description of the disruption
          type: string
        display_on_board:
          type: boolean
        display_status:
          type: boolean
        disruption_id:
          description: Disruption information identifier
          format: int64
          type: integer
        disruption_status:
          description: Status of the disruption (e.g. "Planned", "Current")
          type: string
        disruption_type:
          description: Type of disruption
          type: string
        from_date:
          description: Date and time at which disruption begins, in ISO 8601 UTC format
          format: date-time
          type: string
        last_updated:
          description: Date and time disruption information was last updated by PTV, in ISO 8601 UTC format
          format: date-time
          type: string
        published_on:
          description: Date and time disruption information is published on PTV website, in ISO 8601 UTC format
          format: date-time
          type: string
        routes:
          description: Route relevant to a disruption (if applicable)
          items:
            $ref: "#/components/schemas/V3.DisruptionRoute"
          type: array
        stops:
          description: Stop relevant to a disruption (if applicable)
          items:
            $ref: "#/components/schemas/V3.DisruptionStop"
          type: array
        title:
          description: Headline title summarising disruption information
          type: string
        to_date:
          description: Date and time at which disruption ends, in ISO 8601 UTC format (returns null if unknown)
          format: date-time
          type: string
        url:
          description: URL of relevant article on PTV website
          type: string
      type: object
    V3.DisruptionDirection:
      properties:
        direction_id:
          description: Direction of travel identifier
          format: int32
          type: integer
        direction_name:
          description: Name of direction of travel
          type: string
        route_direction_id:
          description: Route and direction of travel combination identifier
          format: int32
          type: integer
        service_time:
          description: Time of service to which disruption applies, in 24 hour clock format (HH:MM:SS) AEDT/AEST; returns null if disruption applies to multiple (or no) services
          type: string
      type: object
    V3.DisruptionMode:
      properties:
        disruption_mode:
          description: Disruption mode identifier
          format: int32
          type: integer
        disruption_mode_name:
          description: Name of disruption mode
          type: string
      type: object
    V3.DisruptionModesResponse:
      properties:
        disruption_modes:
          description: Transport mode identifiers
          items:
            $ref: "#/components/schemas/V3.DisruptionMode"
          type: array
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.DisruptionResponse:
      properties:
        disruption:
          $ref: "#/components/schemas/V3.Disruption"
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.DisruptionRoute:
      properties:
        direction:
          $ref: "#/components/schemas/V3.DisruptionDirection"
        route_gtfs_id:
          description: GTFS Identifer of the route
          type: string
        route_id:
          description: Route identifier
          format: int32
          type: integer
        route_name:
          description: Name of route
          type: string
        route_number:
          description: Route number presented to public (i.e. not route_id)
          type: string
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
      type: object
    V3.DisruptionStop:
      properties:
        stop_id:
          format: int32
          type: integer
        stop_name:
          type: string
      type: object
    V3.Disruptions:
      properties:
        ferry:
          description: Subset of disruption information applicable to ferry
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        general:
          description: Subset of disruption information applicable to multiple route_types
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        interstate_train:
          description: Subset of disruption information applicable to interstate train
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        metro_bus:
          description: Subset of disruption information applicable to metropolitan bus
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        metro_train:
          description: Subset of disruption information applicable to metropolitan train
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        metro_tram:
          description: Subset of disruption information applicable to metropolitan tram
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        night_bus:
          description: Subset of disruption information applicable to night bus
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        regional_bus:
          description: Subset of disruption information applicable to regional bus
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        regional_coach:
          description: Subset of disruption information applicable to V/Line coach
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        regional_train:
          description: Subset of disruption information applicable to V/Line train
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        school_bus:
          description: Subset of disruption information applicable to school bus
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        skybus:
          description: Subset of disruption information applicable to skybus
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        taxi:
          description: Subset of disruption information applicable to taxi
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        telebus:
          description: Subset of disruption information applicable to telebus services
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
      type: object
    V3.DisruptionsResponse:
      properties:
        disruptions:
          $ref: "#/components/schemas/V3.Disruptions"
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.DynamoDbTimetable:
      properties:
        applicable_local_date:
          description: Formated date string of applicable date
          readOnly: true
          type: string
        exists:
          description: "True if the named table has been created in DynamoDB (i.e. at least one departure record has been loaded),\r

            \            or false if there are no records for this date and transport type."
          type: boolean
        parser_mapping_version:
          description: Diva Mapping Version used to load Parser into DynamoDB
          type: string
        parser_version:
          description: Parser verison
          format: int64
          type: integer
        pt_mapping_version:
          description: Diva Mapping Version used to load PT into DynamoDB
          type: string
        pt_version:
          description: PT version
          format: int64
          type: integer
        table_name:
          description: Name of corresponding table in DynamoDB.
          type: string
        transport_type:
          description: A.k.a. Transport Mode (e.g. Train, Tram, Bus, V/Line, Nightrider)
          enum:
            - 0
            - 1
            - 2
            - 3
            - 4
          format: int32
          type: integer
      type: object
    V3.DynamoDbTimetablesReponse:
      properties:
        status:
          $ref: "#/components/schemas/V3.Status"
        timetables:
          items:
            $ref: "#/components/schemas/V3.DynamoDbTimetable"
          type: array
      type: object
    V3.ErrorResponse:
      description: An error response
      properties:
        message:
          description: Error message
          type: string
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.FareEstimateResponse: {}
    V3.GenerateDivaMappingResponse:
      properties:
        mapping_version:
          readOnly: true
          type: string
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.Outlet:
      properties:
        outlet_business:
          description: The business name of the outlet
          type: string
        outlet_business_hour_fri:
          description: The business hours on Friday
          type: string
        outlet_business_hour_mon:
          description: The business hours on Monday
          type: string
        outlet_business_hour_sat:
          description: The business hours on Saturday
          type: string
        outlet_business_hour_sun:
          description: The business hours on Sunday
          type: string
        outlet_business_hour_thur:
          description: The business hours on Thursday
          type: string
        outlet_business_hour_tue:
          description: The business hours on Tuesday
          type: string
        outlet_business_hour_wed:
          description: The business hours on Wednesday
          type: string
        outlet_latitude:
          description: Geographic coordinate of latitude at outlet
          format: float
          type: number
        outlet_longitude:
          description: Geographic coordinate of longitude at outlet
          format: float
          type: number
        outlet_name:
          description: The location name of the outlet
          type: string
        outlet_notes:
          description: Any additional notes for the outlet such as 'Buy pre-loaded myki cards only'. May be null/empty.
          type: string
        outlet_postcode:
          description: The postcode for the outlet
          format: int32
          type: integer
        outlet_slid_spid:
          description: The SLID / SPID
          type: string
        outlet_suburb:
          description: The city/municipality the outlet is in
          type: string
      type: object
    V3.OutletGeolocation:
      properties:
        outlet_business:
          description: The business name of the outlet
          type: string
        outlet_business_hour_fri:
          description: The business hours on Friday
          type: string
        outlet_business_hour_mon:
          description: The business hours on Monday
          type: string
        outlet_business_hour_sat:
          description: The business hours on Saturday
          type: string
        outlet_business_hour_sun:
          description: The business hours on Sunday
          type: string
        outlet_business_hour_thur:
          description: The business hours on Thursday
          type: string
        outlet_business_hour_tue:
          description: The business hours on Tuesday
          type: string
        outlet_business_hour_wed:
          description: The business hours on Wednesday
          type: string
        outlet_distance:
          description: Distance of outlet from input location (in metres); returns 0 if no location is input
          format: float
          type: number
        outlet_latitude:
          description: Geographic coordinate of latitude at outlet
          format: float
          type: number
        outlet_longitude:
          description: Geographic coordinate of longitude at outlet
          format: float
          type: number
        outlet_name:
          description: The location name of the outlet
          type: string
        outlet_notes:
          description: Any additional notes for the outlet such as 'Buy pre-loaded myki cards only'. May be null/empty.
          type: string
        outlet_postcode:
          description: The postcode for the outlet
          format: int32
          type: integer
        outlet_slid_spid:
          description: The SLID / SPID
          type: string
        outlet_suburb:
          description: The city/municipality the outlet is in
          type: string
      type: object
    V3.OutletGeolocationParameters:
      properties:
        max_distance:
          description: Filter by maximum distance (in metres) from location specified via latitude and longitude parameters (default = 300)
          format: double
          type: number
        max_results:
          description: Maximum number of results returned (default = 30)
          format: int32
          type: integer
      type: object
    V3.OutletGeolocationResponse:
      properties:
        outlets:
          description: myki ticket outlets
          items:
            $ref: "#/components/schemas/V3.OutletGeolocation"
          type: array
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.OutletParameters:
      properties:
        max_results:
          description: Maximum number of results returned (default = 30)
          format: int32
          type: integer
      type: object
    V3.OutletResponse:
      properties:
        outlets:
          description: myki ticket outlets
          items:
            $ref: "#/components/schemas/V3.Outlet"
          type: array
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.PatternDeparture:
      properties:
        at_platform:
          description: Indicates if the metropolitan train service is at the platform at the time of query; returns false for other modes
          type: boolean
        departure_sequence:
          description: Chronological sequence for the departures in a run. Order ascendingly by this field to get chronological order (earliest first) of departures with the same run_ref. NOTE, this field is not always N+1 or N-1 of the previous or following departure. e.g 100, 200, 250, 300 instead of 1, 2, 3, 4
          format: int32
          type: integer
        direction_id:
          description: Direction of travel identifier
          format: int32
          type: integer
        disruption_ids:
          description: Disruption information identifier(s)
          items:
            format: int64
            type: integer
          type: array
        estimated_departure_utc:
          description: Real-time estimate of departure time and date in ISO 8601 UTC format
          format: date-time
          type: string
        flags:
          description: Flag indicating special condition for run (e.g. RR Reservations Required, GC Guaranteed Connection, DOO Drop Off Only, PUO Pick Up Only, MO Mondays only, TU Tuesdays only, WE Wednesdays only, TH Thursdays only, FR Fridays only, SS School days only; ignore E flag)
          type: string
        platform_number:
          description: Platform number at stop (metropolitan train only; returns null for other modes)
          type: string
        route_id:
          description: Route identifier
          format: int32
          type: integer
        run_id:
          description: Numeric trip/service run identifier. Defaults to -1 when run identifier is Alphanumeric
          format: int32
          readOnly: true
          type: integer
        run_ref:
          description: Alphanumeric trip/service run identifier
          type: string
        scheduled_departure_utc:
          description: Scheduled (i.e. timetabled) departure time and date in ISO 8601 UTC format
          format: date-time
          type: string
        skipped_stops:
          description: The stops to be skipped following the current departure in order.
          items:
            $ref: "#/components/schemas/V3.StopModel"
          type: array
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
      type: object
    V3.ResultOutlet:
      properties:
        outlet_business:
          description: The business name of the outlet
          type: string
        outlet_business_hour_fri:
          description: The business hours on Friday
          type: string
        outlet_business_hour_mon:
          description: The business hours on Monday
          type: string
        outlet_business_hour_sat:
          description: The business hours on Saturday
          type: string
        outlet_business_hour_sun:
          description: The business hours on Sunday
          type: string
        outlet_business_hour_thur:
          description: The business hours on Thursday
          type: string
        outlet_business_hour_tue:
          description: The business hours on Tuesday
          type: string
        outlet_business_hour_wed:
          description: The business hours on Wednesday
          type: string
        outlet_distance:
          description: Distance of outlet from input location (in metres); returns 0 if no location is input
          format: float
          type: number
        outlet_latitude:
          description: Geographic coordinate of latitude at outlet
          format: float
          type: number
        outlet_longitude:
          description: Geographic coordinate of longitude at outlet
          format: float
          type: number
        outlet_name:
          description: The location name of the outlet
          type: string
        outlet_notes:
          description: Any additional notes for the outlet such as 'Buy pre-loaded myki cards only'. May be null/empty.
          type: string
        outlet_postcode:
          description: The postcode for the outlet
          format: int32
          type: integer
        outlet_slid_spid:
          description: The SLID / SPID
          type: string
        outlet_suburb:
          description: The city/municipality the outlet is in
          type: string
      type: object
    V3.ResultRoute:
      properties:
        route_gtfs_id:
          description: GTFS Identifer of the route
          type: string
        route_id:
          description: Route identifier
          format: int32
          type: integer
        route_name:
          description: Name of route
          type: string
        route_number:
          description: Route number presented to public (nb. not route_id)
          type: string
        route_service_status:
          $ref: "#/components/schemas/V3.RouteServiceStatus"
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
      type: object
    V3.ResultStop:
      properties:
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
        routes:
          description: List of routes travelling through the stop
          items:
            $ref: "#/components/schemas/V3.ResultRoute"
          type: array
        stop_distance:
          description: Distance of stop from input location (in metres); returns 0 if no location is input
          format: float
          type: number
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
        stop_landmark:
          description: Landmark in proximity of stop
          type: string
        stop_latitude:
          description: Geographic coordinate of latitude at stop
          format: float
          type: number
        stop_longitude:
          description: Geographic coordinate of longitude at stop
          format: float
          type: number
        stop_name:
          description: Name of stop
          type: string
        stop_sequence:
          description: Sequence of the stop on the route/run; return 0 when route_id or run_id not specified. Order ascendingly by this field (when non zero) to get physical order (earliest first) of stops on the route_id/run_id.
          format: int32
          type: integer
        stop_suburb:
          description: suburb of stop
          type: string
      type: object
    V3.RouteDeparturesSpecificParameters:
      properties:
        date_utc:
          description: Filter by the date and time of the request (ISO 8601 UTC format) (default = current date and time)
          format: date-time
          type: string
        expand:
          description: "List of objects to be returned in full (i.e. expanded) - options include: All, Stop, Route, Run, Direction, Disruption, VehiclePosition, VehicleDescriptor or None.\r

            \            Run must be expanded to receive VehiclePosition and VehicleDescriptor information."
          items:
            enum:
              - All
              - Stop
              - Route
              - Run
              - Direction
              - Disruption
              - VehicleDescriptor
              - VehiclePosition
              - None
            type: string
          type: array
        include_cancelled:
          description: Indicates if cancelled services (if they exist) are returned (default = false) - metropolitan train only
          type: boolean
        include_geopath:
          description: Indicates if the route geopath should be returned
          type: boolean
        look_backwards:
          description: Indicates if filtering runs (and their departures) to those that arrive at destination before date_utc (default = false). Requires max_results &gt; 0.
          type: boolean
        max_results:
          description: Maximum number of results returned
          format: int32
          type: integer
        scheduled_timetables:
          description: "When set to true, all timetable information returned by Chronos will be sourced from the scheduled timetables,\r

            \            while when set to false (default state), the operational timetables will be used where available."
          type: boolean
        train_scheduled_timetables:
          description: DEPRECATED - use `scheduled_timetables` instead
          type: boolean
      type: object
    V3.RouteResponse:
      properties:
        route:
          $ref: "#/components/schemas/V2.Object"
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.RouteServiceStatus:
      properties:
        description:
          type: string
        timestamp:
          format: date-time
          type: string
      type: object
    V3.RouteType:
      properties:
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
        route_type_name:
          description: Name of transport mode
          type: string
      type: object
    V3.RouteTypesResponse:
      properties:
        route_types:
          description: Transport mode identifiers
          items:
            $ref: "#/components/schemas/V3.RouteType"
          type: array
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.Run:
      properties:
        destination_name:
          description: Name of destination of run
          type: string
        direction_id:
          description: Direction of travel identifier
          format: int32
          type: integer
        express_stop_count:
          description: The number of remaining skipped/express stations for the run/service from a stop
          format: int32
          type: integer
        final_stop_id:
          description: stop_id of final stop of run
          format: int32
          type: integer
        geopath:
          description: Geopath of the route
          items:
            $ref: "#/components/schemas/V2.Object"
          type: array
        route_id:
          description: Route identifier
          format: int32
          type: integer
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
        run_id:
          description: Numeric trip/service run identifier. Defaults to -1 when run identifier is Alphanumeric
          format: int32
          readOnly: true
          type: integer
        run_ref:
          description: Alphanumeric trip/service run identifier
          type: string
        run_sequence:
          description: Chronological sequence of the trip/service run on the route in direction. Order ascendingly by this field to get chronological order (earliest first) of runs with the same route_id and direction_id.
          format: int32
          type: integer
        status:
          description: Status of metropolitan train run; returns "scheduled" for other modes
          type: string
        vehicle_descriptor:
          $ref: "#/components/schemas/V3.VehicleDescriptor"
        vehicle_position:
          $ref: "#/components/schemas/V3.VehiclePosition"
      type: object
    V3.RunResponse:
      properties:
        run:
          $ref: "#/components/schemas/V3.Run"
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.RunsResponse:
      properties:
        runs:
          description: Individual trips/services of a route
          items:
            $ref: "#/components/schemas/V3.Run"
          type: array
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.SearchParameters:
      properties:
        include_addresses:
          description: Placeholder for future development; currently unavailable
          type: boolean
        include_outlets:
          description: Indicates if outlets will be returned in response (default = true)
          type: boolean
        latitude:
          description: Filter by geographic coordinate of latitude
          format: float
          type: number
        longitude:
          description: Filter by geographic coordinate of longitude
          format: float
          type: number
        match_route_by_suburb:
          description: Indicates whether to find routes by suburbs in the search term (default = true)
          type: boolean
        match_stop_by_gtfs_stop_id:
          description: Indicates whether to search for stops according to a metlink stop ID (default = false)
          type: boolean
        match_stop_by_suburb:
          description: Indicates whether to find stops by suburbs in the search term (default = true)
          type: boolean
        max_distance:
          description: Filter by maximum distance (in metres) from location specified via latitude and longitude parameters
          format: float
          type: number
        route_types:
          description: "Filter by route_type; values returned via RouteTypes API (note: stops and routes are ordered by route_types specified)"
          items:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
            format: int32
            type: integer
          type: array
      type: object
    V3.SearchResult:
      properties:
        outlets:
          description: myki ticket outlets
          items:
            $ref: "#/components/schemas/V3.ResultOutlet"
          type: array
        routes:
          description: Train lines, tram routes, bus routes, regional coach routes, Night Bus routes
          items:
            $ref: "#/components/schemas/V3.ResultRoute"
          type: array
        status:
          $ref: "#/components/schemas/V3.Status"
        stops:
          description: Train stations, tram stops, bus stops, regional coach stops or Night Bus stops
          items:
            $ref: "#/components/schemas/V3.ResultStop"
          type: array
      type: object
    V3.SiriDirectionRefsDictionary:
      properties:
        direction_refs:
          additionalProperties:
            $ref: "#/components/schemas/V3.SiriStopsRefsDictionary"
          readOnly: true
          type: object
      type: object
    V3.SiriDownstreamSubscription:
      properties:
        consumer_address:
          type: string
        initial_termination_time:
          format: date-time
          type: string
        message_type:
          enum:
            - 0
            - 1
          format: int32
          type: integer
        preview_interval:
          type: string
        siri_format:
          enum:
            - 0
            - 1
          format: int32
          type: integer
        siri_version:
          pattern: 1.3|2.0
          type: string
        subscriber_ref:
          type: string
        subscription_ref:
          type: string
        topics:
          items:
            $ref: "#/components/schemas/V3.SiriDownstreamSubscriptionTopic"
          type: array
        validity_period_end:
          format: date-time
          type: string
        validity_period_start:
          format: date-time
          type: string
      type: object
    V3.SiriDownstreamSubscriptionDeleteRequest:
      properties:
        subscriber_ref:
          description: Siri Subscriber Ref
          type: string
        subscription_ref:
          description: "Siri Subscription Reference(s) - Unique to a Subscriber Ref.\r

            \            If `null`, then all subscriptions will be terminated for the referenced Subscriber."
          items:
            type: string
          type: array
      required:
        - subscriber_ref
      type: object
    V3.SiriDownstreamSubscriptionResponse:
      properties:
        valid_until:
          description: The Data Horizon of Chronos
          format: date-time
          type: string
      type: object
    V3.SiriDownstreamSubscriptionTopic:
      properties:
        direction_ref:
          enum:
            - 1
            - 2
            - 5
            - 10
            - 16
            - 32
            - 65
            - 130
          format: int32
          type: integer
        line_ref:
          type: string
        route_type:
          enum:
            - 0
            - 1
            - 2
            - 3
            - 4
          format: int32
          type: integer
      type: object
    V3.SiriEstimatedTimetableSubscriptionRequest:
      properties:
        consumer_address:
          description: Siri Consumer Address - Baseline and Updates will be sent to this address
          type: string
        initial_termination_time:
          description: Siri Initial Termination Time - Expiry of the subscription
          format: date-time
          type: string
        preview_interval:
          description: Siri Preview Interval
          type: string
        siri_format:
          description: Siri Message Format 'xml' or 'json'
          enum:
            - 0
            - 1
          format: int32
          type: integer
        siri_version:
          description: Siri Message Version '1.3' or '2.0'
          pattern: 1.3|2.0
          type: string
        subscriber_ref:
          description: Siri Subscriber Ref
          type: string
        subscription_ref:
          description: Siri Subscription Ref - Unique to a Subscriber Ref
          type: string
        topics:
          items:
            $ref: "#/components/schemas/V3.SiriSubscriptionTopic"
          type: array
      required:
        - preview_interval
        - subscriber_ref
        - subscription_ref
        - siri_format
        - siri_version
        - consumer_address
        - initial_termination_time
        - topics
      type: object
    V3.SiriLineRef:
      properties:
        direction_ref:
          description: Siri DirectionRef  (in, out, up, down, clockwise, counterclockwise, Inbound, Outbound)
          enum:
            - 1
            - 2
            - 5
            - 10
            - 16
            - 32
            - 65
            - 130
          format: int32
          type: integer
        line_ref:
          description: Siri LineRef
          type: string
      required:
        - line_ref
      type: object
    V3.SiriLineRefDirectionRefStopPointRef:
      properties:
        direction_ref:
          description: Siri DirectionRef  (in, out, up, down, clockwise, counterclockwise, Inbound, Outbound)
          enum:
            - 1
            - 2
            - 5
            - 10
            - 16
            - 32
            - 65
            - 130
          format: int32
          type: integer
        line_ref:
          description: Siri LineRef
          type: string
        stop_point_ref:
          description: Siri StopPointRef
          format: int32
          type: integer
      required:
        - line_ref
        - direction_ref
        - stop_point_ref
      type: object
    V3.SiriLineRefDirectionRefsDictionary:
      properties:
        direction_refs:
          additionalProperties:
            items:
              $ref: "#/components/schemas/V3.SiriReferenceDataDetail"
            type: array
          type: object
        unmatched_direction_refs:
          additionalProperties:
            type: string
          type: object
      type: object
    V3.SiriLineRefMappingsResponse:
      properties:
        line_refs:
          additionalProperties:
            $ref: "#/components/schemas/V3.SiriLineRefDirectionRefsDictionary"
          type: object
        mapping_version:
          readOnly: true
          type: string
        status:
          $ref: "#/components/schemas/V3.Status"
      type: object
    V3.SiriLineRefsRequest:
      properties:
        line_refs:
          items:
            $ref: "#/components/schemas/V3.SiriLineRef"
          type: array
        mapping_version:
          description: DIVA mapping version generated by Chronos during a Parser or RealtimeBusConfig load
          type: string
      required:
        - mapping_version
      type: object
    V3.SiriProductionTimetableSubscriptionRequest:
      properties:
        consumer_address:
          description: Siri Consumer Address - Baseline and Updates will be sent to this address
          type: string
        end_time:
          description: Siri End Time of the Validity Period
          format: date-time
          type: string
        initial_termination_time:
          description: Siri Initial Termination Time - Expiry of the subscription
          format: date-time
          type: string
        siri_format:
          description: Siri Message Format 'xml' or 'json'
          enum:
            - 0
            - 1
          format: int32
          type: integer
        siri_version:
          description: Siri Message Version '1.3' or '2.0'
          pattern: 1.3|2.0
          type: string
        start_time:
          description: Siri Start Time of the Validity Period
          format: date-time
          type: string
        subscriber_ref:
          description: Siri Subscriber Ref
          type: string
        subscription_ref:
          description: Siri Subscription Ref - Unique to a Subscriber Ref
          type: string
        topics:
          items:
            $ref: "#/components/schemas/V3.SiriSubscriptionTopic"
          type: array
      required:
        - start_time
        - end_time
        - subscriber_ref
        - subscription_ref
        - siri_format
        - siri_version
        - consumer_address
        - initial_termination_time
        - topics
      type: object
    V3.SiriReferenceDataDetail:
      properties:
        direction_id:
          format: int32
          type: integer
        route_id:
          format: int32
          type: integer
        route_number_short:
          description: Route number
          type: string
        route_type:
          format: int32
          type: integer
        tracking_supplier_id:
          description: Authority (Upstream SIRI provider) of a route and direction
          format: int32
          type: integer
      type: object
    V3.SiriReferenceDataMappingsResponse:
      properties:
        line_refs:
          additionalProperties:
            $ref: "#/components/schemas/V3.SiriDirectionRefsDictionary"
          description: SIRI LineRef
          readOnly: true
          type: object
        mapping_version:
          readOnly: true
          type: string
        status:
          $ref: "#/components/schemas/V3.Status"
        stop_point_refs:
          additionalProperties:
            $ref: "#/components/schemas/V3.StopPoint"
          readOnly: true
          type: object
      type: object
    V3.SiriReferenceDataRequest:
      properties:
        date_utc:
          description: Filter by the date and time of the request (ISO 8601 UTC format) (default = current date and time)
          format: date-time
          type: string
        line_refs:
          items:
            $ref: "#/components/schemas/V3.SiriLineRefDirectionRefStopPointRef"
          type: array
        mapping_version:
          description: DIVA mapping version generated by Chronos during a Parser or RealtimeBusConfig load
          type: string
        stop_point_refs:
          description: Siri StopPointRef
          items:
            format: int32
            type: integer
          type: array
      required:
        - line_refs
        - mapping_version
      type: object
    V3.SiriStopsRefsDictionary:
      properties:
        stop_point_refs:
          additionalProperties:
            $ref: "#/components/schemas/V3.SiriReferenceDataDetail"
          readOnly: true
          type: object
        unmatched_stop_point_refs:
          additionalProperties:
            type: string
          readOnly: true
          type: object
      type: object
    V3.SiriSubscriptionTopic:
      properties:
        direction_ref:
          description: Siri DirectionRef  (in, out, up, down, clockwise, counterclockwise, Inbound, Outbound)
          enum:
            - 1
            - 2
            - 5
            - 10
            - 16
            - 32
            - 65
            - 130
          format: int32
          type: integer
        line_ref:
          description: Siri LineRef
          type: string
        route_type:
          description: Route Type eg. 0 (Train) 1 (Tram) 2 (Bus) 3 (Vline) 4 (NightRider)
          enum:
            - 0
            - 1
            - 2
            - 3
            - 4
          format: int32
          type: integer
      required:
        - line_ref
        - route_type
      type: object
    V3.Status:
      properties:
        health:
          description: API system health status (0=offline, 1=online)
          enum:
            - 0
            - 1
          format: int32
          type: integer
        version:
          description: API Version number
          type: string
      type: object
    V3.StopAccessibility:
      properties:
        audio_customer_information:
          description: Indicates if there is at least one audio customer information at the stop/platform
          type: boolean
        escalator:
          description: Indicates if there is at least one accessible escalator at the stop/platform that complies with the Disability Standards for Accessible Public Transport under the Disability Discrimination Act (1992)
          type: boolean
        hearing_loop:
          description: Indicates if there is a hearing loop facility at the stop/platform
          type: boolean
        lift:
          description: Indicates if there is an elevator at the stop/platform
          type: boolean
        lighting:
          description: Indicates if there is lighting at the stop
          type: boolean
        platform_number:
          description: Indicates the platform number for xivic information (Platform 0 indicates general stop facilities)
          format: int32
          type: integer
        stairs:
          description: Indicates if there are stairs available in the stop
          type: boolean
        stop_accessible:
          description: Indicates if the stop is accessible
          type: boolean
        tactile_ground_surface_indicator:
          description: Indicates if there are tactile tiles (also known as tactile ground surface indicators, or TGSIs) at the stop
          type: boolean
        waiting_room:
          description: Indicates if there is a general waiting area at the stop
          type: boolean
        wheelchair:
          $ref: "#/components/schemas/V3.StopAccessibilityWheelchair"
      type: object
    V3.StopAccessibilityWheelchair:
      properties:
        accessible_ramp:
          type: boolean
        low_ticket_counter:
          description: Indicates if there is at least one low ticket counter at the stop that complies with the Disability Standards for Accessible Public Transport under the Disability Discrimination Act (1992)
          type: boolean
        manouvering:
          description: Indicates if there is a space for mobility device to board on or off a transport mode
          type: boolean
        parking:
          description: Indicates if there is at least one accessible parking spot at the stop that complies with the Disability Standards for Accessible Public Transport under the Disability Discrimination Act (1992)
          type: boolean
        raised_platform:
          description: Indicates if there is a raised platform to board a train
          type: boolean
        raised_platform_shelther:
          description: Indicates if there is shelter near the raised platform
          type: boolean
        ramp:
          description: Indicates if there are ramps (&lt;1:14) at the stop/platform
          type: boolean
        secondary_path:
          description: Indicates if there is a path beyond the stop which is accessible
          type: boolean
        steep_ramp:
          description: Indicates if there are ramps (&gt;1:14) at the stop/platform
          type: boolean
        telephone:
          description: Indicates if there is at least one accessible telephone at the stop/platform that complies with the Disability Standards for Accessible Public Transport under the Disability Discrimination Act (1992)
          type: boolean
        toilet:
          description: Indicates if there is at least one accessible toilet at the stop/platform that complies with the Disability Standards for Accessible Public Transport under the Disability Discrimination Act (1992)
          type: boolean
      type: object
    V3.StopAmenityDetails:
      properties:
        car_parking:
          description: The number of free car parking spots at the stop
          type: string
        cctv:
          description: Indicates if there are CCTV (i.e. closed circuit television) cameras at the stop
          type: boolean
        taxi_rank:
          description: Indicates if there is a taxi rank at or near the stop
          type: boolean
        toilet:
          description: Indicates if there is a public toilet at or near the stop
          type: boolean
      type: object
    V3.StopBasic:
      properties:
        stop_id:
          format: int32
          type: integer
        stop_name:
          type: string
      type: object
    V3.StopDepartureRequest:
      properties:
        gtfs:
          description: Indicates that stop_id parameter will accept "GTFS stop_id" data and route_directions[x].route_id parameters will accept route_gtfs_id data
          type: boolean
        max_results:
          description: Maximum number of results returned
          format: int32
          maximum: 2147483647
          minimum: 0
          type: integer
        route_directions:
          description: The route directions to find departures for at this stop.
          items:
            $ref: "#/components/schemas/V3.StopDepartureRequestRouteDirection"
          type: array
        route_type:
          description: Number identifying transport mode; values returned via RouteTypes API
          enum:
            - 0
            - 1
            - 2
            - 3
            - 4
          format: int32
          type: integer
        stop_id:
          description: Identifier of stop; values returned by Stops API
          format: int32
          maximum: 2147483647
          minimum: 0
          type: integer
      required:
        - route_directions
      type: object
    V3.StopDepartureRequestRouteDirection:
      properties:
        direction_id:
          description: Direction of travel identifier; values returned by Directions API - v3/directions
          format: int32
          maximum: 2147483647
          minimum: 0
          type: integer
        direction_name:
          description: Name of direction of travel; values returned by Directions API - v3/directions
          type: string
        route_id:
          description: Identifier of route; values returned by Routes API - v3/routes
          type: string
      required:
        - direction_name
      type: object
    V3.StopDetails:
      properties:
        disruption_ids:
          description: Disruption information identifier(s)
          items:
            format: int64
            type: integer
          type: array
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
        routes:
          description: Routes travelling through the stop
          items:
            $ref: "#/components/schemas/V2.Object"
          type: array
        station_description:
          description: The definition applicable to the station_type; returns null for V/Line train
          type: string
        station_type:
          description: Type of metropolitan train station (i.e. "Premium", "Host" or "Unstaffed" station); returns null for V/Line train
          type: string
        stop_accessibility:
          $ref: "#/components/schemas/V3.StopAccessibility"
        stop_amenities:
          $ref: "#/components/schemas/V3.StopAmenityDetails"
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
        stop_landmark:
          description: Landmark in proximity of stop
          type: string
        stop_location:
          $ref: "#/components/schemas/V3.StopLocation"
        stop_name:
          description: Name of stop
          type: string
        stop_staffing:
          $ref: "#/components/schemas/V3.StopStaffing"
      type: object
    V3.StopGeosearch:
      properties:
        disruption_ids:
          description: Disruption information identifier(s)
          items:
            format: int64
            type: integer
          type: array
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
        routes:
          description: List of routes travelling through the stop
          items:
            $ref: "#/components/schemas/V2.Object"
          type: array
        stop_distance:
          description: Distance of stop from input location (in metres); returns 0 if no location is input
          format: float
          type: number
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
        stop_landmark:
          description: Landmark in proximity of stop
          type: string
        stop_latitude:
          description: Geographic coordinate of latitude at stop
          format: float
          type: number
        stop_longitude:
          description: Geographic coordinate of longitude at stop
          format: float
          type: number
        stop_name:
          description: Name of stop
          type: string
        stop_sequence:
          description: Sequence of the stop on the route/run; return 0 when route_id or run_id not specified. Order ascendingly by this field (when non zero) to get physical order (earliest first) of stops on the route_id/run_id.
          format: int32
          type: integer
        stop_suburb:
          description: suburb of stop
          type: string
      type: object
    V3.StopGps:
      properties:
        latitude:
          description: Geographic coordinate of latitude at stop
          format: float
          type: number
        longitude:
          description: Geographic coordinate of longitude at stop
          format: float
          type: number
      type: object
    V3.StopLocation:
      properties:
        gps:
          $ref: "#/components/schemas/V3.StopGps"
      type: object
    V3.StopModel:
      properties:
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
        stop_distance:
          description: Distance of stop from input location (in metres); returns 0 if no location is input
          format: float
          type: number
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
        stop_landmark:
          description: Landmark in proximity of stop
          type: string
        stop_latitude:
          description: Geographic coordinate of latitude at stop
          format: float
          type: number
        stop_longitude:
          description: Geographic coordinate of longitude at stop
          format: float
          type: number
        stop_name:
          description: Name of stop
          type: string
        stop_sequence:
          description: Sequence of the stop on the route/run; return 0 when route_id or run_id not specified. Order ascendingly by this field (when non zero) to get physical order (earliest first) of stops on the route_id/run_id.
          format: int32
          type: integer
        stop_suburb:
          description: suburb of stop
          type: string
      type: object
    V3.StopOnRoute:
      properties:
        disruption_ids:
          description: Disruption information identifier(s)
          items:
            format: int64
            type: integer
          type: array
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
        stop_landmark:
          description: Landmark in proximity of stop
          type: string
        stop_latitude:
          description: Geographic coordinate of latitude at stop
          format: float
          type: number
        stop_longitude:
          description: Geographic coordinate of longitude at stop
          format: float
          type: number
        stop_name:
          description: Name of stop
          type: string
        stop_sequence:
          description: Sequence of the stop on the route/run; return 0 when route_id or run_id not specified. Order ascendingly by this field (when non zero) to get physical order (earliest first) of stops on the route_id/run_id.
          format: int32
          type: integer
        stop_suburb:
          description: suburb of stop
          type: string
        stop_ticket:
          $ref: "#/components/schemas/V3.StopTicket"
      type: object
    V3.StopPoint:
      properties:
        stop_id:
          format: int32
          type: integer
      type: object
    V3.StopResponse:
      properties:
        disruptions:
          additionalProperties:
            $ref: "#/components/schemas/V3.Disruption"
          description: Disruption information applicable to relevant routes or stops
          type: object
        status:
          $ref: "#/components/schemas/V3.Status"
        stop:
          $ref: "#/components/schemas/V3.StopDetails"
      type: object
    V3.StopStaffing:
      properties:
        fri_am_from:
          description: Stop staffing hours
          type: string
        fri_am_to:
          description: Stop staffing hours
          type: string
        fri_pm_from:
          description: Stop staffing hours
          type: string
        fri_pm_to:
          description: Stop staffing hours
          type: string
        mon_am_from:
          description: Stop staffing hours
          type: string
        mon_am_to:
          description: Stop staffing hours
          type: string
        mon_pm_from:
          description: Stop staffing hours
          type: string
        mon_pm_to:
          description: Stop staffing hours
          type: string
        ph_additional_text:
          description: Stop staffing hours
          type: string
        ph_from:
          description: Stop staffing hours
          type: string
        ph_to:
          description: Stop staffing hours
          type: string
        sat_am_from:
          description: Stop staffing hours
          type: string
        sat_am_to:
          description: Stop staffing hours
          type: string
        sat_pm_from:
          description: Stop staffing hours
          type: string
        sat_pm_to:
          description: Stop staffing hours
          type: string
        sun_am_from:
          description: Stop staffing hours
          type: string
        sun_am_to:
          description: Stop staffing hours
          type: string
        sun_pm_from:
          description: Stop staffing hours
          type: string
        sun_pm_to:
          description: Stop staffing hours
          type: string
        thu_am_from:
          description: Stop staffing hours
          type: string
        thu_am_to:
          description: Stop staffing hours
          type: string
        thu_pm_from:
          description: Stop staffing hours
          type: string
        thu_pm_to:
          description: Stop staffing hours
          type: string
        tue_am_from:
          description: Stop staffing hours
          type: string
        tue_am_to:
          description: Stop staffing hours
          type: string
        tue_pm_from:
          description: Stop staffing hours
          type: string
        tue_pm_to:
          description: Stop staffing hours
          type: string
        wed_am_from:
          description: Stop staffing hours
          type: string
        wed_am_to:
          description: Stop staffing hours
          type: string
        wed_pm_To:
          description: Stop staffing hours
          type: string
        wed_pm_from:
          description: Stop staffing hours
          type: string
      type: object
    V3.StopTicket:
      properties:
        is_free_fare_zone:
          description: Indicates whether the stop is inside the free fare zone
          type: boolean
        ticket_checks:
          type: boolean
        ticket_machine:
          type: boolean
        ticket_type:
          description: Indicates the ticket type for the stop (myki, paper or both)
          type: string
        ticket_zones:
          items:
            format: int32
            type: integer
          type: array
        vline_reservation:
          type: boolean
        zone:
          description: Description of the zone
          type: string
      type: object
    V3.StoppingPattern:
      properties:
        departures:
          description: Timetabled and real-time service departures
          items:
            $ref: "#/components/schemas/V3.PatternDeparture"
          type: array
        directions:
          additionalProperties:
            $ref: "#/components/schemas/V3.Direction"
          description: Directions of travel of route
          type: object
        disruptions:
          description: Disruption information applicable to relevant routes or stops
          items:
            $ref: "#/components/schemas/V3.Disruption"
          type: array
        routes:
          additionalProperties:
            $ref: "#/components/schemas/V2.Object"
          description: Train lines, tram routes, bus routes, regional coach routes, Night Bus routes
          type: object
        runs:
          additionalProperties:
            $ref: "#/components/schemas/V3.Run"
          description: Individual trips/services of a route
          type: object
        status:
          $ref: "#/components/schemas/V3.Status"
        stops:
          additionalProperties:
            $ref: "#/components/schemas/V3.StoppingPatternStop"
          description: A train station, tram stop, bus stop, regional coach stop or Night Bus stop
          type: object
      type: object
    V3.StoppingPatternStop:
      properties:
        route_type:
          description: Transport mode identifier
          format: int32
          type: integer
        stop_distance:
          description: Distance of stop from input location (in metres); returns 0 if no location is input
          format: float
          type: number
        stop_id:
          description: Stop identifier
          format: int32
          type: integer
        stop_landmark:
          description: Landmark in proximity of stop
          type: string
        stop_latitude:
          description: Geographic coordinate of latitude at stop
          format: float
          type: number
        stop_longitude:
          description: Geographic coordinate of longitude at stop
          format: float
          type: number
        stop_name:
          description: Name of stop
          type: string
        stop_sequence:
          description: Sequence of the stop on the route/run; return 0 when route_id or run_id not specified. Order ascendingly by this field (when non zero) to get physical order (earliest first) of stops on the route_id/run_id.
          format: int32
          type: integer
        stop_suburb:
          description: suburb of stop
          type: string
        stop_ticket:
          $ref: "#/components/schemas/V3.StopTicket"
      type: object
    V3.StopsByDistanceResponse:
      properties:
        disruptions:
          additionalProperties:
            $ref: "#/components/schemas/V3.Disruption"
          description: Disruption information applicable to relevant routes or stops
          type: object
        status:
          $ref: "#/components/schemas/V3.Status"
        stops:
          description: Train stations, tram stops, bus stops, regional coach stops or Night Bus stops
          items:
            $ref: "#/components/schemas/V3.StopGeosearch"
          type: array
      type: object
    V3.StopsOnRouteResponse:
      properties:
        disruptions:
          additionalProperties:
            $ref: "#/components/schemas/V3.Disruption"
          description: Disruption information applicable to relevant routes or stops
          type: object
        geopath:
          description: GeoPath for the route
          items:
            $ref: "#/components/schemas/V2.Object"
          type: array
        status:
          $ref: "#/components/schemas/V3.Status"
        stops:
          description: Train stations, tram stops, bus stops, regional coach stops or Night Bus stops
          items:
            $ref: "#/components/schemas/V3.StopOnRoute"
          type: array
      type: object
    V3.VehicleDescriptor:
      properties:
        air_conditioned:
          description: Indicator if vehicle is air conditioned. May be null. Only available for some tram runs.
          type: boolean
        description:
          description: "Vehicle description such as \"6 Car Comeng\", \"6 Car Xtrapolis\", \"3 Car Comeng\", \"6 Car Siemens\", \"3 Car Siemens\". May be null/empty.\r

            \            Only available for some metropolitan train runs."
          type: string
        id:
          description: Operator identifier of the vehicle such as "26094". May be null/empty. Only available for some tram and bus runs.
          type: string
        length:
          description: The length of the vehicle. Applies to CIS - Metro Trains
          type: string
        low_floor:
          description: Indicator if vehicle has a low floor. May be null. Only available for some tram runs.
          type: boolean
        operator:
          description: "Operator name of the vehicle such as \"Metro Trains Melbourne\", \"Yarra Trams\", \"Ventura Bus Line\", \"CDC\" or \"Sita Bus Lines\" . May be null/empty.\r

            \            Only available for train, tram, v/line and some bus runs."
          type: string
        supplier:
          description: Supplier of vehicle descriptor data.
          type: string
      type: object
    V3.VehiclePosition:
      properties:
        bearing:
          description: "Compass bearing of the vehicle when known, clockwise from True North, i.e., 0 is North and 90 is East. May be null.\r

            \            Only available for some bus runs."
          format: double
          type: number
        datetime_utc:
          description: Date and time that the vehicle position data was supplied.
          format: date-time
          type: string
        direction:
          description: CIS - Metro Train Vehicle Location Direction
          type: string
        easting:
          description: CIS - Metro Train Vehicle Location Easting coordinate
          format: double
          type: number
        expiry_time:
          description: CIS - Metro Train Vehicle Location data expiry time
          format: date-time
          type: string
        latitude:
          description: "Geographic coordinate of latitude of the vehicle when known. May be null.\r

            \            Only available for some bus runs."
          format: double
          type: number
        longitude:
          description: "Geographic coordinate of longitude of the vehicle when known. \r

            \            Only available for some bus runs."
          format: double
          type: number
        northing:
          description: CIS - Metro Train Vehicle Location Northing coordinate
          format: double
          type: number
        supplier:
          description: Supplier of vehicle position data.
          type: string
      type: object
