For Agents
Read live and historical solar production, consumption, storage, and alarm data from Enphase-monitored PV and battery systems.
Use for: List all Enphase systems on my installer account, Get the production meter readings for an Enphase system over the last 24 hours, Retrieve the lifetime energy production for a specific system, Find all open alarms on a customer's solar system
Not supported: Does not handle solar system design, installer billing, or grid-operator dispatch - use for telemetry, alarms, and device inventory on installed Enphase systems only.
The Enphase Monitoring API gives developers access to live and historical telemetry from Enphase solar systems, including microinverters, batteries, and consumption meters. The v4 surface covers system discovery and search, device inventory, production and consumption meter readings, alarms and events, and billing-grade telemetry suitable for tariff and net-metering analytics. With 47 endpoints, it is one of the most detailed solar telemetry APIs available and is the canonical source of truth for Enphase-installed systems.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Enphase Monitoring API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fenphaseenergy.com%2Fenphase" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fenphaseenergy.com%2Fenphase" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Enphase Monitoring API.
List solar systems linked to the authenticated installer or homeowner account
Search systems by attributes such as serial number, address, or system status
Pull production, consumption, and storage meter readings for any system
Read lifetime energy totals for production and consumption analytics
Retrieve open alarms and historical events for diagnostics and field service
Inventory the devices (microinverters, batteries, gateways) attached to a system
Look up a system ID by site or installer reference for downstream calls
Patterns agents use Enphase Monitoring API for, with concrete tasks.
★ Solar Production Dashboard
Build a homeowner or installer dashboard that visualises live and historical PV production, consumption, and storage by reading the Enphase v4 meter endpoints. Per-interval data underpins tariff comparisons and self-consumption metrics, while lifetime totals support warranty and ROI reporting. Most installer portals consume this API for their daily operational view.
Call GET /api/v4/systems/{system_id}/production_meter_readings for the last 24 hours and chart 15-minute interval kWh values.
Field Service Alarm Triage
Field service teams pull open alarms with GET /api/v4/systems/{system_id}/open_events and historical events with GET /api/v4/systems/{system_id}/events to triage faults before dispatch. Combining alarm context with device inventory from GET /api/v4/systems/{system_id}/devices lets technicians pre-stage replacement microinverters and batteries.
Call GET /api/v4/systems/{system_id}/open_events for system 1234567 and summarise affected devices and severity.
Battery and Storage Analytics
Commercial and residential storage operators read GET /api/v4/systems/{system_id}/storage_meter_readings to track Encharge battery cycling, state of charge, and energy throughput. Pair with consumption readings to build self-consumption and load-shifting analytics. Useful for utilities and aggregators running virtual power plant programs.
Pull storage meter readings for the past 7 days from GET /api/v4/systems/{system_id}/storage_meter_readings and compute average daily throughput.
AI Agent Solar Assistant Through Jentic
An AI assistant answers homeowner questions like 'how much did my system produce yesterday?' by discovering the Enphase production endpoint through Jentic, loading its schema, and executing the call with the homeowner's system ID. Enphase OAuth tokens and the API key stay in your Jentic One instance and never enter the agent context.
Search Jentic for 'get yesterday's solar production', load GET /api/v4/systems/{system_id}/production_meter_readings, and execute it for the user's system.
47 endpoints — the enphase monitoring api gives developers access to live and historical telemetry from enphase solar systems, including microinverters, batteries, and consumption meters.
METHOD
PATH
DESCRIPTION
/api/v4/systems
List solar systems on the account
/api/v4/systems/search
Search systems by criteria
/api/v4/systems/{system_id}/summary
System summary including current status
/api/v4/systems/{system_id}/production_meter_readings
Production meter readings
/api/v4/systems/{system_id}/consumption_meter_readings
Consumption meter readings
/api/v4/systems/{system_id}/storage_meter_readings
Battery storage meter readings
/api/v4/systems/{system_id}/open_events
Open alarms on a system
/api/v4/systems/{system_id}/devices
Device inventory for a system
/api/v4/systems
List solar systems on the account
/api/v4/systems/search
Search systems by criteria
/api/v4/systems/{system_id}/summary
System summary including current status
/api/v4/systems/{system_id}/production_meter_readings
Production meter readings
/api/v4/systems/{system_id}/consumption_meter_readings
Consumption meter readings
/api/v4/systems/{system_id}/storage_meter_readings
Battery storage meter readings
/api/v4/systems/{system_id}/open_events
Open alarms on a system
/api/v4/systems/{system_id}/devices
Device inventory for a system
What agents get from Jentic-routed access to this vendor.
Setup
Wiring Enphase by hand means combining its OAuth2 authorization-code tokens with the separate 'key' API-key header, refreshing the tokens, and building your own retries against api.enphaseenergy.com. Through Jentic you install once, import the Enphase Monitoring API from the API Directory, store the OAuth token and key once, and your agent calls it.
Permission scoping
Enphase puts the system id in the URL path (/api/v4/systems/{system_id}/...), so a rule can pin your agent to one system: it can read that system's summary, meter readings, and events and nothing else. You choose the operations it may call, so write operations like updating battery settings are not included unless you add them.
Credential isolation
Your Enphase OAuth token and API key are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'get solar production for a site' or 'list open events on a system', and Jentic returns the matching Enphase operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using Enphase Monitoring API through Jentic.
What authentication does the Enphase Monitoring API use?
The Enphase v4 API requires both OAuth 2.0 (for the user-bound access token) and an API key passed in the 'key' header. Each request must satisfy both schemes. Through Jentic, both credentials are stored encrypted in your Jentic One instance and never enter the agent context.
Can I read live solar production data with the Enphase API?
Yes. GET /api/v4/systems/{system_id}/production_meter_readings returns interval-level production data, while GET /api/v4/systems/{system_id}/summary gives the current status and lifetime totals. Pair with the consumption endpoint to build a complete energy view.
How do I find a system's ID?
Either list systems with GET /api/v4/systems and filter on the response, or call GET /api/v4/systems/retrieve_system_id to look up an ID by reference. POST /api/v4/systems/search supports more advanced filtering criteria.
What are the rate limits for the Enphase Monitoring API?
Enphase enforces plan-based daily request and concurrency limits. The OpenAPI spec does not embed numeric values; refer to the developer plan attached to your API key for the current quota. The API returns 429 when limits are exceeded.
How do I check open alarms on a system through Jentic?
Search Jentic for 'list open alarms for an Enphase system', load GET /api/v4/systems/{system_id}/open_events, and execute it with the system_id. Get started with Jentic One, the self-hosted execution layer.
Does the Enphase API expose battery storage data?
Yes. GET /api/v4/systems/{system_id}/storage_meter_readings returns Encharge battery throughput at interval resolution. Use it with consumption and production readings for self-consumption and time-of-use analytics.
Can I limit what my agent is allowed to do with the Enphase Monitoring API?
Yes. Because you run Jentic One yourself, your own rules decide which Enphase operations and credentials the agent may use. Enphase puts the system id in the URL path, such as /api/v4/systems/{system_id}/production_meter_readings, so you can pin the agent to a single system and let it read only that system's summary, meter readings, and open events. You choose the exact operations it may call, so write actions like changing battery settings stay off the list unless you add them.
GET STARTED