← Back to Documentation

Integrations

Energy Management API

7 min read

APIs for load management, forecasts, tariffs, and site energy analytics across depots and facilities.

Overview

Control site load, orchestrate charging with facility constraints, and retrieve energy KPIs for reporting and optimisation.

  • Endpoints for meters, tariffs, schedules, and constraints
  • Forecasts for demand and renewable generation
  • Event webhooks for peaks, anomalies, and demand response

Ingestion & Security

Ingest device readings over HTTP with device keys and optional HMAC body signatures. MQTT and WebSockets are available for streaming gateways and live dashboards.

  • Device auth header: X-Device-Key: <uuid>
  • Optional HMAC header: X-Signature: hex(sha256(body, secret))
  • POST /api/energy/energy-data and /api/energy/energy-data/bulk
curl -sS -X POST https://api.joulepoint.com/api/energy/energy-data/   -H 'X-Device-Key: <api-key>'   -H 'X-Signature: <hmac sha256 of raw body>'   -H 'Content-Type: application/json'   -d '{"total_power":3600.0,"total_energy":1500.0,"voltage_a":230.1,"timestamp":"2025-10-16T10:00:00Z"}'

Analytics & KPIs

Query live and historical analytics for meters, groups, and accounts. Export CSVs and fetch naive forecasts for planning.

  • GET /api/energy/analytics/live_trail
  • GET /api/energy/analytics/kpi and /matrix
  • GET /api/energy/analytics/export and /forecast

Power Quality & Protection

Configure sags/swells, THD, and imbalance thresholds and stream detected PQ events. Protection events include trips, earth leakage and breaker state.

  • POST /api/energy/pq/config
  • GET /api/energy/pq/events and /api/energy/protection/events
{
  "meter_id": 5,
  "sag_v_threshold": 0.9,
  "swell_v_threshold": 1.1,
  "thd_pct_threshold": 5.0,
  "imbalance_pct_threshold": 2.0
}

Automations & Webhooks

Define rules on events to trigger actions like webhooks, annotations, relay commands with approvals, and wallet topups. Deliveries are retried with backoff and protected by circuit breakers.

  • Events include data.ingested, pq.event, protection.event, alert.triggered
  • Actions: webhook, plugin_action, relay_command (approval), notify_email, annotate, wallet_topup
  • Endpoints: /api/automations/rules, /actions, /deliveries/metrics, dry-run support
{
  "name":"HighPower",
  "event_key":"data.ingested",
  "throttle_seconds":300,
  "dedupe_template":"meter:{meter_id}",
  "jsonlogic": { ">": [ {"var":["event.total_power",0]}, 5000 ] },
  "rule_actions":[{"action_id": 123 }]
}

MLOps & Forecasting

Create datasets, run external training jobs, manage models and assignments, and route inference results back into the event stream for anomaly detection.

  • POST /api/ml/datasets then /{id}/build
  • POST /api/ml/training-jobs then /{id}/run
  • POST /api/ml/assignments and /promotions

Billing & Wallets

Preview TOU costs and generate statements for accounts; manage prepaid wallets with low‑balance events and automated topups via rules.

  • POST /api/energy/billing/accounts/{id}/preview
  • POST /api/energy/billing/accounts/{id}/generate_statement
  • APIs: /api/energy/wallets and /wallet-transactions

Topology Graph

Fetch the site energy graph with nodes and edges for 3D visualisation, including live power and losses overlays.

  • GET /api/energy/topology/nodes/graph

Authentication

Authenticate with OAuth2 bearer tokens. Create scoped credentials under Integrations → API Access.

Full Reference

For endpoints, schemas, and examples, open the external Postman documentation (link below).

Need help implementing this guide?

Our solutions engineers can review your deployment plan and recommend best practices.

Related Guides