Find an API

Search public APIs with auth details & Postman guides

← All APIs

Routing

tomtom · Location

Location No Auth Free & Open location

Routing consists of the following service: Calculate Route Calculates a route between an origin and a destination, passing through waypoints (if specified). Additional routing parameters like traffic, avoidance conditions, departure/arrival time etc. can be taken into account. Calculate Reachable Range Calculates a set of locations that can be reached from the origin point, subject to the available fuel or energy budget that is specified in the request.

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

GET Reachable Range

Calculates a set of locations that can be reached from the origin point.

https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}?avoid=example&report=effectiveSettings&traffic=true&arriveAt=example&callback=callback&departAt=now&hilliness=normal&routeType=fastest&travelMode=car&windingness=normal&vehicleWidth=0&vehicleHeight=0&vehicleLength=0&vehicleWeight=0&timeBudgetInSec=1&vehicleLoadType=example&vehicleMaxSpeed=0&uphillEfficiency=1&energyBudgetInkWh=1&vehicleAxleWeight=0&vehicleCommercial=false&vehicleEngineType=combustion&downhillEfficiency=1&fuelBudgetInLiters=1&currentFuelInLiters=1&accelerationEfficiency=1&decelerationEfficiency=1&auxiliaryPowerInLitersPerHour=1&fuelEnergyDensityInMJoulesPerLiter=1&constantSpeedConsumptionInkWhPerHundredkm=example&constantSpeedConsumptionInLitersPerHundredkm=example

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}?avoid=example&report=effectiveSettings&traffic=true&arriveAt=example&callback=callback&departAt=now&hilliness=normal&routeType=fastest&travelMode=car&windingness=normal&vehicleWidth=0&vehicleHeight=0&vehicleLength=0&vehicleWeight=0&timeBudgetInSec=1&vehicleLoadType=example&vehicleMaxSpeed=0&uphillEfficiency=1&energyBudgetInkWh=1&vehicleAxleWeight=0&vehicleCommercial=false&vehicleEngineType=combustion&downhillEfficiency=1&fuelBudgetInLiters=1&currentFuelInLiters=1&accelerationEfficiency=1&decelerationEfficiency=1&auxiliaryPowerInLitersPerHour=1&fuelEnergyDensityInMJoulesPerLiter=1&constantSpeedConsumptionInkWhPerHundredkm=example&constantSpeedConsumptionInLitersPerHundredkm=example"
import requests
params = {
    "avoid": "example",
    "report": "effectiveSettings",
    "traffic": "true",
    "arriveAt": "example",
    "callback": "callback",
    "departAt": "now",
    "hilliness": "normal",
    "routeType": "fastest",
    "travelMode": "car",
    "windingness": "normal",
    "vehicleWidth": "0",
    "vehicleHeight": "0",
    "vehicleLength": "0",
    "vehicleWeight": "0",
    "timeBudgetInSec": "1",
    "vehicleLoadType": "example",
    "vehicleMaxSpeed": "0",
    "uphillEfficiency": "1",
    "energyBudgetInkWh": "1",
    "vehicleAxleWeight": "0",
    "vehicleCommercial": "false",
    "vehicleEngineType": "combustion",
    "downhillEfficiency": "1",
    "fuelBudgetInLiters": "1",
    "currentFuelInLiters": "1",
    "accelerationEfficiency": "1",
    "decelerationEfficiency": "1",
    "auxiliaryPowerInLitersPerHour": "1",
    "fuelEnergyDensityInMJoulesPerLiter": "1",
    "constantSpeedConsumptionInkWhPerHundredkm": "example",
    "constantSpeedConsumptionInLitersPerHundredkm": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}');
