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-sites-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 Sites API
x-refined-note:
- x-api-id differs across the merged source definitions and was not carried
version: '1.0'
description: 'Operations tagged Sites across 3 of this provider''s published API definitions: openapi.yml, solar-edge-monitoring-api-openapi.yml, solar-edge-monitoring-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
tags:
- name: Sites
description: Site list and site-level data
paths:
/sites/list:
get:
operationId: getSiteList
summary: Get Site List
description: Returns a paginated list of sites associated with the account token. Sites can be filtered by status and sorted by various properties.
tags:
- Sites
parameters:
- name: size
in: query
description: Number of sites to return per page (max 100)
schema:
type: integer
default: 100
maximum: 100
- name: startIndex
in: query
description: Starting index for pagination
schema:
type: integer
default: 0
- name: searchText
in: query
description: Free-text search across Name, Notes, Email, Country, State, City, Zip, Full address
schema:
type: string
- name: sortProperty
in: query
description: Property to sort results by
schema:
type: string
enum:
- Name
- Country
- State
- City
- Address
- Zip
- Status
- PeakPower
- InstallationDate
- Amount
- MaxSeverity
- CreationTime
- name: sortOrder
in: query
description: Sort order
schema:
type: string
enum:
- ASC
- DESC
default: ASC
- name: status
in: query
description: Comma-separated list of site statuses to filter by, or "All"
schema:
type: string
example: Active,Pending
responses:
'200':
description: Successful response with site list
content:
application/json:
schema:
$ref: '#/components/schemas/SiteListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/TooManyRequests'
security:
- ApiKeyQuery: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/details:
get:
operationId: getSiteDetails
summary: Get Site Details
description: Returns detailed information for a single site including location, configuration, and contact info.
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId'
responses:
'200':
description: Site details
content:
application/json:
schema:
$ref: '#/components/schemas/SiteDetailsResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
security:
- ApiKeyQuery: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/dataPeriod:
get:
operationId: getSiteDataPeriod
summary: Get Site Data Period
description: Returns the site energy production start and end dates (the period for which data is available).
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId'
responses:
'200':
description: Data period for the site
content:
application/json:
schema:
$ref: '#/components/schemas/DataPeriodResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
security:
- ApiKeyQuery: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/overview:
get:
operationId: getSiteOverview
summary: Get Site Overview
description: Returns current site power and summary energy metrics including today, month, and lifetime energy totals as well as revenue where available. Supports comma-separated siteId for bulk requests (up to 100 sites).
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId'
responses:
'200':
description: Site overview with current power and energy summary
content:
application/json:
schema:
$ref: '#/components/schemas/SiteOverviewResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
security:
- ApiKeyQuery: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/image:
get:
operationId: getSiteImage
summary: Get Site Image
description: Returns the site image uploaded by the user.
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId'
- name: maxWidth
in: query
description: Maximum image width in pixels
schema:
type: integer
- name: maxHeight
in: query
description: Maximum image height in pixels
schema:
type: integer
- name: hash
in: query
description: Image hash for cache validation
schema:
type: integer
responses:
'200':
description: Site image binary
content:
image/jpeg:
schema:
type: string
format: binary
image/png:
schema:
type: string
format: binary
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
security:
- ApiKeyQuery: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/installerImage:
get:
operationId: getSiteInstallerImage
summary: Get Site Installer Image
description: Returns the installer logo image for the site.
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId'
responses:
'200':
description: Installer logo image binary
content:
image/jpeg:
schema:
type: string
format: binary
image/png:
schema:
type: string
format: binary
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
security:
- ApiKeyQuery: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production server
/site/{siteId}/energy:
get:
operationId: getSiteEnergy
summary: Site Energy
description: Returns the site energy measurements over a time range at a given resolution.
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId_2'
- $ref: '#/components/parameters/startDate'
- $ref: '#/components/parameters/endDate'
- $ref: '#/components/parameters/timeUnit'
responses:
'200':
$ref: '#/components/responses/OK'
'401':
$ref: '#/components/responses/Unauthorized_2'
'429':
$ref: '#/components/responses/TooManyRequests_2'
security:
- api_key: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production host
/site/{siteId}/timeFrameEnergy:
get:
operationId: getSiteTimeFrameEnergy
summary: Site Energy - Time Period
description: Returns the total energy produced for a given period.
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId_2'
- $ref: '#/components/parameters/startDate'
- $ref: '#/components/parameters/endDate'
responses:
'200':
$ref: '#/components/responses/OK'
'401':
$ref: '#/components/responses/Unauthorized_2'
'429':
$ref: '#/components/responses/TooManyRequests_2'
security:
- api_key: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production host
/site/{siteId}/power:
get:
operationId: getSitePower
summary: Site Power
description: Returns the site power measurements in 15-minute resolution over a time range.
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId_2'
- $ref: '#/components/parameters/startTime'
- $ref: '#/components/parameters/endTime'
responses:
'200':
$ref: '#/components/responses/OK'
'401':
$ref: '#/components/responses/Unauthorized_2'
'429':
$ref: '#/components/responses/TooManyRequests_2'
security:
- api_key: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production host
/site/{siteId}/powerDetails:
get:
operationId: getSitePowerDetails
summary: Site Power - Detailed
description: Returns detailed site power measurements including meters such as consumption and self-consumption.
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId_2'
- $ref: '#/components/parameters/startTime'
- $ref: '#/components/parameters/endTime'
- name: meters
in: query
schema:
type: string
responses:
'200':
$ref: '#/components/responses/OK'
'401':
$ref: '#/components/responses/Unauthorized_2'
'429':
$ref: '#/components/responses/TooManyRequests_2'
security:
- api_key: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production host
/site/{siteId}/energyDetails:
get:
operationId: getSiteEnergyDetails
summary: Site Energy - Detailed
description: Returns detailed site energy measurements including meters such as consumption and self-consumption.
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId_2'
- $ref: '#/components/parameters/startTime'
- $ref: '#/components/parameters/endTime'
- $ref: '#/components/parameters/timeUnit'
- name: meters
in: query
schema:
type: string
responses:
'200':
$ref: '#/components/responses/OK'
'401':
$ref: '#/components/responses/Unauthorized_2'
'429':
$ref: '#/components/responses/TooManyRequests_2'
security:
- api_key: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production host
/site/{siteId}/currentPowerFlow:
get:
operationId: getSiteCurrentPowerFlow
summary: Site Power Flow
description: Retrieves the current power flow between all elements of the site (PV array, load, grid, storage).
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId_2'
responses:
'200':
$ref: '#/components/responses/OK'
'401':
$ref: '#/components/responses/Unauthorized_2'
'429':
$ref: '#/components/responses/TooManyRequests_2'
security:
- api_key: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production host
/site/{siteId}/envBenefits:
get:
operationId: getSiteEnvBenefits
summary: Site Environmental Benefits
description: Returns all environmental benefits based on site energy production (CO2 saved, trees planted, light bulbs).
tags:
- Sites
parameters:
- $ref: '#/components/parameters/siteId_2'
- name: systemUnits
in: query
schema:
type: string
enum:
- Metrics
- Imperial
responses:
'200':
$ref: '#/components/responses/OK'
'401':
$ref: '#/components/responses/Unauthorized_2'
'429':
$ref: '#/components/responses/TooManyRequests_2'
security:
- api_key: []
servers:
- url: https://monitoringapi.solaredge.com
description: SolarEdge Monitoring API production host
components:
schemas:
Location:
type: object
properties:
country:
type: string
state:
type: string
city:
type: string
address:
type: string
address2:
type: string
zip:
type: string
timeZone:
type: string
countryCode:
type: string
stateCode:
type: string
DataPeriodResponse:
type: object
properties:
dataPeriod:
type: object
properties:
startDate:
type: string
format: date
description: First date with energy data (YYYY-MM-DD)
endDate:
type: string
format: date
description: Last date with energy data (YYYY-MM-DD)
SiteOverviewResponse:
type: object
properties:
overview:
type: object
properties:
lastUpdateTime:
type: string
description: Timestamp of last data update
lifeTimeData:
$ref: '#/components/schemas/EnergyWithRevenue'
lastYearData:
$ref: '#/components/schemas/EnergyWithRevenue'
lastMonthData:
$ref: '#/components/schemas/EnergyWithRevenue'
lastDayData:
$ref: '#/components/schemas/EnergyWithRevenue'
currentPower:
type: object
properties:
power:
type: number
format: float
description: Current power production in W
Module:
type: object
properties:
manufacturerName:
type: string
modelName:
type: string
maximumPower:
type: number
temperatureCoef:
type: number
ErrorResponse:
type: object
properties:
code:
type: integer
description: HTTP status code
message:
type: string
description: Human-readable error message
Site:
type: object
properties:
id:
type: integer
description: Unique site identifier
name:
type: string
description: Site name
accountId:
type: integer
description: Account identifier
status:
type: string
enum:
- Active
- Pending
- Disabled
description: Current site status
peakPower:
type: number
format: float
description: Site peak power capacity in kW
lastUpdateTime:
type: string
description: Last update timestamp
installationDate:
type: string
format: date
description: Installation date in YYYY-MM-DD format
ptoDate:
type: string
format: date
description: Permission to operate date
notes:
type: string
description: Site notes
type:
type: string
description: Site type (e.g., Optimizers & Inverters)
location:
$ref: '#/components/schemas/Location'
primaryModule:
$ref: '#/components/schemas/Module'
uris:
type: object
additionalProperties:
type: string
publicSettings:
type: object
properties:
isPublic:
type: boolean
SiteDetailsResponse:
type: object
properties:
details:
$ref: '#/components/schemas/Site'
SiteListResponse:
type: object
properties:
sites:
type: object
properties:
count:
type: integer
description: Total number of sites matching the query
list:
type: array
items:
$ref: '#/components/schemas/Site'
EnergyWithRevenue:
type: object
properties:
energy:
type: number
format: float
description: Energy in Wh
revenue:
type: number
format: float
description: Revenue generated (where applicable)
Problem:
type: object
description: RFC 9457 problem details envelope returned by the SolarEdge Monitoring API on errors.
properties:
type:
type: string
format: uri
title:
type: string
status:
type: integer
detail:
type: string
instance:
type:
- string
- 'null'
properties:
type: object
properties:
traceId:
type: string
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'
startDate:
name: startDate
in: query
required: true
description: Start date in yyyy-MM-dd format.
schema:
type: string
format: date
startIndex:
name: startIndex
in: query
description: The first item index to return (zero-based), for pagination.
schema:
type: integer
default: 0
siteId_2:
name: siteId
in: path
required: true
description: The site identifier.
schema:
type: integer
size:
name: size
in: query
description: The maximum number of items returned in a page (max 100).
schema:
type: integer
default: 100
maximum: 100
endTime:
name: endTime
in: query
required: true
description: End timestamp in yyyy-MM-dd HH:mm:ss format.
schema:
type: string
endDate:
name: endDate
in: query
required: true
description: End date in yyyy-MM-dd format.
schema:
type: string
format: date
timeUnit:
name: timeUnit
in: query
description: Aggregation granularity.
schema:
type: string
enum:
- QUARTER_OF_AN_HOUR
- HOUR
- DAY
- WEEK
- MONTH
- YEAR
startTime:
name: startTime
in: query
required: true
description: Start timestamp in yyyy-MM-dd HH:mm:ss format.
schema:
type: string
responses:
TooManyRequests:
description: Rate limit exceeded. The API allows up to 3 concurrent requests per source IP, and 300 requests per day per account token and per site.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
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'
Forbidden:
description: The account is not permitted to access the requested resource.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Problem'
TooManyRequests_2:
description: The api_key/site daily query quota has been exceeded.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Problem'
Unauthorized_2:
description: Authentication failed (missing or invalid api_key).
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Problem'
example:
type: https://se-api.stoplight.io/docs/monitoring
title: Unauthorized - Authentication Failed
status: 401
detail: Invalid API key
instance: null
properties:
traceId: 6a5f1ad81a5cfa8cd685fc4401bd7770
OK:
description: Successful response.
content:
application/json:
schema:
type: object
securitySchemes:
ApiKeyQuery:
type: apiKey
in: query
name: api_key
description: API key generated through the SolarEdge monitoring portal
api_key:
type: apiKey
in: query
name: api_key
description: API key generated in the SolarEdge monitoring platform under Admin > Site Access > API Access. Passed as the api_key query parameter on every request.
x-refined-from:
- openapi.yml
- solar-edge-monitoring-api-openapi.yml
- solar-edge-monitoring-openapi.yml