Valhalla · Schema
IsochroneRequest
Request body for the Valhalla /isochrone endpoint. Returns GeoJSON polygons or lines representing reachable areas within given time or distance limits.
RoutingNavigationOpenStreetMapMappingGeospatialDirectionsIsochronesTravelTransportationOpen-Source
Properties
| Name | Type | Description |
|---|---|---|
| locations | array | Origin locations for the isochrone computation. |
| costing | string | Travel mode costing model. |
| contours | array | Contour limits defining the isochrone rings. |
| id | string | Arbitrary request identifier echoed in the response. |
| polygons | boolean | Return polygon geometries instead of linestrings. |
| denoise | number | Factor to remove smaller contours relative to the largest contour's area. |
| generalize | number | Douglas-Peucker generalization tolerance in meters. |
| show_locations | boolean | Include input and snapped locations as MultiPoint features in the GeoJSON output. |
| reverse | boolean | Compute inbound (reverse) isochrone — areas that can reach the location within the time/distance limit. |
| units | string | |
| date_time | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/valhalla/main/json-schema/isochrone-request.json",
"title": "IsochroneRequest",
"description": "Request body for the Valhalla /isochrone endpoint. Returns GeoJSON polygons or lines representing reachable areas within given time or distance limits.",
"type": "object",
"required": ["locations", "costing", "contours"],
"properties": {
"locations": {
"type": "array",
"minItems": 1,
"maxItems": 3,
"description": "Origin locations for the isochrone computation.",
"items": { "$ref": "location.json" }
},
"costing": {
"type": "string",
"enum": ["auto", "bicycle", "pedestrian", "truck", "bus", "taxi", "motor_scooter", "motorcycle", "multimodal", "bikeshare", "auto_pedestrian"],
"description": "Travel mode costing model."
},
"contours": {
"type": "array",
"minItems": 1,
"maxItems": 5,
"description": "Contour limits defining the isochrone rings.",
"items": {
"type": "object",
"description": "A single contour. Specify either time or distance, not both.",
"properties": {
"time": {
"type": "number",
"minimum": 1,
"maximum": 100,
"description": "Travel time limit in minutes."
},
"distance": {
"type": "number",
"minimum": 1,
"maximum": 100,
"description": "Distance limit in kilometers."
},
"color": {
"type": "string",
"description": "Hex color without '#' for rendering (e.g. 'ff0000')."
}
}
}
},
"id": {
"type": "string",
"description": "Arbitrary request identifier echoed in the response."
},
"polygons": {
"type": "boolean",
"default": false,
"description": "Return polygon geometries instead of linestrings."
},
"denoise": {
"type": "number",
"minimum": 0,
"maximum": 1,
"default": 1.0,
"description": "Factor to remove smaller contours relative to the largest contour's area."
},
"generalize": {
"type": "number",
"minimum": 0,
"description": "Douglas-Peucker generalization tolerance in meters."
},
"show_locations": {
"type": "boolean",
"default": false,
"description": "Include input and snapped locations as MultiPoint features in the GeoJSON output."
},
"reverse": {
"type": "boolean",
"default": false,
"description": "Compute inbound (reverse) isochrone — areas that can reach the location within the time/distance limit."
},
"units": {
"type": "string",
"enum": ["km", "miles", "mi"],
"default": "km"
},
"date_time": {
"type": "object",
"properties": {
"type": {
"type": "integer",
"enum": [0, 1, 2, 3],
"description": "0=current, 1=depart_at, 2=arrive_by, 3=invariant"
},
"value": {
"type": "string",
"description": "ISO 8601 datetime string (YYYY-MM-DDTHH:MM)."
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/isochrone-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.