Open Data Schema for Energy

Inverter API Access

This guide captures API onboarding requirements for inverter OEMs used by ODS-E transforms, including OEMs with newly added transform specifications.

Last reviewed: 2026-02-09

Transform Specs

Runtime Support (Python odse.transform)

Source Key Runtime Status
huawei Implemented
switch Implemented
solaxcloud, solax Implemented
fimer, auroravision Implemented
enphase Implemented
solarman Implemented
solaredge Implemented
fronius Implemented
sma Implemented (normalized contract input)
solis, soliscloud Implemented (normalized contract input)

Runtime Verification Harness

Use tools/transform_harness.py to validate transform functions.

Modes

Commands

PYTHONPATH=src/python python3 tools/transform_harness.py --mode fixture
cp .env.example .env
PYTHONPATH=src/python python3 tools/transform_harness.py --mode mixed --oems all
PYTHONPATH=src/python python3 tools/transform_harness.py --mode live --oems enphase,sma,fronius

Live API Configuration

Example .env values for live checks:

ODS_LIVE_ENPHASE_URL=https://api.enphaseenergy.com/api/v4/systems/<system_id>/telemetry/production_micro?start_at=2026-02-09T12:00:00Z&end_at=2026-02-09T12:15:00Z
ODS_LIVE_ENPHASE_METHOD=GET
ODS_LIVE_ENPHASE_HEADERS={"Authorization":"Bearer <enphase_access_token>"}
ODS_LIVE_ENPHASE_TRANSFORM_KWARGS={"expected_devices":10}

ODS_LIVE_SMA_URL=https://sandbox.smaapis.de/monitoring/<endpoint-returning-normalized-payload>
ODS_LIVE_SMA_METHOD=GET
ODS_LIVE_SMA_HEADERS={"Authorization":"Bearer <sma_access_token>"}

FRONIUS_HOST=192.168.1.50

Troubleshooting:

Status Key

OEM API Access Summary

OEM Status API Type Setup Prerequisites Auth Model
Huawei FusionSolar Included Cloud (Northbound) Enable Northbound management in FusionSolar company admin and assign API capability API account or OAuth2 (depends on access mode)
SolarEdge Included Cloud Monitoring API Generate site/account API key in SolarEdge monitoring portal API key in query parameter
Enphase Envoy / Enlighten Included Cloud + local gateway Register app in Enphase developer platform and authorize system access OAuth2 (token-based)
Fronius Included Local inverter API Inverter reachable on LAN; Solar API enabled on device/network Typically none (local endpoint access)
SMA Included (Spec) Cloud API Create developer app in SMA developer portal and complete consent for target system owner OAuth2 (authorization code flow)
FIMER Aurora Vision Included (Spec) Cloud API Aurora Vision account with required role; request API enablement via FIMER support Vendor-issued credentials per Aurora Vision API docs
SolisCloud Included (Spec) Cloud API Complete Solis cooperation/application process and receive API activation materials OAuth2 with AppKey/AppSecret
SolaX Cloud Included (Spec) Cloud API Generate API token in Solax Cloud third-party ecosystem settings API token

Setup Instructions by OEM

Huawei FusionSolar

  1. Sign in as company administrator in FusionSolar.
  2. Open System > Company Management > Northbound Management.
  3. Create or enable a Northbound application and grant required API capabilities.
  4. Choose an access mode:
    • API account access (northbound account created in FusionSolar), or
    • OAuth Connect (OAuth2 client setup for third-party app).
  5. Confirm plant/site visibility for the account/client before ingestion.

Official references:

SolarEdge

  1. In Monitoring Portal, open API access for account or specific site.
  2. Create/copy API key.
  3. Use key on Monitoring API endpoints (monitoringapi.solaredge.com).

Official reference:

Enphase Envoy / Enlighten

  1. Register an app in the Enphase developer platform.
  2. Configure OAuth redirect/callback.
  3. Have the system owner authorize the app.
  4. Exchange authorization code for access token.
  5. Use token for system/telemetry API calls.

Official references:

Fronius Local Solar API

  1. Ensure the inverter is on the same network as the integration service.
  2. Resolve inverter IP/hostname.
  3. Query local endpoints under /solar_api/v1.
  4. Validate required endpoints respond (GetPowerFlowRealtimeData.fcgi, GetInverterRealtimeData.cgi, etc.).

Official reference:

SMA

  1. Create a developer app in SMA developer portal.
  2. Configure OAuth client details and redirect URI.
  3. Ask system owner to consent to API scopes.
  4. Exchange authorization code for access/refresh tokens.
  5. Use SMA APIs for plant and inverter telemetry.

Official reference:

FIMER Aurora Vision

  1. Ensure Aurora Vision account is active and validated.
  2. Ensure account role/permissions are sufficient for portfolio access.
  3. Open a FIMER support ticket to enable required Aurora Vision API capabilities.
  4. Use credentials and authentication flow exactly as provided in Aurora Vision documentation.

Official references:

SolisCloud

  1. Reach a cooperation agreement with Solis and submit API activation materials.
  2. Receive OAuth2 access documentation plus AppKey and AppSecret from Solis.
  3. Implement OAuth2 authorization flow for user-consented data access.
  4. Call SolisCloud APIs within the authorized scope.

Official reference:

SolaX Cloud

  1. Sign in to Solax Cloud.
  2. Open Service > API (third-party ecosystem section).
  3. Generate or copy tokenId.
  4. Use token in SolaX API v2 requests.

Official references:

Implementation Notes for ODS-E