WaiMAP - Spatial Intelligence Developers & partners — Build on WaiMAP

Developers & partners — Build on WaiMAP

Build on WaiMAP: Spatial APIs, Engineering Engines, Observation Services and Reports & Workflows — each marked Live or Planned; the MCP API (Business and above), wm-Digamma extensions (Team and above), the public Site Check, report verification lookup and layer catalogue, with sample requests and responses.

WaiMAP processes your files and does not store them. Your images, GeoTIFFs, photos, CAD drawings and IFC models stay on your own disks or your own servers. WaiMAP processes them and returns the results:
  • On your computerIFC (up to about 200 MB), GeoTIFF / COG previews and point values, DXF drawings and many imports are read in your browser — the file never leaves your computer.
  • On WaiMAP's calculation serverA temporary processing copy exists only while the job runs. It is deleted when the job ends (success or failure) or when you have downloaded the result — within minutes, 2 hours at most. Processed rasters come back to you as downloads.
  • From your own server (URL)Give an https link (presigned S3 / R2 / Azure / GCS, WebDAV or plain https): WaiMAP reads the file from there — rasters by range requests, nothing kept. The link is not stored unless you ask WaiMAP to remember it in your project.
  • What WaiMAP keepsYour project records: parameters, results and metadata (for example a patch's bounds, coordinate system, source, licence and checksum) — small data that belongs to your account.
  • What WaiMAP does not keepYour source files. There is no file storage and no storage quota.

Build on WaiMAP

Four service families. Each item is marked Live (works today) or Planned (not available yet) — checked against the code.

Spatial APIs

  • Live Shared layer catalogue (licence and attribution per layer)
  • Live Public Site Check point values (atlas, no key)
  • Live Team project geometry by share code (MCP project_get)
  • Planned Keyed tile and area-statistics API

Engineering Engines

  • Live MCP tools: W-ENG modules, PV yield (pvlib), wind AEP (PyWake), load flow (pandapower) — Business and above
  • Planned Line mechanics, earthworks and layout engines through the API

Observation Services

  • Live Observations in the app (areas, change detection, alerts) and extensions that read the open project
  • Planned Observations API and sector report templates

Reports & Workflows

  • Live Report verification lookup (public)
  • Live wm-Digamma extensions — Team and above
  • Live Standard file formats in and out
  • Planned Report rendering and webhooks through the API
Developers & partners — Build on WaiMAP. Available now: MCP API (Business and above) · wm-Digamma extensions (Team and above) · Report verification lookup (public) · Shared layer catalogue (licences of each layer apply). Partners find their own customers. Partner work is kept separate from WaiMAP members' projects. No access to members' data. Developer page

Documentation

SectionStatusWhat it covers today
API catalogueLiveThe endpoints below with sample requests and responses (real endpoints only).
Authentication and API keysLive PlannedLive: MCP keys issued by the WaiMAP administrator (Authorization: Bearer wmk_…, shown once, stored as a hash). Planned: self-service test / live keys.
Usage metering and quotasLive PlannedLive: per-endpoint rate limits per connection, plan limits on projects and file sizes, AI usage billed from the paying account's WAI W$ balance. Planned: per-key usage dashboard and quotas.
Sandbox and sample dataLive PlannedLive: CAD / BIM samples, Observations samples and the project demonstrations (GeoJSON, CSV, PDF). Planned: sandbox keys and a sandbox project.
Report and file outputs via APIPlannedToday reports (PDF, Word, Excel) and drawings (DXF, DWG, IFC) are produced in the app; MCP tools return JSON results.
Publishing sub-servicesLive PlannedLive: wm-Digamma extensions (manifest added by the administrator for a company or for everyone). Planned: a marketplace for partner apps.
Data privacy, project isolation and IPLiveNo OAuth access on behalf of members; an extension sees only what its manifest permissions allow in the open project of the user who runs it; an API key reads only team projects by their share code; partners keep their own IP and find their own customers.
Revenue share and termsPlannedPartner apps sold through WaiMAP: 20 % of the partner's revenue to WaiMAP, priced on the Enterprise basis; the terms are published with the marketplace.

API catalogue — real endpoints

MCP API Live Business and above

POST api/mcp.php — JSON-RPC 2.0 (initialize, tools/list, tools/call).

POST api/mcp.php Authorization: Bearer wmk_… {"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"pv_yield","arguments":{"lat":36.63,"lng":33.40,"kwp":1000}}} → {"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{ annual_kwh, specific_yield_kwh_kwp, performance_ratio, monthly_kwh[12], engine … }"}]}}

Site Check Live public, rate-limited

GET api/sitecheck.php?lat=36.63&lng=33.40 → {"ok":true,"configured":true,"lat":36.63,"lng":33.4,"values":{"gsa-pvout":{"value":…,"units":"kWh/kWp/yr"},"gwa-ws150":{…},"jrc-flood-rp100":{…},"ghsl-pop2025":{…},"ghsl-built2000":{…},"ghsl-built2025":{…}},"suitability":{"score":…,"weights":{…}},"growth":{…},"ai":false}

Layer catalogue Live public list

GET api/layers.php?action=list→ {"ok":true,"layers":[{"id":"…","name":"…","category":"…","attribution":"…","licence":"…","minzoom":…,"maxzoom":…}]}

Only layers cleared for commercial use are listed; each layer's licence and attribution apply.

Report verification Live public

GET api/verify.php?action=lookup&id=WMR-YYYY-NNNNNN-XX→ {"ok":true,"id":"WMR-…","status":"active","type":"…","issued":"YYYY-MM-DD","valid_until":"…","sha256":[{"format":"PDF","sha256":"…"}]}

Unknown ids get one generic answer (no enumeration).

MCP tools (from the server)

  • weng_catalogList the W-ENG engineering modules (conductor selection, sag / clearance, cable sizing, pipe wall thickness) with their inputs.
  • weng_runRun one W-ENG module, e.g. weng.pipe_wall {diameter_mm, maop_bar}, weng.conductor_select {power_mw, voltage_kv}, weng.sag_tension {conductor, spans_m, attachment_height_m, required_clearance_m}, weng.cable_sizing.
  • pv_yieldHourly PV yield with pvlib (PVGIS TMY) on the WaiMAP compute worker: specific yield, PR, monthly kWh.
  • wind_aepWind farm AEP with wake losses (PyWake). positions [[lat,lng]…], turbine {name, diameter_m, hub_m, power_curve [[m/s,kW]…]}, sectors [[freq, A, k]…] (12) or timeseries {ws, wd}.
  • grid_loadflowGrid connection load flow and IEC 60909 short circuit (pandapower): plant_mw, line_km, hv_kv, mv_kv, grid_sc_mva.
  • project_getA WaiMAP team project by its share code: name, mode, drawings (GeoJSON incl. CAD elements), inputs, notes.

Extension permissions

point.read · map.read · map.draw · project.read · cad.read · cad.write · ui.notify — a call without the permission is refused. Manifest and SDK: see the extension guide shipped with WaiMAP (extensions/sdk/wmd.js, sample extensions/site-buffer/).

Services available now

MCP API

Business and above

POST api/mcp.php — JSON-RPC 2.0 (initialize, tools/list, tools/call), Authorization: Bearer wmk_… (key issued by the WaiMAP administrator, shown once, stored as a hash). Tools listed below come from the server itself.

wm-Digamma extensions

Team and above

A web page + a manifest {id, name, version, entry, permissions[], tools[], scope}. WaiMAP opens it in a sandboxed iframe (no access to cookies, storage or the page); every postMessage call is checked against the permissions in the manifest; declared tools become Brain tools while the extension is open. SDK: extensions/sdk/wmd.js.

Report verification lookup

Public

GET api/verify.php?action=lookup&id=WMR-YYYY-NNNNNN-XX → minimal public metadata of an issued report and, while verification is active, the SHA-256 of the verified files; the file check runs in the browser (/verify/{id}). Unknown ids get one generic answer (no enumeration).

Shared layer catalogue

Public list

GET api/layers.php?action=list → the map layers WaiMAP may show (id, name, category, attribution, licence, zoom range). Only layers cleared for commercial use are listed; each layer's licence and attribution apply to anything you build with it.

Example apps you can build

Drone defect report

Observe + WaiSpace + report verification

Upload drone photos and orthophotos to WaiSpace, mark defects at the site you watch in Observe, issue the inspection report and let the client check it on the verify page.

Pipeline monitoring

MCP (project_get, weng_run) + Observe

Read the pipeline route of a team project, re-check wall thickness for a new MAOP with W-ENG and watch the corridor for construction or hazard events.

Investor portfolio screening dashboard

MCP (pv_yield, wind_aep, grid_loadflow)

Run yield and grid checks for every site in a portfolio from your own dashboard and rank them with your own criteria.

Municipal zoning check

wm-Digamma extension (point.read, cad.read, map.draw)

An extension that tests a drawn parcel or building against local zoning rules and draws the setbacks on the map.

Field inspection app

wm-Digamma extension (project.read, cad.write, ui.notify)

A checklist that adds inspection points to the project drawing and reports progress to the team.

Examples show what the available services allow; they are not WaiMAP products.

How to start

  • API keys today: subscribe to the Business plan (or Enterprise); the WaiMAP administrator issues your MCP key (Admin → wm-Digamma & API).
  • Extensions today: Team plan or above; the administrator adds your manifest (https URL or JSON) for your company or for everyone.
  • Self-service test / live keys: coming.
  • Marketplace for partner apps: planned — 20 % of the partner's revenue to WaiMAP, terms published with the marketplace.

Rules

  • Licences of the map layers apply; a layer with commercial_ok:false is never served or listed.
  • Partner work is kept separate from WaiMAP members' projects; partners find their own customers.
  • No access to members' data: an extension sees only what its manifest permissions allow in the open project of the user who runs it; an API key reads only team projects by their share code.
  • AI usage through WaiMAP is billed from the WAI W$ balance of the account that pays.

Also available

  • Validation registry (public)Every engine comparison as JSON: api/report.php?action=validation&format=json (also as PDF and on the validation page).
  • Project and report linksTeam projects open by share code (?project=CODE); report pages can be shared as private links or published to the gallery after review.
  • Standard file formatsData comes in and goes out in standard formats (Shapefile, GeoJSON, KML, DXF, GeoTIFF, LAS, Excel, CSV, PVsyst / SAM weather files), so other tools can read WaiMAP results without an API.
  • Machine-readable summaryllms.txt: a plain-text summary of the platform for AI assistants and crawlers.
Contact for integration. Write to [email protected] with your use case.