Skip to main content
POST
Register Site
Everything else in the API answers about a point. A real project is a polygon — a parcel, an assemblage, a search area — and screening one properly means running the full sieve across its extent, which takes minutes, not milliseconds. So sites split the work in two. Register the polygon once and pay for the screen once. After that, questions against the resulting dossier are a single model call with no re-fetching, at POST /v1/ask-site.

Register

The body is a GeoJSON Polygon or MultiPolygon in WGS84:
Registration returns 202 building and runs the sieve off the request loop. Limits: 200,000 acres (about 313 square miles) and 20,000 vertices. A malformed geometry is a 422 and is rejected before metering, so a bad polygon costs you nothing. site_id is a hash of the geometry, which makes registration idempotent — the same polygon always resolves to the same site, and concurrent registrations run the sieve exactly once.

Poll

GET /v1/sites/{site_id} is unmetered — poll it as often as you like. Statuses are building, ready, and failed; an unknown id is a 404 site_not_found.

What it costs

Registration bills 10 credits on every call past geometry validation, including the idempotent reply for a site that is already ready. That is deliberate: polling registration would otherwise be a free status endpoint, and the unmetered GET above already is one. The pattern that saves money: register once, poll the GET, then ask questions.

POST /v1/ask-site

Ask the registered dossier a question.

Pricing

How sites price against per-point fetches.

Body

application/json
site
Site · object
required

Response

Successful Response