Custom Datasets

Upload your own GeoJSON and query it alongside OpenStreetMap. One API, all your data.

How it works

1

Upload your GeoJSON

POST a FeatureCollection or individual features. Replace, merge, or append to existing data.

2

Plaza indexes it

Features are tiled to H3, spatially indexed, and stored alongside the OSM planet.

3

Query everything together

Use REST or PlazaQL to search your data and OSM in the same request. Spatial filters, tag filters, and set operations all work.

See it in action

An example request and its response, drawn on the map.

terminal
$

Who uses this

Teams building with Custom Datasets.

Store locators

Upload locations, query by proximity. Combine with geocoding to find the nearest store to any address.

Custom boundaries

Sales territories, delivery zones, or franchise areas as polygons. Spatial queries check which zone a coordinate falls in.

Data enrichment

Query your features against OSM in the same request. Find all restaurants within 500m of each office location.

1M

Features per dataset

100

Datasets per account

8

CRUD endpoints

3

Upload modes

What you can build

Example apps powered by Custom Datasets.

Store Locator

Find the nearest location to any address with proximity search.

Custom Datasets Geocoding

Delivery Zone Checker

Upload service areas as polygons, check if an address is covered.

Custom Datasets Geocoding PlazaQL

Asset Dashboard

Track fleet positions and query by bounding box in real time.

Custom Datasets Reverse Geocoding

Start building

curl -X POST "https://plaza.fyi/api/v1/datasets" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Store Locations"
}'
View endpoints
Method Path Description
POST /api/v1/datasets Create a new dataset
GET /api/v1/datasets List your datasets
GET /api/v1/datasets/:id Get dataset metadata
POST /api/v1/datasets/:id/upload Upload GeoJSON features (replace, merge, or append)
POST /api/v1/datasets/:dataset_id/features Create individual features
GET /api/v1/datasets/:dataset_id/features List features with cursor-based pagination
PATCH /api/v1/datasets/:dataset_id/features/:id Update a feature's geometry or properties
DELETE /api/v1/datasets/:dataset_id/features/:id Delete a feature

How it compares

Google: No custom data hosting
Plaza: Upload GeoJSON, query it alongside OpenStreetMap
Mapbox: Tilesets (rendering only)
Plaza: Full CRUD + spatial queries on your data
Self-hosted PostGIS: You manage the infra
Plaza: Managed storage from 1 MB free to 20 GB+

Common questions

What formats can I upload?

GeoJSON FeatureCollections. Upload a file via the REST API or dashboard. Every feature needs a valid geometry (Point, LineString, Polygon, or Multi* variants) and optional properties.

Can I query my data alongside OpenStreetMap?

Yes. Pass the datasets parameter to POST /features or the geocoding endpoints, or use PlazaQL's dataset() source to mix your data with OSM in a single query.

How much storage is included?

Free tier includes 1 MB. Pro plans include 1 GB to 20 GB depending on the tier. Overage is $5/GB/month. Enterprise gets custom storage.

What are the upload modes?

Replace (swap all features), merge (upsert by ID), and append (add without removing). Choose the mode that fits your update pattern.