Turn-by-turn directions, travel-time matrices, reachable-area isochrones, GPS map matching, and optimized waypoint ordering.
Travel-time matrix.
Calculate the travel time and distance between every source and every target — the cost grows with M × N, the number of pairs.
Quota cost: M × N units per call (M = sources, N = targets). Capped at M × N ≤ 2500; requests beyond that return 400 without charging quota.
Travel-time matrix. › Request Body
Travel-time matrix. › Responses
Matrix response.
unitsTurn-by-turn directions.
Calculate a route between two or more waypoints.
Quota cost: 1 unit per call.
Turn-by-turn directions. › Request Body
Turn-by-turn directions. › Responses
Route response.
Elevation along points or a route.
Look up ground elevation for discrete points or along a route. For a route, send the geometry as an encodedPolyline and the server resamples it to samples evenly-spaced points — ideal for building an elevation profile from a GPS track without sending every point.
Quota cost: 1 unit per call. The points array is capped at 512; for a longer track use encodedPolyline (resampled to at most 1000 points).
Elevation along points or a route. › Request Body
encodedPolylineA route as a single encoded polyline (precision 6). The server samples
it at samples evenly-spaced points — send a whole GPS track this way
rather than thousands of individual points.
Up to 512 discrete (lat, lon) points to look up. Omit when using
encodedPolyline.
samplesNumber of evenly-spaced samples for encodedPolyline mode. Default
256, capped at 1000.
Elevation along points or a route. › Responses
Elevations in request order.
Reachable-area polygons.
Compute reachable-area polygons (isochrones) from one or more origins. Each contour is a time or distance band, returned as a GeoJSON Feature.
Quota cost: 5 × L × C units per call (L = locations, C = contours). Capped at L × C ≤ 4; requests beyond that return 400.
Reachable-area polygons. › Request Body
One contour per reachable-area band. The product
len(locations) × len(contours) must not exceed 4.
costingRouting profile. auto (car), bicycle, or pedestrian (foot).
polygonsReturn polygons instead of GeoJSON LineStrings.
Reachable-area polygons. › Responses
Isochrone response.
typeSnap a GPS trace to roads.
Snap a noisy GPS trace to the road network and return a clean, route-shaped result — the same response envelope as /directions/v1. Provide the trace as a shape array or an encodedPolyline.
Quota cost: 1 unit per call. The shape array is capped at 100 points; requests beyond that return 400 without charging quota.
Snap a GPS trace to roads. › Request Body
costingRouting profile. auto (car), bicycle, or pedestrian (foot).
encodedPolylineThe GPS trace as a single encoded polyline (precision 6). An
alternative to shape for compact transport of long traces.
The GPS trace as ordered (lat, lon) points. Capped at 100 points;
use encodedPolyline for longer traces. Omit when using
encodedPolyline.
shapeMatchHow aggressively to snap to roads. map_snap (default) matches to
the road network; walk_or_snap and edge_walk trade accuracy for
speed on dense traces.
Snap a GPS trace to roads. › Responses
Matched route.
Optimal waypoint ordering.
Find the optimal visiting order over a set of waypoints (a travelling-salesman solve) and return a route that visits them in that order. The first and last locations stay fixed.
Quota cost: N units per call, where N is the number of locations. Capped at 20 locations; requests beyond that return 400 without charging quota.
Optimal waypoint ordering. › Request Body
costingRouting profile. auto (car), bicycle, or pedestrian (foot).
Two or more waypoints. The first is the start and the last is the end; the intermediate stops are reordered for the shortest total trip. Capped at 20 locations.
Optimal waypoint ordering. › Responses
Optimized route.