DERMS API Directory

Base URL: http://derms.ltsd.lv
Runtime: webhook validation Bypassed
Protocol: HTTP

Nodes

NodeStateLast heartbeatURL

Backend endpoints

MethodURLDescriptionParameters / body
GET/Human-readable API directory.
none
GET/apiMachine-readable API directory.
none
GET/healthBackend health, version, and runtime mode.
none
POST/api/devices/registerGenerate an LFDI from a MICA certificate.
{"micaCertificateBase64":"<base64 DER certificate>"}
POST/api/webhooks/plexigridReceive PlexiGrid activation events.
Headers when validation is Enforced:
  X-Signature-Timestamp: <unix seconds>
  X-Signature-Ed25519: <base64 signature>
Body:
  {"eventType":"activation.planned","activationId":"act-001","resourceId":"line-7","occurredAt":"2026-06-01T11:00:00Z","opModExpLimW":1500}
GET/swaggerSwagger/OpenAPI UI when ASPNETCORE_ENVIRONMENT=Development.
none

Simulator frontends

NameURLParameters / API
Monitoring Dashboardhttps://localhost:5173
Live dashboard UI
Operator webhook activity: GET /api/dashboard/activations, /api/dashboard/webhook-audit
Inverter Simulatorhttps://localhost:5193
Modbus TCP: 127.0.0.1:1502
GET /api/state
POST /api/pv {"watts":4200}
POST /api/control {"exportLimitW":1500,"enforce":true}
DERMS Microcontroller Simulatorhttp://derms.ltsd.lv/api/fleet/microcontrollers/{controllerId}/command
Polls active curtailments from backend
Applies limits to https://localhost:5193/api/control
PlexiGrid Simulatorhttps://localhost:5194
GET /api/info
GET /api/scenarios
POST /api/scenarios/{id}/run
POST /api/run
Target backend: http://derms.ltsd.lv