Snap GPS Trace
Map-match a GPS trace to the road network. Returns a snapped polyline with confidence score. Optionally includes directions with terrain analytics, road attributes (surface, grade, road class), and per-point match quality.
Documentation Index
Fetch the complete documentation index at: https://docs.footstep.ai/llms.txt
Use this file to discover all available pages before exploring further.
Authorizations
Your Footstep API key
Body
Provide either shape or encoded_polyline
2 - 20000 elementsauto, bicycle, pedestrian, bus, truck route = directions with terrain, attributes = road details, both = combined
route, attributes, both Expected GPS accuracy in meters. Default 10 reflects typical urban phone GPS; bump higher for noisy traces, lower for high-quality recordings.
1 <= x <= 100Search radius in meters
1 <= x <= 10010 <= x <= 200Matching strategy. edge_walk requires the trace to follow exact road edges (high-quality data only). map_snap is strict per-point snapping. walk_or_snap (default) is forgiving — falls back to walking the closest edges when an exact snap fails, which matches typical phone-GPS behaviour.
edge_walk, map_snap, walk_or_snap Response format. footstep = optimised for app developers (encoded polyline, flat structure). geojson = standard GeoJSON FeatureCollection (decoded coordinates, immediately usable in Leaflet/Mapbox GL/deck.gl).
footstep, geojson Response
Snapped trace with optional route and attributes
Encoded polyline of snapped trace
Match confidence score (0-1)
0 <= x <= 1Present when the match is unreliable. Currently the only value is low (confidence below 0.5). Distance, duration, edges, and terrain are still populated but should be treated as approximate.
low Human-readable explanation of why match_quality is set. Present whenever match_quality is set.
Present when output includes 'route'. Includes terrain analytics.
Present when output includes 'attributes'. Road segment details.
Per-point match quality details