Product Context
Solvice Maps provides fast, production-grade routing APIs built on OpenStreetMap data with optional TomTom traffic integration. The core services are:- Route (
/route) — point-to-point directions with distance, duration, and geometry - Table (
/table) — distance/duration matrices (also known as distance matrices) between sets of coordinates - Cube (
/cube) — time-dependent 3D travel time matrices with polynomial approximation for efficient storage - Tiles — vector map tiles compatible with MapLibre GL and Leaflet
Key Terminology
| Term | Meaning |
|---|---|
| Table | A distance/duration matrix (NxM) between origins and destinations |
| Cube | A 3D time-dependent matrix — multiple table slices across departure times, approximated by polynomial coefficients |
| Slice | A single time period in a cube representing traffic conditions at a specific departure time |
| Interpolate | Linear interpolation between traffic time slices for smoother time-dependent results |
| Sync endpoint | Synchronous variant (e.g., /table/sync, /cube/sync) that returns results directly instead of creating an async job |
| Async endpoint | Standard variant (e.g., /table, /cube) that returns a job ID for polling via /{id} and /{id}/response |
Routing Engines
Solvice Maps supports multiple routing engines: the default OSM-based engine, Google, Anymap (Solvice proprietary), and Custom integrations.Common Workflows
- Simple route:
POST /routewith coordinates → get distance, duration, geometry - Small matrix:
POST /table/sync(up to 50x50) → get matrix directly - Large matrix:
POST /table→ pollGET /table/{id}→ fetchGET /table/{id}/response - Time-dependent cube:
POST /cubewithdepartureTime→ poll → fetch response with polynomial coefficients