openapi: 3.0.0
servers:
  - description: Production
    url: https://router.api.gov.bc.ca/
  - description: Test
    url: https://routertst.api.gov.bc.ca/
  - description: Delivery
    url: https://router-dev.api.gov.bc.ca/
info:
  contact:
    name: Contact DataBC
    url: https://dpdd.atlassian.net/servicedesk/customer/portal/1/group/7/
  description: |+
    Finds shortest/fastest route between a start point and one or more stop points on British Columbia's public road network. The BC Route planner [webpage](https://www2.gov.bc.ca/gov/content?id=9D99E684CCD042CD88FADC51E079B4B5) provides additional information.  Here are some geocoded addresses to play with:<br>18 Douglas St,Victoria -123.36962,48.40892<br>1002 Johnson St, Victoria -123.355745,48.426206<br>543 Johnson St, Victoria, BC -123.36907,48.42770 <br>14 Centennial Sq, Victoria, BC -123.36564,48.42863<br>1105 Royal Ave,New Westminster  -122.92009,49.20063<br>808 Jackson Cres, New Westminster -122.90762,49.22558<br>10810 McDonald Rd, Chilliwack -121.93808,49.19859<br>3950 June Springs Rd, Kelowna -119.40751,49.83960<br>1201 Riondel Rd, Kootenay Bay -116.85402,49.74448<br>1201 Riondel Rd, Kootenay Bay -116.832759,49.730500 (parcelPoint)<br>2499 Walbran Pl, Courtenay -124.97295,49.71518<br>2013 Smoke Bluff Rd, Squamish -123.13946,49.70401<br>235 Kelvin Grove Way, Lions Bay -123.23524,49.45035<br>   Please see our <a href=https://github.com/bcgov/api-specs/blob/master/COLLECTION_NOTICE.md#collection-notice target="_blank">data collection notice</a>. 

    Please note that you may experience issues when submitting requests to the delivery or test environment if using this [OpenAPI specification](https://github.com/bcgov/api-specs) in other API console viewers. 

    [API keys](https://api.gov.bc.ca/devportal/api-directory/740) are unique and can be acquired with a GitHub or IDIR account. 

  license:
    name: Copyright Province of British Columbia - Access only
    url: https://www2.gov.bc.ca/gov/content?id=1AAACC9C65754E4D89A118B875E0FBDA
  termsOfService: http://www2.gov.bc.ca/gov/content?id=D1EE0A405E584363B205CD4353E02C88
  title: BC Route Planner REST API
  version: 2.0.0
  x-apisguru-categories:
    - open_data
  x-logo:
    url: https://avatars1.githubusercontent.com/u/916280?v=3&s=200
  x-origin:
    - converter:
        url: https://github.com/mermade/oas-kit
        version: 7.0.4
      format: openapi
      url: https://raw.githubusercontent.com/bcgov/api-specs/master/router/router.json
      version: "3.0"
  x-providerName: gov.bc.ca
  x-serviceName: router
externalDocs:
  description: Developer Guide
  url: https://github.com/bcgov/ols-router/blob/gh-pages/router-developer-guide.md
security:
  - apikey: []
tags:
  - name: directions
  - name: distance
  - name: route
paths:
  "/directions.{outputFormat}":
    get:
      description: Represents the turn-by-turn directions, geometry, distance, and time of the shortest path or fastest path between given start and end points
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start/end point.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: turn-by-turn directions, geometry, distance, and time of the shortest or fastest route
      summary: Get the directions, path, distance and travel time between a series of geographic points
      tags:
        - directions
    post:
      description: Represents the turn-by-turn directions, geometry, distance, and time of the shortest path or fastest path between given start and end points
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start/end point.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: turn-by-turn directions, geometry, distance, and time of the shortest or fastest route
      summary: Get the directions, path, distance and travel time between a series of geographic points
      tags:
        - directions
  "/distance.{outputFormat}":
    get:
      description: Represents the distance and time of the shortest or fastest path between given start and end points.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Distance and time of the shortest or fastest route
      summary: Get distance and travel time between two geographic points
      tags:
        - distance
    post:
      description: Represents the distance and time of the shortest or fastest path between given start and end points.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Distance and time of the shortest or fastest route
      summary: Get distance and travel time between two geographic points
      tags:
        - distance
  "/distance/betweenPairs.{outputFormat}":
    get:
      description: Represents the distance and time of the shortest or fastest paths between all pairs of fromPoints and toPoints. The number of fromPoints times the number of toPoints should not exceed 100 or the request will time out.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - html
            type: string
        - description: A comma-separated list of origin points.  See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#fromPoints target='_blank'>fromPoints</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: fromPoints
          required: true
          schema:
            type: string
        - description: A comma-separated list of destination points. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#toPoints target='_blank'>toPoints</a>
          example: -124.972951,49.715181,-123.139464,49.704015
          in: query
          name: toPoints
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
        - description: The maximum number of pairs to return for each toPoint.  Pairs are ordered by distance/time from fromPoint. For example, given 1 fromPoint, and 10 toPoints, and maxPairs=1 , return the nearest toPoint to the fromPoint. Given 3 fromPoints and 10 toPoints, maxPairs=3 means return the 3 nearest toPoints to each fromPoint.
          in: query
          name: maxPairs
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: A list of routes and their route distances/times.
      summary: Get distance and travel time between each pair of geographic points
      tags:
        - distance
    post:
      description: Represents the distance and time of the shortest or fastest paths between all pairs of fromPoints and toPoints. The number of fromPoints times the number of toPoints should not exceed 100 or the request will time out.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - html
            type: string
        - description: A comma-separated list of origin points.  See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#fromPoints target='_blank'>fromPoints</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: fromPoints
          required: true
          schema:
            type: string
        - description: A comma-separated list of destination points. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#toPoints target='_blank'>toPoints</a>
          example: -124.972951,49.715181,-123.139464,49.704015
          in: query
          name: toPoints
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
        - description: The maximum number of pairs to return for each toPoint.  Pairs are ordered by distance/time from fromPoint. For example, given 1 fromPoint, and 10 toPoints, and maxPairs=1 , return the nearest toPoint to the fromPoint. Given 3 fromPoints and 10 toPoints, maxPairs=3 means return the 3 nearest toPoints to each fromPoint.
          in: query
          name: maxPairs
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: A list of routes and their route distances/times.
      summary: Get distance and travel time between each pair of geographic points
      tags:
        - distance
  "/optimalDirections.{outputFormat}":
    get:
      description: Represents the turn-by-turn directions, geometry, distance, and time of the shortest path or fastest path between a start point and a series of end points which are reordered to minimize distance/time
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: turn-by-turn directions, geometry, distance, and time of the shortest or fastest route. End points are reordered to minimize total distance or time.
      summary: Get the directions, optimal path, distance and travel time between a start point and a series of end points which are reordered to minimize total distance or time.
      tags:
        - directions
    post:
      description: Represents the turn-by-turn directions, geometry, distance, and time of the shortest path or fastest path between a start point and one or more end points which are reordered to minimize distance or time.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: turn-by-turn directions, geometry, distance, and time of the shortest or fastest route. End points are reordered to minimize total distance or time.
      summary: Get the directions, optimal path, distance and travel time between a start point and one or more end points which are reordered to minimize total distance or time.
      tags:
        - directions
  "/optimalRoute.{outputFormat}":
    get:
      description: Represents the geometry, distance, and time of the shortest or fastest path between a start point and a series of end points which are reordered to minimize distance or time
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Geometry, distance, and time of the shortest or fastest route. End points are reordered to minimize total distance or time
      summary: Get the optimal path, distance and travel time between a start point and a series of end points which are reordered to minimize total distance or time.
      tags:
        - route
    post:
      description: Represents the geometry, distance, and time of the shortest or fastest path between a start point and a series of end points which are reordered to minimize total distance or time.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Geometry, distance, and time of the shortest or fastest route. End points are reordered to minimize total distance or time.
      summary: Get the path, distance and travel time between a start point and a series of end points which are reordered to minimize total distance or time.
      tags:
        - route
  "/route.{outputFormat}":
    get:
      description: Represents the geometry, distance, and time of the shortest or fastest path between given start and end points.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start/end point.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br> Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Geometry, distance, and time of the shortest or fastest route
      summary: Get the path, distance and travel time between a series of geographic points
      tags:
        - route
    post:
      description: Represents the geometry, distance, and time of the shortest or fastest path between given start and end points.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start/end point.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Geometry, distance, and time of the shortest or fastest route
      summary: Get the path, distance and travel time between a series of geographic points
      tags:
        - route
  "/truck/directions.{outputFormat}":
    get:
      description: Represents the turn-by-turn directions, geometry, distance, and time of the shortest path or fastest path between given start and end points for a commercial vehicle
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start/end point.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: The truck route multiplier value is used to multiply the cost of using roads that are not truck routes.
          in: query
          name: truckRouteMultiplier
          required: false
          schema:
            default: 9
            type: integer
        - description: A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections, ferry sections and non-ferry sections, and locality names.  The response includes a partitions attribute, which is an array of objects, each of which has an index (into the route coordinate array) and a value for each of the attributes requested in the partition parameter. Any or all of the following values can be used. <br><br>Partition values:<br> isTruckRoute – Distinguish between truck route sections and non-truck route sections <br> isFerry – Distinguish between ferry sections and non-ferry sections <br> locality – Include the locality name for the route partition
          in: query
          name: partition
          required: false
          schema:
            default: ""
            type: string
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: turn-by-turn directions, geometry, distance, and time of the shortest or fastest route
      summary: Get the directions, path, distance and travel time between a series of geographic points for a commercial vehicle
      tags:
        - directions
    post:
      description: Represents the turn-by-turn directions, geometry, distance, and time of the shortest path or fastest path between given start and end points
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start/end point.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: The truck route multiplier value is used to multiply the cost of using roads that are not truck routes.
          in: query
          name: truckRouteMultiplier
          required: false
          schema:
            default: 9
            type: integer
        - description: A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections, ferry sections and non-ferry sections, and locality names.  The response includes a partitions attribute, which is an array of objects, each of which has an index (into the route coordinate array) and a value for each of the attributes requested in the partition parameter. Any or all of the following values can be used. <br><br>Partition values:<br> isTruckRoute – Distinguish between truck route sections and non-truck route sections <br> isFerry – Distinguish between ferry sections and non-ferry sections <br> locality – Include the locality name for the route partition
          in: query
          name: partition
          required: false
          schema:
            default: ""
            type: string
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: turn-by-turn directions, geometry, distance, and time of the shortest or fastest route
      summary: Get the directions, path, distance and travel time between a series of geographic points
      tags:
        - directions
  "/truck/distance.{outputFormat}":
    get:
      description: Represents the distance and time of the shortest or fastest path between given start and end points.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: The truck route multiplier value is used to multiply the cost of using roads that are not truck routes.
          in: query
          name: truckRouteMultiplier
          required: false
          schema:
            default: 9
            type: integer
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Distance and time of the shortest or fastest route
      summary: Get distance and travel time between two geographic points for a commercial vehicle
      tags:
        - distance
    post:
      description: Represents the distance and time of the shortest or fastest path between given start and end points.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Distance and time of the shortest or fastest route
      summary: Get distance and travel time between two geographic points
      tags:
        - distance
  "/truck/distance/betweenPairs.{outputFormat}":
    get:
      description: Represents the distance and time of the shortest or fastest paths between all pairs of fromPoints and toPoints for a commercial vehicle. The number of fromPoints times the number of toPoints should not exceed 100 or the request will time out.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - html
            type: string
        - description: A comma-separated list of origin points.  See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#fromPoints target='_blank'>fromPoints</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: fromPoints
          required: true
          schema:
            type: string
        - description: A comma-separated list of destination points. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#toPoints target='_blank'>toPoints</a>
          example: -124.972951,49.715181,-123.139464,49.704015
          in: query
          name: toPoints
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
        - description: The maximum number of pairs to return for each toPoint.  Pairs are ordered by distance/time from fromPoint. For example, given 1 fromPoint, and 10 toPoints, and maxPairs=1 , return the nearest toPoint to the fromPoint. Given 3 fromPoints and 10 toPoints, maxPairs=3 means return the 3 nearest toPoints to each fromPoint.
          in: query
          name: maxPairs
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: A list of routes and their route distances/times.
      summary: Get distance and travel time between each pair of geographic points for a commercial vehicle
      tags:
        - distance
    post:
      description: Represents the distance and time of the shortest or fastest paths between all pairs of fromPoints and toPoints. The number of fromPoints times the number of toPoints should not exceed 100 or the request will time out.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - html
            type: string
        - description: A comma-separated list of origin points.  See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#fromPoints target='_blank'>fromPoints</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: fromPoints
          required: true
          schema:
            type: string
        - description: A comma-separated list of destination points. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#toPoints target='_blank'>toPoints</a>
          example: -124.972951,49.715181,-123.139464,49.704015
          in: query
          name: toPoints
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
        - description: The maximum number of pairs to return for each toPoint.  Pairs are ordered by distance/time from fromPoint. For example, given 1 fromPoint, and 10 toPoints, and maxPairs=1 , return the nearest toPoint to the fromPoint. Given 3 fromPoints and 10 toPoints, maxPairs=3 means return the 3 nearest toPoints to each fromPoint.
          in: query
          name: maxPairs
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: A list of routes and their route distances/times.
      summary: Get distance and travel time between each pair of geographic points
      tags:
        - distance
  "/truck/optimalDirections.{outputFormat}":
    get:
      description: Represents the turn-by-turn directions, geometry, distance, and time of the shortest path or fastest path between a start point and a series of end points which are reordered to minimize distance/time for a commercial vehicle.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: The truck route multiplier value is used to multiply the cost of using roads that are not truck routes.
          in: query
          name: truckRouteMultiplier
          required: false
          schema:
            default: 9
            type: integer
        - description: A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections, ferry sections and non-ferry sections, and locality names.  The response includes a partitions attribute, which is an array of objects, each of which has an index (into the route coordinate array) and a value for each of the attributes requested in the partition parameter. Any or all of the following values can be used. <br><br>Partition values:<br> isTruckRoute – Distinguish between truck route sections and non-truck route sections <br> isFerry – Distinguish between ferry sections and non-ferry sections <br> locality – Include the locality name for the route partition
          in: query
          name: partition
          required: false
          schema:
            default: ""
            type: string
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: turn-by-turn directions, geometry, distance, and time of the shortest or fastest route. End points are reordered to minimize total distance or time.
      summary: Get the directions, optimal path, distance and travel time between a start point and a series of end points which are reordered to minimize total distance or time for a commercial vehicle
      tags:
        - directions
    post:
      description: Represents the turn-by-turn directions, geometry, distance, and time of the shortest path or fastest path between a start point and one or more end points which are reordered to minimize distance or time.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: The truck route multiplier value is used to multiply the cost of using roads that are not truck routes.
          in: query
          name: truckRouteMultiplier
          required: false
          schema:
            default: 9
            type: integer
        - description: A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections, ferry sections and non-ferry sections, and locality names.  The response includes a partitions attribute, which is an array of objects, each of which has an index (into the route coordinate array) and a value for each of the attributes requested in the partition parameter. Any or all of the following values can be used. <br><br>Partition values:<br> isTruckRoute – Distinguish between truck route sections and non-truck route sections <br> isFerry – Distinguish between ferry sections and non-ferry sections <br> locality – Include the locality name for the route partition
          in: query
          name: partition
          required: false
          schema:
            default: ""
            type: string
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: turn-by-turn directions, geometry, distance, and time of the shortest or fastest route. End points are reordered to minimize total distance or time.
      summary: Get the directions, optimal path, distance and travel time between a start point and one or more end points which are reordered to minimize total distance or time.
      tags:
        - directions
  "/truck/optimalRoute.{outputFormat}":
    get:
      description: Represents the geometry, distance, and time of the shortest or fastest path between a start point and a series of end points which are reordered to minimize distance or time for a commercial vehicle.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: The truck route multiplier value is used to multiply the cost of using roads that are not truck routes.
          in: query
          name: truckRouteMultiplier
          required: false
          schema:
            default: 9
            type: integer
        - description: A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections, ferry sections and non-ferry sections, and locality names.  The response includes a partitions attribute, which is an array of objects, each of which has an index (into the route coordinate array) and a value for each of the attributes requested in the partition parameter. Any or all of the following values can be used. <br><br>Partition values:<br> isTruckRoute – Distinguish between truck route sections and non-truck route sections <br> isFerry – Distinguish between ferry sections and non-ferry sections <br> locality – Include the locality name for the route partition
          in: query
          name: partition
          required: false
          schema:
            default: ""
            type: string
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Geometry, distance, and time of the shortest or fastest route. End points are reordered to minimize total distance or time
      summary: Get the optimal path, distance and travel time between a start point and a series of end points which are reordered to minimize total distance or time for a commercial vehicle
      tags:
        - route
    post:
      description: Represents the geometry, distance, and time of the shortest or fastest path between a start point and a series of end points which are reordered to minimize total distance or time.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start and end points.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: The truck route multiplier value is used to multiply the cost of using roads that are not truck routes.
          in: query
          name: truckRouteMultiplier
          required: false
          schema:
            default: 9
            type: integer
        - description: A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections, ferry sections and non-ferry sections, and locality names.  The response includes a partitions attribute, which is an array of objects, each of which has an index (into the route coordinate array) and a value for each of the attributes requested in the partition parameter. Any or all of the following values can be used. <br><br>Partition values:<br> isTruckRoute – Distinguish between truck route sections and non-truck route sections <br> isFerry – Distinguish between ferry sections and non-ferry sections <br> locality – Include the locality name for the route partition
          in: query
          name: partition
          required: false
          schema:
            default: ""
            type: string
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Geometry, distance, and time of the shortest or fastest route. End points are reordered to minimize total distance or time.
      summary: Get the path, distance and travel time between a start point and a series of end points which are reordered to minimize total distance or time.
      tags:
        - route
  "/truck/route.{outputFormat}":
    get:
      description: Represents the geometry, distance, and time of the shortest or fastest path between given start and end points for a commercial vehicle.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start/end point.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: The truck route multiplier value is used to multiply the cost of using roads that are not truck routes.
          in: query
          name: truckRouteMultiplier
          required: false
          schema:
            default: 9
            type: integer
        - description: A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections, ferry sections and non-ferry sections, and locality names.  The response includes a partitions attribute, which is an array of objects, each of which has an index (into the route coordinate array) and a value for each of the attributes requested in the partition parameter. Any or all of the following values can be used. <br><br>Partition values:<br> isTruckRoute – Distinguish between truck route sections and non-truck route sections <br> isFerry – Distinguish between ferry sections and non-ferry sections <br> locality – Include the locality name for the route partition
          in: query
          name: partition
          required: false
          schema:
            default: ""
            type: string
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br> Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Geometry, distance, and time of the shortest or fastest route
      summary: Get the path, distance and travel time between a series of geographic points for a commercial vehicle
      tags:
        - route
    post:
      description: Represents the geometry, distance, and time of the shortest or fastest path between given start and end points.
      parameters:
        - description: Format of representation
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - kml
              - html
            type: string
        - description: A list of any number of route points in start to end order. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#points target='_blank'>points</a>
          example: -123.70794,48.77869,-123.53785,48.38200
          in: query
          name: points
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-router/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Routing criteria to optimize (e.g., shortest, fastest). Default is shortest.
          in: query
          name: criteria
          required: false
          schema:
            default: shortest
            enum:
              - shortest
              - fastest
            type: string
        - description: distance unit of measure (e.g., km, mi). Default is km.
          in: query
          name: distanceUnit
          required: false
          schema:
            default: km
            enum:
              - km
              - mi
            type: string
        - description: If true, route ends at start point. Default is false.
          in: query
          name: roundTrip
          required: false
          schema:
            default: false
            type: boolean
        - description: departure date and time in internet timestamp notation as defined in RFC 3339, section 5.6 (e.g., 2019-02-28T11:36:00-08:00);<br> Ignored if time-dependency modules are disabled
          in: query
          name: departure
          required: false
          schema:
            format: date-time
            type: string
        - description: If true, route starts and ends on same side of road as start/end point.Default is false.
          in: query
          name: correctSide
          required: false
          schema:
            default: false
            type: boolean
        - description: The truck route multiplier value is used to multiply the cost of using roads that are not truck routes.
          in: query
          name: truckRouteMultiplier
          required: false
          schema:
            default: 9
            type: integer
        - description: A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections, ferry sections and non-ferry sections, and locality names.  The response includes a partitions attribute, which is an array of objects, each of which has an index (into the route coordinate array) and a value for each of the attributes requested in the partition parameter. Any or all of the following values can be used. <br><br>Partition values:<br> isTruckRoute – Distinguish between truck route sections and non-truck route sections <br> isFerry – Distinguish between ferry sections and non-ferry sections <br> locality – Include the locality name for the route partition
          in: query
          name: partition
          required: false
          schema:
            default: ""
            type: string
        - description: A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td).<br><br>Module names include:<br> sc – ferry schedules; disabled by default; disabled by default and only suitable for demos<br>tf – historic traffic congestion; disabled by default and only suitable for demos<br>ev – road events; disabled by default and only suitable for demos<br>td – time-dependency; disabling this disables sc, tf, and ev modules<br>tr – turn restrictions; if td is disabled, time-dependent turn restrictions are ignored<br>tc - turn costs (e.g., left turns take longer than right turns)
          in: query
          name: disable
          required: false
          schema:
            default: sc,tf,ev,td
            type: string
        - description: Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster)
          in: query
          name: routeDescription
          required: false
          schema:
            default: Routing results
            type: string
      responses:
        "200":
          description: Geometry, distance, and time of the shortest or fastest route
      summary: Get the path, distance and travel time between a series of geographic points
      tags:
        - route
components:
  schemas: {}
  securitySchemes:
    apikey:
      in: header
      name: apikey
      type: apiKey
