Skip to content

50,000 free calls a month, card-free. Get an API key →

Documentation menu
docs / api / get-v1-places-in-view
directional

GET/v1/places/in-view

API key required, sent as Authorization: Bearer snk_… or ?api_key=snk_….

Call it

bash
curl -fsS -X GET "https://api.mapmap.ai/v1/places/in-view?lat=…&lon=…&bearing_deg=…" \
  -H "Authorization: Bearer $MAPMAP_KEY"

Parameters

NameInRequiredDescription
latqueryyesObserver latitude in decimal degrees
lonqueryyesObserver longitude in decimal degrees
bearing_degqueryyesDirection the observer is facing, degrees CLOCKWISE FROM TRUE NORTH (0 = north, 90 = east). Magnetic bearings must be converted by the caller; nothing here corrects for declination
fov_degquerynoFULL width of the cone in degrees (1–360, default 60, so 30 degrees either side of the bearing). The same meaning fov_deg has on the nearby_places MCP tool
radius_mquerynoMaximum straight-line range in metres (1–5000, default 1000)
categoriesquerynoComma-separated place categories, normalised through the same vocabulary GET /geocode/reverse accepts (cafe, pub, fuel, charging_station, …; coffeecafe, petrolfuel). categories=building reaches named buildings, which is how to ask "what is that building over there". At least one of categories and name is required
namequerynoPlace name or brand filter, matched exactly as GET /geocode/reverse's name matches it. At least one of categories and name is required
limitquerynoResults to return (1–25, default 5)
eye_height_mquerynoHeight of the observer's eye above the ground in metres (0–500, default 1.6, a standing adult). A driver's eye is nearer 1.2 m; a first-floor window is nearer 4 m
target_height_mquerynoHeight above its own ground at which each place is tested (0–500, default 0, the place's door). Raise it to ask about rooflines, spires or masts
visible_onlyquerynoWhen true, drop everything whose verdict is not clear. Default false: an occluded or unchecked place is returned WITH its verdict, because dropping it would be a visibility claim made silently

Responses

200Places in the cone, each with distance_m, bearing_deg, angular_offset_deg and a visibility report naming exactly what was checked; plus an observer echo, an excluded count, a coverage block naming the datasets that answered, and the standing caveat
400Invalid request
401Missing or invalid API key
429Quota or rate limit exceeded
501The first-party geocode index is not configured on this deployment (urn:sn-gateway:problem:reverse-filtering-not-enabled); a directional browse cannot run on the Photon proxy, whose reverse endpoint filters by neither category nor name

Error bodies follow the shared problem model documented on API conventions.

Generated from https://api.mapmap.ai/openapi.json on 2026-09-22 · operationId get_places_in_view