meridian.nodeapi.ai · Rust rewrite · DEM tools live

Geospatial processing for agents, scripts, and people who want the answer fast.

Meridian is a GIS and raster processing API with 28 production endpoints. POST a file, get a result. No API key, no subscription, no dashboard maze.

Runtime
Rust / Axum
GIS Engine
GDAL 3.8 · GEOS
Endpoints
28 production ops

Quickstart

One endpoint, one file, one result.

# Reproject a GeoJSON to Web Mercator
curl -X POST https://meridianapi.nodeapi.ai/v1/reproject \
  -F "file=@input.geojson" \
  -F "target_crs=EPSG:3857"

Why Meridian

  • 28 endpoints: vector, raster, DEM, topology, batch.
  • Rust + GDAL: fast, reliable, production-grade.
  • OpenAPI-first: docs generated from the codebase, always current.
  • Agent-native: works great from scripts, backends, and AI agents.
  • Acceptance-tested: full black-box production sweep passed 22/22.

Operations

Current surface area: 28 production endpoints including vector, topology, DEM, and raster math operations.

Core GIS

  • reproject
  • buffer
  • clip
  • dissolve
  • convert

Schema & validation

  • schema
  • validate
  • repair

Transforms

  • erase
  • feature-to-point
  • feature-to-line
  • feature-to-polygon
  • multipart-to-singlepart
  • add-field

Topology & combine

  • union
  • intersect
  • difference
  • append
  • merge
  • spatial-join

Batch & tiles

  • batch
  • vectorize (.mbtiles)

DEM & raster

  • hillshade
  • slope / aspect / roughness
  • color-relief / contours
  • raster-calc

Built for real workflows

  • Docs stay current: OpenAPI is generated directly from the codebase.
  • Acceptance-tested: full black-box production sweep passed 22/22.
  • Fast path: good fit for agents, scripts, and backend workflows.
  • No dashboard maze: POST a file, get your result.

Useful links

Integrate

Three ways to use Meridian, depending on your setup.

Direct API

Any HTTP client. POST a file to the endpoint of your choice and get your result. Full OpenAPI docs at meridianapi.nodeapi.ai/docs.

# Example: reproject a GeoJSON file to Web Mercator
import requests
r = requests.post('https://meridianapi.nodeapi.ai/v1/reproject',
    files={'file': open('input.geojson','rb')},
    data={'target_crs': 'EPSG:3857'})
print(r.json())
# Replace /v1/reproject with any of the 28 endpoints

OpenClaw Agent Skill

For agents running on OpenClaw. Install the Meridian skill and your agent gains full knowledge of the API and endpoint surface — no manual setup.

clawhub install meridian