Maplark
| MapLark | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Status: | Active | |||||||||||||||||||
|
Commercial API service providing planet-scale OpenStreetMap feature queries as GeoJSON | ||||||||||||||||||||
| ||||||||||||||||||||
MapLark is a commercial web service that provides access to OpenStreetMap data through HTTP APIs. It hosts a planet-scale OSM database in PostGIS and returns matching features as GeoJSON, FlatGeobuf, GeoParquet, or CSV, so that developers can query OSM data without operating their own import and update pipeline.
The service uses OSM's own tagging semantics rather than a proprietary category schema: queries filter by ordinary key=value tags such as amenity=cafe or building=yes, and results cover nodes, ways and relations.
Features
- Planet-wide OSM coverage, refreshed weekly.
- Query by any OSM tag, with support for negative filters and narrowing by element type (
node,way,relation) and geometry shape (line, polygon). - Spatial filtering by bounding box or by radius around a point.
- Output as GeoJSON, FlatGeobuf, GeoParquet or CSV.
- Unclipped geometry — full polygons, lines and points, rather than tile-clipped shapes, so results can be used for computation and analysis as well as display.
- Authenticated access with per-tier rate limits and a deterministic, previewable query cost model.
- Find "open now" places, similar to Google Maps.
- Privacy first with GDPR compliance globally.
- Works with common map clients such as Leaflet, MapLibre and OpenLayers.
API
The main endpoint is the OSM Features API:
GET https://api.maplark.com/v2/osm_features
Requests are authenticated with a bearer token. A companion endpoint, GET /v2/osm_features/cost, accepts the same parameters and returns a cost estimate without executing the query. A Places API for nearby amenity search (including opening hours and nearest-first ranking) is also offered.
Example request:
curl "https://api.maplark.com/v2/osm_features?bbox=18.06,59.33,18.08,59.34&tags=building=yes&limit=50" \
-H "Authorization: Bearer swHAvOmreIm_uew6eqbn1UbIsVQT6p8PRohmqmAJiu4"
Official open-source client libraries are published as osmfeatures for Python (PyPI) and JavaScript/TypeScript (npm); the documentation also gives plain HTTP examples for Go, Ruby, Java and Swift. An interactive API playground is available on the website.
Comparison with Overpass API
MapLark is positioned as a hosted alternative to the Overpass API for production workloads. Public Overpass instances are shared community infrastructure and can be subject to queueing, latency variation and timeouts under load, whereas MapLark runs on dedicated infrastructure with per-tier rate limits and a service level agreement. Overpass remains free to use and offers the considerably more expressive Overpass QL language; MapLark exposes a simpler tag-and-bbox parameter interface.
Pricing
Billing is based on query credits rather than raw request counts. The cost of a request is determined by the size of the search area, the selectivity of the tag filters, the number of element types queried, and the result limit; untagged queries that must scan the whole dataset cost substantially more (roughly 6×) than selective tagged ones.
| Tier | Price | Credits | Rate limit |
|---|---|---|---|
| Free | $0/month | 4,000,000 credits/month | 8 requests/second |
| Standard | $19/month | Unlimited | 16 requests/second |
| Enterprise | Quoted | Unlimited | Custom |
The generous free tier is great for small to medium production projects, with paid plans if traffic is intense. Enterprise plans add dedicated PostGIS instances, custom rate limits and consulting support. Requests exceeding the monthly budget return HTTP 429.
Data and licensing
The underlying data is OpenStreetMap, published under the Open Database License (ODbL). Users of the API must attribute © OpenStreetMap contributors in any public-facing use. The client SDKs are open source, and the service is built on open formats (GeoJSON and OSM tags) rather than a vendor-specific schema. A self-hostable server component is described as planned but not yet available.