The Solvice Maps Distance Matrix service is specifically made for products that use route optimization to power scheduling operations. Route optimization (TSP, PDP, VRP, …) requires the usage of a distance matrix detailing the travel time and distance from every location to every other location in the solve request.Documentation Index
Fetch the complete documentation index at: https://maps.solvice.io/llms.txt
Use this file to discover all available pages before exploring further.
Traffic unaware (OSM)
Traffic aware (TomTom)
Solvice Maps has integrated TomTom road segment information in order to produce Traffic-aware routing. It is based on slices of adjusted travel time information. To get Traffic aware distance matrices, you need to set thedepartureTime as well as setting the routing "engine": TOMTOM.
At Solvice, we use the following slices:
| Period | From | To |
|---|---|---|
| NIGHT | 20:30 | 06:30 |
| MORNING_RUSH | 06:30 | 09:30 |
| MORNING | 09:30 | 12:00 |
| MIDDAY | 12:00 | 14:30 |
| AFTERNOON | 14:30 | 16:30 |
| EVENING_RUSH | 16:30 | 19:30 |
"interpolate": true.
Like so:
POST /table
Real-time traffic (TomTom)
For matrices that should reflect current traffic conditions, use theTOMTOM_REAL_TIME engine on the synchronous /table/sync endpoint. Real-time matrices are computed against live road conditions and are not cacheable, so they are sync-only.
POST /table/sync
0 and 1 are sources and coordinates 2 and 3 are destinations, so the response is a 2 × 2 matrix:
Constraints
- Endpoint —
POST /table/synconly.TOMTOM_REAL_TIMEis rejected on the asyncPOST /tableendpoint with HTTP 400. sourcesis required and must be a contiguous range starting at0(e.g.[0,1,2]). The firstsources.sizecoordinates are sources, the remainder are destinations. The result matrix has shapesources.size × (coordinates.size − sources.size)— it is not padded to a square matrix.destinationsis not supported — leave it out and rely on thesourcessplit above.annotationsmust not include"distance"; the upstream provider does not return distances in real-time matrix mode. Use["duration"](or omit the field).departureTimeis ignored — every request uses the current time.- Billing is per destination (
coordinates.size − sources.size), not per matrix cell.