← Back to all apps

Overview

Tools Available2
Developerkomoot GmbH
CategoryLifestyle

Find outdoor sport routes

Available Tools

komoot provides 2 tools that can be used to interact with its services.

Find Highlights By Location

find_highlights_by_location
Full Description

Find outdoor highlights and points of interest near a named location within an optional specified radius (meters).

Use this tool when the user:

  • Requests highlights, viewpoints, or points of interest near a specific place or landmark.
  • Requests highlights near their current location ('near me').
  • Wants to discover natural features (summits, waterfalls, lakes, trails) or amenities (cafes, restaurants, huts) in an area.

Users can specify filters for: sport type (hike, jogging, touringbicycle, racebike, mtb, mtb_easy) and categories (viewpoint, trail, summit, waterfall, lake, river, beach, forest, cave, gorge, canyon, mountain_pass, volcano, castle, historical_site, cafe, pub, restaurant, hut, and more).

Radius filter MUST be specified in meters.

Returns an interactive map widget showing highlights with markers.

Parameters

Required
location_namestring

Name of the location to search for highlights near. If the user only specifies something like 'near me' or 'around me', pass 'current_location' as the location name.

Optional
categoriesarray

List of highlight categories to filter highlights. Available options: "viewpoint", "trail", "summit", "waterfall", "lake", "river", "beach", "forest", "cave", "gorge", "canyon", "mountain_pass", "volcano", "other_natural", "natural_monument", "castle", "historical_site", "religious_building", "man_made_monument", "cafe", "pub", "restaurant", "hut", "facilities", "parking", "bridge", "settlement", "other_man_made", "cycle_way", "mtb_park", "climb"

Default: null
limitinteger

Number of items per page, must be between 1 and 30. By default it's 10, keep the default value unless the user explicitly asks for a different number of results.

Default: 10
pageinteger

Page number starting at 0. Use this in case the user wants to see more results.

Default: 0
radiusinteger

Maximum radius from the starting point in meters. Only set this if the user explicitly specifies a radius. If the user specifies in kilometers, multiply by 1000. If in miles, multiply by 1609. If not specified, the search will use the API's recommended search_radius.

Default: null
sport

Type of sport/activity. MUST be one of: "hike", "jogging", "touringbicycle", "racebike", "mtb", "mtb_easy" (in case of gravel biking). If the user asks for a sport not in the list, try to match it to the closest sport in the list.

Default: hike

Find Routes By Location

find_routes_by_location
Full Description

Find hiking, running, cycling, or other outdoor routes near a named location within an optional specified radius (meters).

Use this tool when the user:

  • Requests routes near a specific point of interest, landmark, or named place.
  • Requests routes near their current location ('near me').
  • Wants to find routes accessible from a specific starting place type (train station, bus stop, car park).

Users can specify filters for: sport type (hike, jogging, touringbicycle, racebike, mtb, mtb_easy), difficulty (easy, moderate, difficult), duration (seconds), length (meters), elevation gain (meters), surface preference (paved/unpaved), route type (loop, out-and-back), starting place category, and route attributes (waterfalls, lakes, summits, forests, coastline, cafes, restaurants, mountain huts, etc.).

Numeric filter values for radius, length, and elevation MUST be specified in meters; duration in seconds.

Returns a carousel or map widget of routes. The widget displays distance in miles and elevation in feet.

Parameters

Required
location_namestring

Name of the location to search for routes near. If the user only specifies something like 'near me' or 'around me', pass 'current_location' as the location name.

Optional
difficultiesarray

List of difficulty grades. The available difficulty grades are: "easy", "moderate", "difficult"

Default: null
limitinteger

Number of items per page, must be between 1 and 30. By default it's 10, keep the default value unless the user explicitly asks for a different number of results.

Default: 10
max_durationinteger

Maximum duration in seconds. If the user specifies in minutes, multiply by 60. If in hours, multiply by 3600. When the user asks for hikes 'of X hours/minutes' without specifying min/max, set this to the specified duration to find tours up to that length of time.

Default: null
max_lengthinteger

Maximum length in meters. If the user specifies in kilometers, multiply by 1000. If in miles, multiply by 1609. When the user asks for hikes 'of X km/miles' without specifying min/max, set this to the specified length to find tours up to that distance.

Default: null
max_uphillinteger

Maximum uphill in meters. If the user specifies in kilometers, multiply by 1000. If in miles, multiply by 1609. When the user asks for hikes 'with X meters/feet elevation' without specifying min/max, set this to the specified elevation to find tours up to that elevation gain.

Default: null
min_durationinteger

Minimum duration in seconds. If the user specifies in minutes, multiply by 60. If in hours, multiply by 3600. Only use this when the user explicitly asks for a minimum (e.g., 'at least 2 hours', 'longer than 30 minutes'). When the user specifies a single duration without qualifiers (e.g., '2 hour hikes'), leave this as None.

Default: null
min_lengthinteger

Minimum length in meters. If the user specifies in kilometers, multiply by 1000. If in miles, multiply by 1609. Only use this when the user explicitly asks for a minimum (e.g., 'at least 10km', 'longer than 5 miles'). When the user specifies a single length without qualifiers (e.g., '12km hikes'), leave this as None.

Default: null
min_uphillinteger

Minimum uphill in meters. If the user specifies in kilometers, multiply by 1000. If in miles, multiply by 1609. Only use this when the user explicitly asks for a minimum (e.g., 'at least 500m elevation', 'more than 1000ft climb'). When the user specifies a single elevation without qualifiers, leave this as None.

Default: null
pageinteger

Page number starting at 0. Use this in case the user wants to see more results.

Default: 0
radiusinteger

Maximum radius from the starting point in meters. Only set this if the user explicitly specifies a radius. If the user specifies in kilometers, multiply by 1000. If in miles, multiply by 1609. If not specified, the search will use the API's recommended search_radius.

Default: null
route_attributesarray

List of route attributes to filter tours. Available options: "waterfalls", "lakes_rivers", "mountain_summits", "forests", "coastline", "parks", "volcanoes", "caves", "canyons_gorges", "cafe", "pub", "restaurant", "mountain_hut", "facilities", "cultural_historical", "climbs", "ridges", "mountain_passes", "bike_parks", "avoid_main_roads"

Default: null
route_type

Route type preference. Options: "loop", "out_and_back"

Default: null
sort

Sort order. Options: "default", "score_by_difficulty"

Default: default
sport

Type of sport/activity. MUST be one of: "hike", "jogging", "touringbicycle", "racebike", "mtb", "mtb_easy" (in case of gravel biking). If the user asks for a sport not in the list, try to match it to the closest sport in the list.

Default: hike
start_place_category

Category of starting place. Options: "bus_stop", "car_park", "public_transport", "train_station"

Default: null
surface

Route surface preference. Options: "prefer_paved", "prefer_unpaved"

Default: null
widget

Widget to use for the result. Options: 'carousel', 'map'. By default it's 'map'. Keep the default value unless the user explicitly asks for a different UI representation.

Default: map