Documentation
All endpoints live under /v1 and return JSON. Authentication
is a bearer token sent in the Authorization header.
GET /v1/route
| Parameter | Type | Meaning |
|---|---|---|
| from, to | lat,lon | Required. WGS84, decimal degrees. |
| via | lat,lon repeated | Up to 24 intermediate points, visited in order. |
| profile | car | van | truck | Default van. Truck applies
height and axle-load limits. |
| depart_at | RFC 3339 | Applies the time-dependent speed model and bridge schedules. |
| geometry | none | polyline | geojson | Default polyline, precision 5. |
POST /v1/matrix
Body takes origins and destinations as arrays of
coordinates. The response is a duration matrix in seconds and a distance matrix in metres.
Cells that cannot be routed come back as null rather than a large number.
{"origins": [[52.09,5.12],[52.10,5.09]],
"destinations": [[51.92,4.47]],
"profile": "truck"}
Errors
| Code | HTTP | When |
|---|---|---|
| invalid_coordinate | 400 | Point is outside the NL/BE bounding box. |
| no_route | 422 | Endpoints are not connected for this profile. |
| rate_limited | 429 | Above plan rate; Retry-After is set. |
Rate limits
Bursts are allowed: the limiter is a token bucket refilled per second, with a bucket of 60 requests. Matrix calls count as one request per 100 cells.