Skip to content
Static Images API

Static Images API

Renders a map image for a view and size, optionally with overlays. The result is cacheable (ETag).

Base URL: https://api.mapx.at · Rate-limit zone: heavy (30/min) · Guide: Static images

Map image (Static Images, Mapbox form)

GET /v1/static/{style}/{view}/{size}

satellite (BEV orthophoto, z5 to z18) or outdoors (hypsometric tints with hillshade from the DTM, z5 to z16). The streets* styles are rendered server-side from the style and the vector tiles (fills, lines, relief shading, place, road and water names; icons from the sprite, house numbers from z16; z0 to z22), usually under 0.2 s per 600x400.

More

satellite-streets draws the orthophoto (z5 to z18) with roads, boundaries, contours, names and icons of the vector map on top. Output PNG (default) or WebP, at most 1280x1280 (2560x2560 pixels with @2x). Cache-Control and ETag (If-None-Match gives 304).

Parameters

NameInTypeRequiredDefaultDescription
stylepathstringyes–streets, streets-dawn, streets-dusk, streets-night, satellite, satellite-streets or outdoors (old ids karte, luftbild, … as deprecated alias)
viewpathstringyes–lon,lat,zoom[,bearing] (rotation in degrees, pitch only 0) or auto (only with overlays, fits the extent)
sizepathstringyes–{width}x{height}[@2x][.png|.webp], each 1 to 1280

Example

curl -s -H "Authorization: Bearer YOUR_TOKEN" "https://api.mapx.at/v1/static/satellite/16.3725,48.2085,15/600x400" -o result.png

Example response: image/png, image/webp · Image

Errors (details: error catalog)

StatusMeaning
304Not modified (with If-None-Match)
400A parameter is missing or invalid
401Token missing or invalid (missing-token, invalid-token, token-expired)
403Token not allowed here (origin-not-allowed, origin-missing, pk-not-allowed, app-not-allowed, token-blocked, ip-not-allowed)
404Not found (name, path or position)
429Rate limit exceeded, wait Retry-After seconds
503Data temporarily unavailable

Map image with overlays

GET /v1/static/{style}/{overlay}/{view}/{size}

overlay: comma-separated list (at most 50, 20000 vertices) of pin-{s|m|l}[-label]+{hex}(lon,lat) (label not drawn), path-{width}[+{stroke}[-{opacity}][+{fill}[-{opacity}]]]({polyline, precision 5, URL-encoded}) and geojson({URL-encoded GeoJSON}) with simplestyle properties (stroke, stroke-width, stroke-opacity, fill, fill-opacity, marker-color, marker-size).

More

Example: /v1/static/satellite/pin-s+ff0000(15.33,48.22)/15.33,48.22,15/600x400.png

Parameters

NameInTypeRequiredDefaultDescription
stylepathstringyes–streets, streets-dawn, streets-dusk, streets-night, satellite, satellite-streets or outdoors (old ids karte, luftbild, … as deprecated alias)
overlaypathstringyes–pin-…, path-…, geojson(…), comma-separated
viewpathstringyes–lon,lat,zoom[,bearing] (rotation in degrees, pitch only 0) or auto (only with overlays, fits the extent)
sizepathstringyes–{width}x{height}[@2x][.png|.webp], each 1 to 1280

Example

curl -s -H "Authorization: Bearer YOUR_TOKEN" "https://api.mapx.at/v1/static/streets/pin-s%2Bff0000(16.3725,48.2085)/16.3725,48.2085,14/600x400" -o result.png

Example response: image/png, image/webp · Image

Errors (details: error catalog)

StatusMeaning
304Not modified (with If-None-Match)
400A parameter is missing or invalid
401Token missing or invalid (missing-token, invalid-token, token-expired)
403Token not allowed here (origin-not-allowed, origin-missing, pk-not-allowed, app-not-allowed, token-blocked, ip-not-allowed)
404Not found (name, path or position)
429Rate limit exceeded, wait Retry-After seconds
503Data temporarily unavailable

Playground

Playground
curl
The response appears here.