url.searchParams.set('avoid', 'example');
url.searchParams.set('report', 'effectiveSettings');
url.searchParams.set('traffic', 'true');
url.searchParams.set('arriveAt', 'example');
url.searchParams.set('callback', 'callback');
url.searchParams.set('departAt', 'now');
url.searchParams.set('hilliness', 'normal');
url.searchParams.set('routeType', 'fastest');
url.searchParams.set('travelMode', 'car');
url.searchParams.set('windingness', 'normal');
url.searchParams.set('vehicleWidth', '0');
url.searchParams.set('vehicleHeight', '0');
url.searchParams.set('vehicleLength', '0');
url.searchParams.set('vehicleWeight', '0');
url.searchParams.set('timeBudgetInSec', '1');
url.searchParams.set('vehicleLoadType', 'example');
url.searchParams.set('vehicleMaxSpeed', '0');
url.searchParams.set('uphillEfficiency', '1');
url.searchParams.set('energyBudgetInkWh', '1');
url.searchParams.set('vehicleAxleWeight', '0');
url.searchParams.set('vehicleCommercial', 'false');
url.searchParams.set('vehicleEngineType', 'combustion');
url.searchParams.set('downhillEfficiency', '1');
url.searchParams.set('fuelBudgetInLiters', '1');
url.searchParams.set('currentFuelInLiters', '1');
url.searchParams.set('accelerationEfficiency', '1');
url.searchParams.set('decelerationEfficiency', '1');
url.searchParams.set('auxiliaryPowerInLitersPerHour', '1');
url.searchParams.set('fuelEnergyDensityInMJoulesPerLiter', '1');
url.searchParams.set('constantSpeedConsumptionInkWhPerHundredkm', 'example');
url.searchParams.set('constantSpeedConsumptionInLitersPerHundredkm', 'example');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}")
	q := baseURL.Query()
	q.Set("avoid", "example")
	q.Set("report", "effectiveSettings")
	q.Set("traffic", "true")
	q.Set("arriveAt", "example")
	q.Set("callback", "callback")
	q.Set("departAt", "now")
	q.Set("hilliness", "normal")
	q.Set("routeType", "fastest")
	q.Set("travelMode", "car")
	q.Set("windingness", "normal")
	q.Set("vehicleWidth", "0")
	q.Set("vehicleHeight", "0")
	q.Set("vehicleLength", "0")
	q.Set("vehicleWeight", "0")
	q.Set("timeBudgetInSec", "1")
	q.Set("vehicleLoadType", "example")
	q.Set("vehicleMaxSpeed", "0")
	q.Set("uphillEfficiency", "1")
	q.Set("energyBudgetInkWh", "1")
	q.Set("vehicleAxleWeight", "0")
	q.Set("vehicleCommercial", "false")
	q.Set("vehicleEngineType", "combustion")
	q.Set("downhillEfficiency", "1")
	q.Set("fuelBudgetInLiters", "1")
	q.Set("currentFuelInLiters", "1")
	q.Set("accelerationEfficiency", "1")
	q.Set("decelerationEfficiency", "1")
	q.Set("auxiliaryPowerInLitersPerHour", "1")
	q.Set("fuelEnergyDensityInMJoulesPerLiter", "1")
	q.Set("constantSpeedConsumptionInkWhPerHundredkm", "example")
	q.Set("constantSpeedConsumptionInLitersPerHundredkm", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}")
