---
title: "Query road detections by geometry"
method: POST
path: "/map-data"
tags: ["map-features"]
---

# Query road detections by geometry

`POST /map-data`

Returns ML-detected road objects (speed limit signs, stop signs, fire hydrants, traffic lights, lane markings) within the given geometry. Use the `type` array to specify which data types to return and pass a Point geometry with radius or a Polygon.

## Request body

- MapDataRequest
  - `type` string[], required — Data types to return
  - `geometry` object, required — GeoJSON Point with radius or Polygon
    - `type` 'Point' | 'Polygon'
    - `coordinates` unknown
    - `radius` number — Radius in meters (Point only)

## Response `200`

Map data results

- object
  - `totalCreditsUsed` number
  - `totalCreditsRemaining` number
  - `mapFeatureResults` object
    - `type` string
    - `data` MapFeature[]
      - `id` string
      - `class` string — Detection class (e.g. speed_limit_sign, stop_sign)
      - `position` object
        - `lat` number
        - `lon` number
        - `azimuth` number
      - `properties` object — Class-specific properties
      - `confidence` number
      - `dimensions` object
        - `height` number
        - `width` number
      - `firstObserved` string, date-time
      - `lastObserved` string, date-time
    - `creditsUsed` number

## Other responses

- `400` — Bad Request — invalid geometry, missing required fields, or malformed JSON
- `402` — Payment Required — insufficient credits
- `403` — Forbidden — missing or invalid API key
- `429` — Too Many Requests — rate limit exceeded (default: 100 req/min)

---

[API](https://skmtc.dev/beemaps/apis/bee-maps-data-api.md) · [All operations](https://skmtc.dev/beemaps/apis/bee-maps-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/beemaps/bee-maps-data-api/revisions/fcbfc9ebaf37/schema)
