Quickstart

From nothing to your first feature query.

1. Check the service is up

No credentials needed. This also tells you which edge location is serving you.

curl https://api.maprouter.ai/v1/health
{ "status": "ok", "service": "maprouter-gateway", "colo": "DFW" }

2. Get a key

Keys are issued manually while the service is in early access — email us with what you are building and which datasets you need, and we will send one back with your credit applied. Self-serve signup is coming.

The key is shown once. Store it somewhere safe; we keep only a hash and cannot recover it for you. See pricing for what each pack includes.

3. Confirm your key and balance

export MAPROUTER_KEY="mr_live_..."

curl https://api.maprouter.ai/v1/credits \
  -H "Authorization: Bearer $MAPROUTER_KEY"

4. List what you can query

curl https://api.maprouter.ai/v1/collections \
  -H "Authorization: Bearer $MAPROUTER_KEY"

5. Query features by bounding box

Pass bbox as min_lon,min_lat,max_lon,max_lat. You get GeoJSON back.

curl "https://api.maprouter.ai/v1/collections/texas_counties/items\
?bbox=-97.75,30.25,-97.70,30.30" \
  -H "Authorization: Bearer $MAPROUTER_KEY"

Using it from Python

Because the response is standard GeoJSON, geopandas reads it with no adapter.

import geopandas as gpd
import requests

r = requests.get(
    "https://api.maprouter.ai/v1/collections/texas_counties/items",
    params={"bbox": "-97.75,30.25,-97.70,30.30"},
    headers={"Authorization": f"Bearer {MAPROUTER_KEY}"},
)
r.raise_for_status()
gdf = gpd.GeoDataFrame.from_features(r.json()["features"])

Next

The API reference has the full endpoint list, the error types worth branching on, and what is still in development. Stuck on something? We answer within two business days.