uri.query = URI.encode_www_form({
  "avoid" => "example",
  "report" => "effectiveSettings",
  "traffic" => "true",
  "arriveAt" => "example",
  "callback" => "callback",
  "departAt" => "now",
  "hilliness" => "normal",
  "routeType" => "fastest",
  "travelMode" => "car",
  "windingness" => "normal",
  "vehicleWidth" => "0",
  "vehicleHeight" => "0",
  "vehicleLength" => "0",
  "vehicleWeight" => "0",
  "timeBudgetInSec" => "1",
  "vehicleLoadType" => "example",
  "vehicleMaxSpeed" => "0",
  "uphillEfficiency" => "1",
  "energyBudgetInkWh" => "1",
  "vehicleAxleWeight" => "0",
  "vehicleCommercial" => "false",
  "vehicleEngineType" => "combustion",
  "downhillEfficiency" => "1",
  "fuelBudgetInLiters" => "1",
  "currentFuelInLiters" => "1",
  "accelerationEfficiency" => "1",
  "decelerationEfficiency" => "1",
  "auxiliaryPowerInLitersPerHour" => "1",
  "fuelEnergyDensityInMJoulesPerLiter" => "1",
  "constantSpeedConsumptionInkWhPerHundredkm" => "example",
  "constantSpeedConsumptionInLitersPerHundredkm" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}?" . http_build_query([
    "avoid" => "example",
    "report" => "effectiveSettings",
    "traffic" => "true",
    "arriveAt" => "example",
    "callback" => "callback",
    "departAt" => "now",
    "hilliness" => "normal",
    "routeType" => "fastest",
    "travelMode" => "car",
    "windingness" => "normal",
    "vehicleWidth" => "0",
    "vehicleHeight" => "0",
    "vehicleLength" => "0",
    "vehicleWeight" => "0",
    "timeBudgetInSec" => "1",
    "vehicleLoadType" => "example",
    "vehicleMaxSpeed" => "0",
    "uphillEfficiency" => "1",
    "energyBudgetInkWh" => "1",
    "vehicleAxleWeight" => "0",
    "vehicleCommercial" => "false",
    "vehicleEngineType" => "combustion",
    "downhillEfficiency" => "1",
    "fuelBudgetInLiters" => "1",
    "currentFuelInLiters" => "1",
    "accelerationEfficiency" => "1",
    "decelerationEfficiency" => "1",
    "auxiliaryPowerInLitersPerHour" => "1",
    "fuelEnergyDensityInMJoulesPerLiter" => "1",
    "constantSpeedConsumptionInkWhPerHundredkm" => "example",
    "constantSpeedConsumptionInLitersPerHundredkm" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET Calculate Route

Calculates a route between an origin and a destination.

https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateRoute/{locations}/{contentType}?avoid=example&report=effectiveSettings&traffic=true&arriveAt=example&callback=callback&departAt=now&language=en-GB&hilliness=normal&routeType=fastest&travelMode=car&sectionType=travelMode&windingness=normal&vehicleWidth=0&vehicleHeight=0&vehicleLength=0&vehicleWeight=0&vehicleHeading=1&alternativeType=anyRoute&maxAlternatives=0&vehicleLoadType=example&vehicleMaxSpeed=0&computeBestOrder=false&instructionsType=coded&minDeviationTime=0&uphillEfficiency=1&vehicleAxleWeight=0&vehicleCommercial=false&vehicleEngineType=combustion&downhillEfficiency=1&currentFuelInLiters=1&routeRepresentation=polyline&computeTravelTimeFor=none&minDeviationDistance=0&accelerationEfficiency=1&decelerationEfficiency=1&auxiliaryPowerInLitersPerHour=1&fuelEnergyDensityInMJoulesPerLiter=1&constantSpeedConsumptionInkWhPerHundredkm=example&constantSpeedConsumptionInLitersPerHundredkm=example

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateRoute/{locations}/{contentType}?avoid=example&report=effectiveSettings&traffic=true&arriveAt=example&callback=callback&departAt=now&language=en-GB&hilliness=normal&routeType=fastest&travelMode=car&sectionType=travelMode&windingness=normal&vehicleWidth=0&vehicleHeight=0&vehicleLength=0&vehicleWeight=0&vehicleHeading=1&alternativeType=anyRoute&maxAlternatives=0&vehicleLoadType=example&vehicleMaxSpeed=0&computeBestOrder=false&instructionsType=coded&minDeviationTime=0&uphillEfficiency=1&vehicleAxleWeight=0&vehicleCommercial=false&vehicleEngineType=combustion&downhillEfficiency=1&currentFuelInLiters=1&routeRepresentation=polyline&computeTravelTimeFor=none&minDeviationDistance=0&accelerationEfficiency=1&decelerationEfficiency=1&auxiliaryPowerInLitersPerHour=1&fuelEnergyDensityInMJoulesPerLiter=1&constantSpeedConsumptionInkWhPerHundredkm=example&constantSpeedConsumptionInLitersPerHundredkm=example"
import requests
params = {
    "avoid": "example",
    "report": "effectiveSettings",
    "traffic": "true",
    "arriveAt": "example",
    "callback": "callback",
    "departAt": "now",
    "language": "en-GB",
    "hilliness": "normal",
    "routeType": "fastest",
    "travelMode": "car",
    "sectionType": "travelMode",
    "windingness": "normal",
    "vehicleWidth": "0",
    "vehicleHeight": "0",
    "vehicleLength": "0",
    "vehicleWeight": "0",
    "vehicleHeading": "1",
    "alternativeType": "anyRoute",
    "maxAlternatives": "0",
    "vehicleLoadType": "example",
    "vehicleMaxSpeed": "0",
    "computeBestOrder": "false",
    "instructionsType": "coded",
    "minDeviationTime": "0",
    "uphillEfficiency": "1",
    "vehicleAxleWeight": "0",
    "vehicleCommercial": "false",
    "vehicleEngineType": "combustion",
    "downhillEfficiency": "1",
    "currentFuelInLiters": "1",
    "routeRepresentation": "polyline",
    "computeTravelTimeFor": "none",
    "minDeviationDistance": "0",
    "accelerationEfficiency": "1",
    "decelerationEfficiency": "1",
    "auxiliaryPowerInLitersPerHour": "1",
    "fuelEnergyDensityInMJoulesPerLiter": "1",
    "constantSpeedConsumptionInkWhPerHundredkm": "example",
    "constantSpeedConsumptionInLitersPerHundredkm": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateRoute/{locations}/{contentType}",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateRoute/{locations}/{contentType}');
url.searchParams.set('avoid', 'example');
url.searchParams.set('report', 'effectiveSettings');
url.searchParams.set('traffic', 'true');
url.searchParams.set('arriveAt', 'example');
url.searchParams.set('callback', 'callback');
url.searchParams.set('departAt', 'now');
url.searchParams.set('language', 'en-GB');
url.searchParams.set('hilliness', 'normal');
url.searchParams.set('routeType', 'fastest');
url.searchParams.set('travelMode', 'car');
url.searchParams.set('sectionType', 'travelMode');
url.searchParams.set('windingness', 'normal');
url.searchParams.set('vehicleWidth', '0');
url.searchParams.set('vehicleHeight', '0');
url.searchParams.set('vehicleLength', '0');
url.searchParams.set('vehicleWeight', '0');
url.searchParams.set('vehicleHeading', '1');
url.searchParams.set('alternativeType', 'anyRoute');
url.searchParams.set('maxAlternatives', '0');
url.searchParams.set('vehicleLoadType', 'example');
url.searchParams.set('vehicleMaxSpeed', '0');
url.searchParams.set('computeBestOrder', 'false');
url.searchParams.set('instructionsType', 'coded');
url.searchParams.set('minDeviationTime', '0');
url.searchParams.set('uphillEfficiency', '1');
url.searchParams.set('vehicleAxleWeight', '0');
url.searchParams.set('vehicleCommercial', 'false');
url.searchParams.set('vehicleEngineType', 'combustion');
url.searchParams.set('downhillEfficiency', '1');
url.searchParams.set('currentFuelInLiters', '1');
url.searchParams.set('routeRepresentation', 'polyline');
url.searchParams.set('computeTravelTimeFor', 'none');
url.searchParams.set('minDeviationDistance', '0');
url.searchParams.set('accelerationEfficiency', '1');
url.searchParams.set('decelerationEfficiency', '1');
url.searchParams.set('auxiliaryPowerInLitersPerHour', '1');
url.searchParams.set('fuelEnergyDensityInMJoulesPerLiter', '1');
url.searchParams.set('constantSpeedConsumptionInkWhPerHundredkm', 'example');
url.searchParams.set('constantSpeedConsumptionInLitersPerHundredkm', 'example');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateRoute/{locations}/{contentType}")
	q := baseURL.Query()
	q.Set("avoid", "example")
	q.Set("report", "effectiveSettings")
	q.Set("traffic", "true")
	q.Set("arriveAt", "example")
	q.Set("callback", "callback")
	q.Set("departAt", "now")
	q.Set("language", "en-GB")
	q.Set("hilliness", "normal")
	q.Set("routeType", "fastest")
	q.Set("travelMode", "car")
	q.Set("sectionType", "travelMode")
	q.Set("windingness", "normal")
	q.Set("vehicleWidth", "0")
	q.Set("vehicleHeight", "0")
	q.Set("vehicleLength", "0")
	q.Set("vehicleWeight", "0")
	q.Set("vehicleHeading", "1")
	q.Set("alternativeType", "anyRoute")
	q.Set("maxAlternatives", "0")
	q.Set("vehicleLoadType", "example")
	q.Set("vehicleMaxSpeed", "0")
	q.Set("computeBestOrder", "false")
	q.Set("instructionsType", "coded")
	q.Set("minDeviationTime", "0")
	q.Set("uphillEfficiency", "1")
	q.Set("vehicleAxleWeight", "0")
	q.Set("vehicleCommercial", "false")
	q.Set("vehicleEngineType", "combustion")
	q.Set("downhillEfficiency", "1")
	q.Set("currentFuelInLiters", "1")
	q.Set("routeRepresentation", "polyline")
	q.Set("computeTravelTimeFor", "none")
	q.Set("minDeviationDistance", "0")
	q.Set("accelerationEfficiency", "1")
	q.Set("decelerationEfficiency", "1")
	q.Set("auxiliaryPowerInLitersPerHour", "1")
	q.Set("fuelEnergyDensityInMJoulesPerLiter", "1")
	q.Set("constantSpeedConsumptionInkWhPerHundredkm", "example")
	q.Set("constantSpeedConsumptionInLitersPerHundredkm", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateRoute/{locations}/{contentType}")
uri.query = URI.encode_www_form({
  "avoid" => "example",
  "report" => "effectiveSettings",
  "traffic" => "true",
  "arriveAt" => "example",
  "callback" => "callback",
  "departAt" => "now",
  "language" => "en-GB",
  "hilliness" => "normal",
  "routeType" => "fastest",
  "travelMode" => "car",
  "sectionType" => "travelMode",
  "windingness" => "normal",
  "vehicleWidth" => "0",
  "vehicleHeight" => "0",
  "vehicleLength" => "0",
  "vehicleWeight" => "0",
  "vehicleHeading" => "1",
  "alternativeType" => "anyRoute",
  "maxAlternatives" => "0",
  "vehicleLoadType" => "example",
  "vehicleMaxSpeed" => "0",
  "computeBestOrder" => "false",
  "instructionsType" => "coded",
  "minDeviationTime" => "0",
  "uphillEfficiency" => "1",
  "vehicleAxleWeight" => "0",
  "vehicleCommercial" => "false",
  "vehicleEngineType" => "combustion",
  "downhillEfficiency" => "1",
  "currentFuelInLiters" => "1",
  "routeRepresentation" => "polyline",
  "computeTravelTimeFor" => "none",
  "minDeviationDistance" => "0",
  "accelerationEfficiency" => "1",
  "decelerationEfficiency" => "1",
  "auxiliaryPowerInLitersPerHour" => "1",
  "fuelEnergyDensityInMJoulesPerLiter" => "1",
  "constantSpeedConsumptionInkWhPerHundredkm" => "example",
  "constantSpeedConsumptionInLitersPerHundredkm" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateRoute/{locations}/{contentType}?" . http_build_query([
    "avoid" => "example",
    "report" => "effectiveSettings",
    "traffic" => "true",
    "arriveAt" => "example",
    "callback" => "callback",
    "departAt" => "now",
    "language" => "en-GB",
    "hilliness" => "normal",
    "routeType" => "fastest",
    "travelMode" => "car",
    "sectionType" => "travelMode",
    "windingness" => "normal",
    "vehicleWidth" => "0",
    "vehicleHeight" => "0",
    "vehicleLength" => "0",
    "vehicleWeight" => "0",
    "vehicleHeading" => "1",
    "alternativeType" => "anyRoute",
    "maxAlternatives" => "0",
    "vehicleLoadType" => "example",
    "vehicleMaxSpeed" => "0",
    "computeBestOrder" => "false",
    "instructionsType" => "coded",
    "minDeviationTime" => "0",
    "uphillEfficiency" => "1",
    "vehicleAxleWeight" => "0",
    "vehicleCommercial" => "false",
    "vehicleEngineType" => "combustion",
    "downhillEfficiency" => "1",
    "currentFuelInLiters" => "1",
    "routeRepresentation" => "polyline",
    "computeTravelTimeFor" => "none",
    "minDeviationDistance" => "0",
    "accelerationEfficiency" => "1",
    "decelerationEfficiency" => "1",
    "auxiliaryPowerInLitersPerHour" => "1",
    "fuelEnergyDensityInMJoulesPerLiter" => "1",
    "constantSpeedConsumptionInkWhPerHundredkm" => "example",
    "constantSpeedConsumptionInLitersPerHundredkm" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST Reachable Range

Calculates a set of locations that can be reached from the origin point. POST method handles additionally parameters: supportingPoints , allowVignette , avoidVignette , avoidAreas .

https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}?avoid=example&report=effectiveSettings&traffic=true&arriveAt=example&callback=callback&departAt=now&hilliness=normal&routeType=fastest&travelMode=car&windingness=normal&vehicleWidth=0&vehicleHeight=0&vehicleLength=0&vehicleWeight=0&timeBudgetInSec=1&vehicleLoadType=example&vehicleMaxSpeed=0&uphillEfficiency=1&energyBudgetInkWh=1&vehicleAxleWeight=0&vehicleCommercial=false&vehicleEngineType=combustion&downhillEfficiency=1&fuelBudgetInLiters=1&currentFuelInLiters=1&accelerationEfficiency=1&decelerationEfficiency=1&auxiliaryPowerInLitersPerHour=1&fuelEnergyDensityInMJoulesPerLiter=1&constantSpeedConsumptionInkWhPerHundredkm=example&constantSpeedConsumptionInLitersPerHundredkm=example

Hover any highlighted part to learn what it does

curl -X POST "https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}?avoid=example&report=effectiveSettings&traffic=true&arriveAt=example&callback=callback&departAt=now&hilliness=normal&routeType=fastest&travelMode=car&windingness=normal&vehicleWidth=0&vehicleHeight=0&vehicleLength=0&vehicleWeight=0&timeBudgetInSec=1&vehicleLoadType=example&vehicleMaxSpeed=0&uphillEfficiency=1&energyBudgetInkWh=1&vehicleAxleWeight=0&vehicleCommercial=false&vehicleEngineType=combustion&downhillEfficiency=1&fuelBudgetInLiters=1&currentFuelInLiters=1&accelerationEfficiency=1&decelerationEfficiency=1&auxiliaryPowerInLitersPerHour=1&fuelEnergyDensityInMJoulesPerLiter=1&constantSpeedConsumptionInkWhPerHundredkm=example&constantSpeedConsumptionInLitersPerHundredkm=example"
import requests
params = {
    "avoid": "example",
    "report": "effectiveSettings",
    "traffic": "true",
    "arriveAt": "example",
    "callback": "callback",
    "departAt": "now",
    "hilliness": "normal",
    "routeType": "fastest",
    "travelMode": "car",
    "windingness": "normal",
    "vehicleWidth": "0",
    "vehicleHeight": "0",
    "vehicleLength": "0",
    "vehicleWeight": "0",
    "timeBudgetInSec": "1",
    "vehicleLoadType": "example",
    "vehicleMaxSpeed": "0",
    "uphillEfficiency": "1",
    "energyBudgetInkWh": "1",
    "vehicleAxleWeight": "0",
    "vehicleCommercial": "false",
    "vehicleEngineType": "combustion",
    "downhillEfficiency": "1",
    "fuelBudgetInLiters": "1",
    "currentFuelInLiters": "1",
    "accelerationEfficiency": "1",
    "decelerationEfficiency": "1",
    "auxiliaryPowerInLitersPerHour": "1",
    "fuelEnergyDensityInMJoulesPerLiter": "1",
    "constantSpeedConsumptionInkWhPerHundredkm": "example",
    "constantSpeedConsumptionInLitersPerHundredkm": "example"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}');
url.searchParams.set('avoid', 'example');
url.searchParams.set('report', 'effectiveSettings');
url.searchParams.set('traffic', 'true');
url.searchParams.set('arriveAt', 'example');
url.searchParams.set('callback', 'callback');
url.searchParams.set('departAt', 'now');
url.searchParams.set('hilliness', 'normal');
url.searchParams.set('routeType', 'fastest');
url.searchParams.set('travelMode', 'car');
url.searchParams.set('windingness', 'normal');
url.searchParams.set('vehicleWidth', '0');
url.searchParams.set('vehicleHeight', '0');
url.searchParams.set('vehicleLength', '0');
url.searchParams.set('vehicleWeight', '0');
url.searchParams.set('timeBudgetInSec', '1');
url.searchParams.set('vehicleLoadType', 'example');
url.searchParams.set('vehicleMaxSpeed', '0');
url.searchParams.set('uphillEfficiency', '1');
url.searchParams.set('energyBudgetInkWh', '1');
url.searchParams.set('vehicleAxleWeight', '0');
url.searchParams.set('vehicleCommercial', 'false');
url.searchParams.set('vehicleEngineType', 'combustion');
url.searchParams.set('downhillEfficiency', '1');
url.searchParams.set('fuelBudgetInLiters', '1');
url.searchParams.set('currentFuelInLiters', '1');
url.searchParams.set('accelerationEfficiency', '1');
url.searchParams.set('decelerationEfficiency', '1');
url.searchParams.set('auxiliaryPowerInLitersPerHour', '1');
url.searchParams.set('fuelEnergyDensityInMJoulesPerLiter', '1');
url.searchParams.set('constantSpeedConsumptionInkWhPerHundredkm', 'example');
url.searchParams.set('constantSpeedConsumptionInLitersPerHundredkm', 'example');

const response = await fetch(url, {
  method: 'POST',
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}")
	q := baseURL.Query()
	q.Set("avoid", "example")
	q.Set("report", "effectiveSettings")
	q.Set("traffic", "true")
	q.Set("arriveAt", "example")
	q.Set("callback", "callback")
	q.Set("departAt", "now")
	q.Set("hilliness", "normal")
	q.Set("routeType", "fastest")
	q.Set("travelMode", "car")
	q.Set("windingness", "normal")
	q.Set("vehicleWidth", "0")
	q.Set("vehicleHeight", "0")
	q.Set("vehicleLength", "0")
	q.Set("vehicleWeight", "0")
	q.Set("timeBudgetInSec", "1")
	q.Set("vehicleLoadType", "example")
	q.Set("vehicleMaxSpeed", "0")
	q.Set("uphillEfficiency", "1")
	q.Set("energyBudgetInkWh", "1")
	q.Set("vehicleAxleWeight", "0")
	q.Set("vehicleCommercial", "false")
	q.Set("vehicleEngineType", "combustion")
	q.Set("downhillEfficiency", "1")
	q.Set("fuelBudgetInLiters", "1")
	q.Set("currentFuelInLiters", "1")
	q.Set("accelerationEfficiency", "1")
	q.Set("decelerationEfficiency", "1")
	q.Set("auxiliaryPowerInLitersPerHour", "1")
	q.Set("fuelEnergyDensityInMJoulesPerLiter", "1")
	q.Set("constantSpeedConsumptionInkWhPerHundredkm", "example")
	q.Set("constantSpeedConsumptionInLitersPerHundredkm", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("POST", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}")
uri.query = URI.encode_www_form({
  "avoid" => "example",
  "report" => "effectiveSettings",
  "traffic" => "true",
  "arriveAt" => "example",
  "callback" => "callback",
  "departAt" => "now",
  "hilliness" => "normal",
  "routeType" => "fastest",
  "travelMode" => "car",
  "windingness" => "normal",
  "vehicleWidth" => "0",
  "vehicleHeight" => "0",
  "vehicleLength" => "0",
  "vehicleWeight" => "0",
  "timeBudgetInSec" => "1",
  "vehicleLoadType" => "example",
  "vehicleMaxSpeed" => "0",
  "uphillEfficiency" => "1",
  "energyBudgetInkWh" => "1",
  "vehicleAxleWeight" => "0",
  "vehicleCommercial" => "false",
  "vehicleEngineType" => "combustion",
  "downhillEfficiency" => "1",
  "fuelBudgetInLiters" => "1",
  "currentFuelInLiters" => "1",
  "accelerationEfficiency" => "1",
  "decelerationEfficiency" => "1",
  "auxiliaryPowerInLitersPerHour" => "1",
  "fuelEnergyDensityInMJoulesPerLiter" => "1",
  "constantSpeedConsumptionInkWhPerHundredkm" => "example",
  "constantSpeedConsumptionInLitersPerHundredkm" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/tomtom.com/routing/1.0.0/routing/{versionNumber}/calculateReachableRange/{origin}/{contentType}?" . http_build_query([
    "avoid" => "example",
    "report" => "effectiveSettings",
    "traffic" => "true",
    "arriveAt" => "example",
    "callback" => "callback",
    "departAt" => "now",
    "hilliness" => "normal",
    "routeType" => "fastest",
    "travelMode" => "car",
    "windingness" => "normal",
    "vehicleWidth" => "0",
    "vehicleHeight" => "0",
    "vehicleLength" => "0",
    "vehicleWeight" => "0",
    "timeBudgetInSec" => "1",
    "vehicleLoadType" => "example",
    "vehicleMaxSpeed" => "0",
    "uphillEfficiency" => "1",
    "energyBudgetInkWh" => "1",
    "vehicleAxleWeight" => "0",
    "vehicleCommercial" => "false",
    "vehicleEngineType" => "combustion",
    "downhillEfficiency" => "1",
    "fuelBudgetInLiters" => "1",
    "currentFuelInLiters" => "1",
    "accelerationEfficiency" => "1",
    "decelerationEfficiency" => "1",
    "auxiliaryPowerInLitersPerHour" => "1",
    "fuelEnergyDensityInMJoulesPerLiter" => "1",
    "constantSpeedConsumptionInkWhPerHundredkm" => "example",
    "constantSpeedConsumptionInLitersPerHundredkm" => "example"
]);
$opts = ["http" => [
    "method" => "POST",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with Routing?

Routing is a Location API. Developers commonly use location APIs for:

  • tracking assets and vehicles in real time
  • building delivery and logistics apps
  • finding nearby businesses or services
  • geo-fencing and location-based notifications
  • address validation and autocomplete

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Routing is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide · Learn about API keys · What is REST?

Open documentation ↗