Loading documentation...
Vector tiles for US county boundaries and labels. Use for county-level choropleths, administrative boundaries, and regional analysis.
https://api.landmapmagic.com/v1/tiles/counties/{z}/{x}/{y}.mvtReturns a Mapbox Vector Tile containing county polygon geometries and label points. Zoom range: 0 – 12.
| Name | Type | Description |
|---|---|---|
| z* | number | Zoom level (0-12). |
| x* | number | Tile X coordinate. |
| y* | number | Tile Y coordinate. |
| key* | string | Your API key. |
countiesCounty polygon boundaries.z2-14counties_labelsCounty label points (centroids).z0-12| Attribute | Type | Description |
|---|---|---|
| id | number | Unique internal feature identifier. |
| NAME | string | County name (e.g. "Story"). |
| COUNTYFP | string | Three-digit FIPS county code (e.g. "169"). |
| STATEFP | string | Two-digit FIPS state code for the parent state (e.g. "19"). |
| STATE_NAME | string | Full name of the parent state (e.g. "Iowa"). |
| COUNTYNS | string | GNIS (Geographic Names Information System) identifier for the county. |
curl "https://api.landmapmagic.com/v1/tiles/counties/6/15/23.mvt?key=YOUR_API_KEY" \
--output tile.mvtconst response = await fetch(
"https://api.landmapmagic.com/v1/tiles/counties/6/15/23.mvt?key=YOUR_API_KEY"
);
const data = await response.arrayBuffer();
console.log("Tile size:", data.byteLength, "bytes");import requests
response = requests.get(
"https://api.landmapmagic.com/v1/tiles/counties/6/15/23.mvt",
params={"key": "YOUR_API_KEY"}
)
print(f"Status: {response.status_code}, Size: {len(response.content)} bytes")HTTP/1.1 200 OK
Content-Type: application/vnd.mapbox-vector-tile
Content-Encoding: gzip
Cache-Control: public, max-age=86400The response body is a binary MVT protobuf. Empty tiles return HTTP 204 with no body.