# BC Route Planner REST API API

> BC Route Planner REST API API on Apizie: 24 endpoints (Get the directions, path, distance and travel time between a series of geographic points, Get the directions, path, distance and travel time between a series of geographic points, Get distance and travel time between two geographic points, Get distance and travel time between two geographic points, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `open-data:gov-bc-ca-router`
- Category: Open Data
- Status: byok
- Source: https://dpdd.atlassian.net/servicedesk/customer/portal/1/group/7/
- Page: https://zieapi.vercel.app/api/open-data/gov-bc-ca-router
- OpenAPI: https://zieapi.vercel.app/api/open-data/gov-bc-ca-router/openapi.json

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…

## Endpoints

### Get the directions, path, distance and travel time between a series of geographic points
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-directions-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start/end point.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the directions, path, distance and travel time between a series of geographic points
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-directions-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start/end point.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get distance and travel time between two geographic points
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-distance-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get distance and travel time between two geographic points
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-distance-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get distance and travel time between each pair of geographic points
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-distance-between-pairs-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| fromPoints | string | yes | A comma-separated list of origin points. See fromPoints |
| toPoints | string | yes | A comma-separated list of destination points. See toPoints |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |
| maxPairs | integer | no | The maximum number of pairs to return for each toPoint. Pairs are ordered by distance/time from fromPoint. For example, given 1 fromPoint,… |

### Get distance and travel time between each pair of geographic points
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-distance-between-pairs-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| fromPoints | string | yes | A comma-separated list of origin points. See fromPoints |
| toPoints | string | yes | A comma-separated list of destination points. See toPoints |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |
| maxPairs | integer | no | The maximum number of pairs to return for each toPoint. Pairs are ordered by distance/time from fromPoint. For example, given 1 fromPoint,… |

### Get the directions, optimal path, distance and travel time between a start point and a series of end points…
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-optimal-directions-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the directions, optimal path, distance and travel time between a start point and one or more end points…
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-optimal-directions-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the optimal path, distance and travel time between a start point and a series of end points which are…
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-optimal-route-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the path, distance and travel time between a start point and a series of end points which are reordered…
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-optimal-route-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the path, distance and travel time between a series of geographic points
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-route-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start/end point.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the path, distance and travel time between a series of geographic points
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-route-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start/end point.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the directions, path, distance and travel time between a series of geographic points for a commercial…
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-truck-directions-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start/end point.Default is false. |
| truckRouteMultiplier | integer | no | The truck route multiplier value is used to multiply the cost of using roads that are not truck routes. |
| partition | string | no | A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections,… |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the directions, path, distance and travel time between a series of geographic points
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-truck-directions-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start/end point.Default is false. |
| truckRouteMultiplier | integer | no | The truck route multiplier value is used to multiply the cost of using roads that are not truck routes. |
| partition | string | no | A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections,… |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get distance and travel time between two geographic points for a commercial vehicle
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-truck-distance-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| truckRouteMultiplier | integer | no | The truck route multiplier value is used to multiply the cost of using roads that are not truck routes. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get distance and travel time between two geographic points
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-truck-distance-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get distance and travel time between each pair of geographic points for a commercial vehicle
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-truck-distance-between-pairs-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| fromPoints | string | yes | A comma-separated list of origin points. See fromPoints |
| toPoints | string | yes | A comma-separated list of destination points. See toPoints |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |
| maxPairs | integer | no | The maximum number of pairs to return for each toPoint. Pairs are ordered by distance/time from fromPoint. For example, given 1 fromPoint,… |

### Get distance and travel time between each pair of geographic points
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-truck-distance-between-pairs-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| fromPoints | string | yes | A comma-separated list of origin points. See fromPoints |
| toPoints | string | yes | A comma-separated list of destination points. See toPoints |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |
| maxPairs | integer | no | The maximum number of pairs to return for each toPoint. Pairs are ordered by distance/time from fromPoint. For example, given 1 fromPoint,… |

### Get the directions, optimal path, distance and travel time between a start point and a series of end points…
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-truck-optimal-directions-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| truckRouteMultiplier | integer | no | The truck route multiplier value is used to multiply the cost of using roads that are not truck routes. |
| partition | string | no | A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections,… |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the directions, optimal path, distance and travel time between a start point and one or more end points…
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-truck-optimal-directions-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| truckRouteMultiplier | integer | no | The truck route multiplier value is used to multiply the cost of using roads that are not truck routes. |
| partition | string | no | A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections,… |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the optimal path, distance and travel time between a start point and a series of end points which are…
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-truck-optimal-route-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| truckRouteMultiplier | integer | no | The truck route multiplier value is used to multiply the cost of using roads that are not truck routes. |
| partition | string | no | A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections,… |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the path, distance and travel time between a start point and a series of end points which are reordered…
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-truck-optimal-route-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start and end points.Default is false. |
| truckRouteMultiplier | integer | no | The truck route multiplier value is used to multiply the cost of using roads that are not truck routes. |
| partition | string | no | A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections,… |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the path, distance and travel time between a series of geographic points for a commercial vehicle
`GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-truck-route-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start/end point.Default is false. |
| truckRouteMultiplier | integer | no | The truck route multiplier value is used to multiply the cost of using roads that are not truck routes. |
| partition | string | no | A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections,… |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

### Get the path, distance and travel time between a series of geographic points
`POST https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/post-truck-route-output-format` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| outputFormat | string | yes | Format of representation |
| points | string | yes | A list of any number of route points in start to end order. See points |
| outputSRS | integer | no | The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS |
| criteria | string | no | Routing criteria to optimize (e.g., shortest, fastest). Default is shortest. |
| distanceUnit | string | no | distance unit of measure (e.g., km, mi). Default is km. |
| roundTrip | boolean | no | If true, route ends at start point. Default is false. |
| departure | string | no | 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); Ignored if… |
| correctSide | boolean | no | If true, route starts and ends on same side of road as start/end point.Default is false. |
| truckRouteMultiplier | integer | no | The truck route multiplier value is used to multiply the cost of using roads that are not truck routes. |
| partition | string | no | A comma-separated list of values to identify sections of the route that correspond to truck route sections and non-truck route sections,… |
| disable | string | no | A comma-separated list of time-related modules to disable (e.g., sc,tf,ev,td). Module names include: sc – ferry schedules; disabled by… |
| routeDescription | string | no | Route description (e.g., Shortest route from 1002 Johnson St, Victoria to 1105 Royal Ave,New Westminster) |

## Example
```
curl "https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-directions-output-format" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the BC Route Planner REST API API?
Create a free Apizie key, then send GET https://zieapi.vercel.app/v1/open-data:gov-bc-ca-router/get-directions-output-format with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the BC Route Planner REST API API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. BC Route Planner REST API itself also needs your own key from gov.bc.ca.

### Can AI agents use the BC Route Planner REST API API?
Yes. Add the Apizie MCP server (https://zieapi.vercel.app/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key open-data:gov-bc-ca-router.

### What is the status of the BC Route Planner REST API API?
Needs your own provider key (bring your own key)
