Valhalla
Valhalla is an open-source routing engine and library suite for OpenStreetMap data. It provides turn-by-turn navigation, isochrone computation, time-distance matrix analysis, map matching, elevation sampling, optimized routing (TSP), and graph expansion via a REST API. Valhalla supports multiple travel modes including auto, bicycle, pedestrian, transit, truck, motorcycle, and motor scooter. It uses a tiled hierarchical data structure for efficient offline routing and regional extracts, with dynamic costing via a plugin architecture.
APIs
Valhalla Route API
Turn-by-turn routing service that guides users between two or more points by car, bike, foot, and multimodal combinations. Supports multiple costing models including auto, bicyc...
Valhalla Optimized Route API
Solves the Travelling Salesman Problem (TSP) by computing an optimized path through multiple input locations. The service reorders intermediate waypoints for maximum efficiency,...
Valhalla Matrix API
Computes time and distance matrices between sets of origins and destinations. Supports one-to-many, many-to-one, and many-to-many queries. Returns null for unreachable location ...
Valhalla Isochrone API
Calculates isochrones (reachable areas within a given time or distance) and isodistances from one or more locations. Returns GeoJSON polygons or lines. Supports auto, bicycle, p...
Valhalla Map Matching API
Matches GPS traces and coordinate sequences to the road network mapped in OpenStreetMap. Provides two modes: trace_route (turns a GPS trace into a route with narrative instructi...
Valhalla Elevation API
Returns elevation data along a path or at specified locations. Accepts coordinate arrays or encoded polylines and returns height values in meters or feet. Supports cumulative di...
Valhalla Expansion API
Returns a GeoJSON representation of the routing graph traversal from a given location, showing the edges explored during shortest-path computation. Useful for visualizing and de...
Valhalla Locate API
Provides detailed metadata about graph nodes and edges near a given coordinate. Returns snapped node information, edge attributes, and road network properties for analysis and d...
Valhalla Status API
Returns information about the running Valhalla server instance, including tileset availability and configuration details. Useful for health checks and monitoring the operational...