Run the same engine headlessly
POST a public benchmark key or a complete 8,760-hour project to the simulation endpoint. The response returns provenance, a deterministic input fingerprint, technical results, lifecycle economics, and any requested outage or component-disturbance resilience analysis.
POST /api/v1/simulate
JSON in, JSON out. CORS is enabled for public read-and-run integrations.
Aggregate, not hourly
Technical, economic, and requested resilience results are returned by default. Set includeHourly to true when the complete dispatch trace is required.
3 MB · 50 years
Custom projects require exactly 8,760 non-negative load values. Payloads are capped at 3 MB and project life at 50 years.
Fastest first call
Run one of the published reference projects without constructing a full project payload.
curl -X POST https://www.microgridmodeler.com/api/v1/simulate \
-H "Content-Type: application/json" \
-d '{"benchmarkKey":"clinic-small","includeHourly":false}'Request contract
Provide exactly one source: benchmarkKey or project.
schemaVersion, project payload, and returned fingerprint with any automated study.Published benchmark keys
These keys are stable inputs to the endpoint and link to the same reference suite visible on the site.
Response shape
The exact component and result schemas are published in the OpenAPI document.
{
"schemaVersion": "2026-07-20",
"engine": "MicrogridModeler 2.4 chronological techno-economic, resilience, tariff, exceedance-screen, and Pareto-sizing engine",
"fingerprint": {
"value": "…",
"method": "cyrb53 over the serialized project payload",
"cryptographic": false
},
"project": { "id": "clinic-small", "name": "Remote clinic (small)" },
"provenance": { "solar": { "source": "synthetic", "model": "…" } },
"resource": { "annualGhiKwhM2": 0, "specificYieldKwhPerKw": 0 },
"result": {
"feasible": true,
"violations": [],
"technical": { "annualLoadKwh": 0, "fuelLitres": 0 },
"economics": { "npc": 0, "lcoe": 0 }
}
}