Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/solar-edge-power-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
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 Specification
openapi: 3.2.0
info:
title: Solar Edge Power 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 Power 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: Power
description: Power measurements and power flow
paths:
/site/{siteId}/power:
get:
operationId: getSitePower
summary: Get Site Power
description: Returns power measurements at 15-minute resolution for the specified time frame. Maximum date range is 1 month (31 days).
tags:
- Power
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'
responses:
'200':
description: Power measurements at 15-minute intervals
content:
application/json:
schema:
$ref: '#/components/schemas/PowerResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/powerDetails:
get:
operationId: getSitePowerDetails
summary: Get Site Power Details
description: Returns detailed power measurements including individual meter types (production, consumption, self-consumption, feed-in, purchased). Maximum date range is 1 month (31 days).
tags:
- Power
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
- name: endTime
in: query
required: true
description: End date-time in "YYYY-MM-DD HH:MM:SS" format
schema:
type: string
- $ref: '#/components/parameters/meters'
responses:
'200':
description: Detailed power measurements
content:
application/json:
schema:
$ref: '#/components/schemas/PowerDetailsResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/currentPowerFlow:
get:
operationId: getSiteCurrentPowerFlow
summary: Get Current Power Flow
description: Returns the current power flow for a site, showing who is producing, consuming, and exporting power (PV, Load, Grid, Storage).
tags:
- Power
parameters:
- $ref: '#/components/parameters/siteId'
responses:
'200':
description: Current power flow data
content:
application/json:
schema:
$ref: '#/components/schemas/CurrentPowerFlowResponse'
'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)
PowerDetailsResponse:
type: object
properties:
powerDetails:
type: object
properties:
timeUnit:
type: string
unit:
type: string
meters:
type: array
items:
$ref: '#/components/schemas/MeterValues'
StorageFlowNode:
allOf:
- $ref: '#/components/schemas/PowerFlowNode'
- type: object
properties:
chargeLevel:
type: number
format: float
description: Battery charge level percentage
critical:
type: boolean
description: Whether the battery is in a critical state
CurrentPowerFlowResponse:
type: object
properties:
siteCurrentPowerFlow:
type: object
properties:
updateRefreshRate:
type: integer
description: Suggested client refresh rate in seconds
unit:
type: string
description: Power unit (e.g., kW)
connections:
type: array
description: List of active power flow connections
items:
type: object
properties:
from:
type: string
description: Source node (PV, LOAD, GRID, STORAGE)
to:
type: string
description: Destination node (PV, LOAD, GRID, STORAGE)
GRID:
$ref: '#/components/schemas/PowerFlowNode'
LOAD:
$ref: '#/components/schemas/PowerFlowNode'
PV:
$ref: '#/components/schemas/PowerFlowNode'
STORAGE:
$ref: '#/components/schemas/StorageFlowNode'
PowerFlowNode:
type: object
properties:
status:
type: string
description: Node status (Active, Idle, Disabled)
currentPower:
type: number
format: float
description: Current power in the specified unit
ErrorResponse:
type: object
properties:
code:
type: integer
description: HTTP status code
message:
type: string
description: Human-readable error message
PowerResponse:
type: object
properties:
power:
type: object
properties:
timeUnit:
type: string
unit:
type: string
measuredBy:
type: string
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
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