SolarEdge Energy API
Energy production measurements and time-frame energy
Energy production measurements and time-frame energy
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/solar-edge-energy-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Solar Edge Energy API
version: 1.0.0
contact:
name: SolarEdge Developer Support
url: https://developers.solaredge.com
license:
name: Proprietary
url: https://www.solaredge.com/us/commercial/developer
x-api-id: solar-edge:solar-edge-monitoring-api
description: 'Operations tagged Energy across 2 of this provider''s published API definitions: openapi.yml, solar-edge-monitoring-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
security:
- ApiKeyQuery: []
tags:
- name: Energy
description: Energy production measurements and time-frame energy
paths:
/site/{siteId}/energy:
get:
operationId: getSiteEnergy
summary: Get Site Energy
description: Returns aggregated energy measurements for a site over a specified date range. Results match the Site Dashboard energy calculation. Supports comma-separated siteId for bulk requests (up to 100 sites).
tags:
- Energy
parameters:
- $ref: '#/components/parameters/siteId'
- name: startDate
in: query
required: true
description: Start date in YYYY-MM-DD format
schema:
type: string
format: date
example: '2024-01-01'
- name: endDate
in: query
required: true
description: End date in YYYY-MM-DD format
schema:
type: string
format: date
example: '2024-01-31'
- $ref: '#/components/parameters/timeUnit'
responses:
'200':
description: Aggregated energy data
content:
application/json:
schema:
$ref: '#/components/schemas/EnergyResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/timeFrameEnergy:
get:
operationId: getSiteTimeFrameEnergy
summary: Get Site Time Frame Energy
description: Returns on-grid energy for the requested period. In sites with storage or backup, results may differ from the Site Dashboard. Use the Site Energy endpoint for dashboard-matching results. Supports bulk siteId (up to 100).
tags:
- Energy
parameters:
- $ref: '#/components/parameters/siteId'
- name: startDate
in: query
required: true
description: Start date in YYYY-MM-DD format
schema:
type: string
format: date
- name: endDate
in: query
required: true
description: End date in YYYY-MM-DD format
schema:
type: string
format: date
- $ref: '#/components/parameters/timeUnit'
responses:
'200':
description: Time-frame energy data
content:
application/json:
schema:
$ref: '#/components/schemas/EnergyResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/energyDetails:
get:
operationId: getSiteEnergyDetails
summary: Get Site Energy Details
description: Returns detailed energy breakdown by meter type and time unit for the specified period. Maximum date range varies by time unit.
tags:
- Energy
parameters:
- $ref: '#/components/parameters/siteId'
- name: startTime
in: query
required: true
description: Start date-time in "YYYY-MM-DD HH:MM:SS" format
schema:
type: string
example: '2024-01-01 00:00:00'
- name: endTime
in: query
required: true
description: End date-time in "YYYY-MM-DD HH:MM:SS" format
schema:
type: string
example: '2024-01-31 23:59:59'
- $ref: '#/components/parameters/timeUnit'
- $ref: '#/components/parameters/meters'
responses:
'200':
description: Detailed energy breakdown
content:
application/json:
schema:
$ref: '#/components/schemas/EnergyDetailsResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
components:
schemas:
MeterValues:
type: object
properties:
type:
type: string
enum:
- Production
- Consumption
- SelfConsumption
- FeedIn
- Purchased
description: Meter type
values:
type: array
items:
$ref: '#/components/schemas/TimedValue'
TimedValue:
type: object
properties:
date:
type: string
description: Measurement date/time
value:
type:
- number
- 'null'
format: float
description: Measured value (null if no data)
EnergyDetailsResponse:
type: object
properties:
energyDetails:
type: object
properties:
timeUnit:
type: string
unit:
type: string
meters:
type: array
items:
$ref: '#/components/schemas/MeterValues'
ErrorResponse:
type: object
properties:
code:
type: integer
description: HTTP status code
message:
type: string
description: Human-readable error message
EnergyResponse:
type: object
properties:
energy:
type: object
properties:
timeUnit:
type: string
description: Time unit of aggregation
unit:
type: string
description: Energy unit (e.g., Wh)
measuredBy:
type: string
description: Measurement source
values:
type: array
items:
$ref: '#/components/schemas/TimedValue'
parameters:
siteId:
name: siteId
in: path
required: true
description: Unique numeric identifier for the site. Supports comma-separated values for bulk requests (up to 100 site IDs).
schema:
type: string
example: '12345'
meters:
name: meters
in: query
description: Comma-separated list of meter types to include in the response
schema:
type: string
example: Production,Consumption,SelfConsumption,FeedIn,Purchased
timeUnit:
name: timeUnit
in: query
description: Time aggregation unit for energy data
schema:
type: string
enum:
- QUARTER_OF_AN_HOUR
- HOUR
- DAY
- WEEK
- MONTH
- YEAR
default: DAY
responses:
Unauthorized:
description: Missing or invalid API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
NotFound:
description: Site or resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
securitySchemes:
ApiKeyQuery:
type: apiKey
in: query
name: api_key
description: API key generated through the SolarEdge monitoring portal
x-refined-from:
- openapi.yml
- solar-edge-monitoring-api-openapi.yml