Skip to main content
POST

Authorizations

x-api-key
string
header
required

Your Footstep API key

Body

application/json
locations
object[]
required

Waypoints (min 2, max 20)

Required array length: 2 - 20 elements
travel
enum<string>
default:auto

How to travel: auto (car), pedestrian, bicycle, bus, or truck

Available options:
auto,
bicycle,
pedestrian,
bus,
truck
travel_options
object

Fine-tuning options. Include only the key matching your travel type.

units
enum<string>
default:kilometers
Available options:
kilometers,
miles
language
string
default:en-GB

Language for instructions

elevation_interval
number
default:30

Elevation sampling interval in meters

Required range: 10 <= x <= 200
alternates
number
default:0

Number of alternate routes

Required range: 0 <= x <= 3
narrative
boolean
default:false

Include an AI-generated natural-language summary in the response (adds ~500ms via llm-service).

format
enum<string>
default:footstep

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).

Available options:
footstep,
geojson

Response

Route with terrain analytics

route
object
required

A complete route with terrain analytics

alternates
object[]

Alternate routes (same shape as primary route). Populated only when alternates >= 1 was requested AND viable alternate routings were found; absent otherwise.

narrative
string

AI-generated natural-language summary of the route. Present only when narrative: true was requested and llm-service is configured.