Vector Tiles API Reference
Base URL
https://tiles.maptoolkit.net
Endpoints
GET /{id}.json
Get TileJSON metadata for a tile source
Returns a TileJSON 2.2.0 document describing the tile source.
Use this URL as the data source in a MapLibre GL style.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | Tile source ID, for example mtk, contours, bathymetry, terrainrgb or naturalearth. |
| Status | Description |
|---|---|
200 | TileJSON 2.2.0 document. |
404 | Tile source not found. |
500 | Internal server error. |
GET /{id}/{z}/{x}/{y}.{format}
Get a map tile
Returns a single map tile.
- Vector tiles are returned as Mapbox Vector Tile (PBF) binaries.
- Raster tiles are returned as PNG or WebP images.
- Tiles outside the source's zoom range return
404with the bodyTile not found.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | Tile source ID, for example mtk, contours, bathymetry, terrainrgb or naturalearth. |
z | path | integer | Yes | Zoom level. |
x | path | integer | Yes | Tile column (X coordinate in the XYZ tile grid). |
y | path | integer | Yes | Tile row (Y coordinate in the XYZ tile grid). |
format | path | string | Yes | Tile format. Use mvt for vector tiles, png for raster, webp for terrain-RGB. Requesting .pbf from a vector source returns 400. One of: mvt, png, webp. |
cache | query | string | No | Cache strategy to use. Default: active. One of: active, seeding. |
optimize | query | string | No | Optimizer to apply to vector tile (PBF) responses. Has no effect on raster tiles. |
rerender | query | string | No | Forces the tile to be re-fetched from the upstream source, bypassing the cache. One of: true, false. |
| Status | Description |
|---|---|
200 | Tile data. An empty body indicates the tile is outside the source’s zoom range. |
500 | Internal server error. |
Try it
The console below sends live requests against the endpoints above. You can browse it
without an API key; Execute needs one, because every endpoint requires the api_key
query parameter and returns 403 without it. Use Authorize to add your key. See
First Steps if you do not have one yet.