The service serves vector tiles (MVT) together with the MapLibre style, sprites and fonts needed to render them. Works with any MVT-capable client: MapLibre GL JS, OpenLayers, QGIS and others.
Read the guide →
MapLibre quickstart, style, TileJSON, building your own style, QGIS.
API reference (Swagger UI) →
All endpoints and interactive "try it out".
OpenAPI spec (YAML file) →
Machine-readable API description for tooling: import into Postman or generate client code (OpenAPI Generator). Note: opens as a raw YAML file; your browser may download it.
Endpoints
| Method | URL | Contents |
|---|---|---|
GET | https://api.elemroot.com/styles/v1/elemroot/style.json | MapLibre style (start here) |
GET | https://api.elemroot.com/tiles/v1/{tileset}.json | TileJSON |
GET | https://api.elemroot.com/tiles/v1/{tileset}/{z}/{x}/{y}.mvt | Vector tiles |
GET | https://api.elemroot.com/fonts/{fontstack}/{range}.pbf | Fonts (no key) |
Note: unlike the geo services, the vector maps base URL is
api.elemroot.com (not pump.elemroot.com).
Authentication uses the key parameter.
Tilesets
| Tileset | Contents | Zoom |
|---|---|---|
planet_baltics-v1 | Base map (OpenMapTiles schema): world z0–11, detailed Baltics z12–14 | 0–14 |
globallandcover-v1 | Global land cover (background at low zooms) | 0–9 |
Quick example
const map = new maplibregl.Map({
container: 'map',
style: 'https://api.elemroot.com/styles/v1/elemroot/style.json?key=docs_382d376eaaa6d004b7b93b7d',
center: [24.75, 59.44],
zoom: 10
});
Full explanation and examples: Vector maps guide.