Last Update: January 2019
Last Update: January 2019
SolarEdge API
SolarEdge API
Contents
SolarEdge API ...................................................................................................................................................................................... 2
Contents .......................................................................................................................................................................................... 2
General................................................................................................................................................................................................ 4
Purpose and scope .......................................................................................................................................................................... 4
Acronyms and abbreviations .......................................................................................................................................................... 4
Revision History .............................................................................................................................................................................. 4
Introduction ........................................................................................................................................................................................ 4
Technical Information ..................................................................................................................................................................... 5
API Access ....................................................................................................................................................................................... 5
Language and Time Encoding ......................................................................................................................................................... 6
Request Format............................................................................................................................................................................... 6
Response Formats ........................................................................................................................................................................... 6
JSONP Support ................................................................................................................................................................................ 6
Error Handling ................................................................................................................................................................................. 7
Usage Limitations ............................................................................................................................................................................ 7
Specific API Usage Limitations .................................................................................................................................................... 7
Daily Limitation ........................................................................................................................................................................... 7
Concurrency Limitation ............................................................................................................................................................... 7
Bulk Use ...................................................................................................................................................................................... 7
API Description.................................................................................................................................................................................... 8
Site Data API.................................................................................................................................................................................... 8
Site List ........................................................................................................................................................................................ 8
Site Details ................................................................................................................................................................................ 11
Site Data: Start and End Dates .................................................................................................................................................. 12
Site Data: Bulk Version .............................................................................................................................................................. 13
Site Energy ................................................................................................................................................................................ 13
Site Energy: Bulk Version .......................................................................................................................................................... 14
Site Energy – Time Period ......................................................................................................................................................... 15
Site Energy – Time Period: Bulk Version ................................................................................................................................... 16
Site Power ................................................................................................................................................................................. 16
Site Power: Bulk version ........................................................................................................................................................... 18
Site Overview ............................................................................................................................................................................ 19
Site Overview: Bulk Version ................................................................................................................................................... 20
Site Power - Detailed ................................................................................................................................................................ 21
Site Energy - Detailed ................................................................................................................................................................ 23
2
SolarEdge API
3
General
General
Abbreviation Meaning
API Application Programing Interface
WS Web Services
REST Representational State Transfer
CSV Comma Separated Values
JSON JavaScript Object Notation
XML Extensible Mark-up Language
Revision History
▪ January 2019 –
• Addition of Meters API
• Updated Storage Information API and Inverter Technical Data API
▪ February 2018 - addition of disable/enable site access by associated account
▪ September 2017 – various parameter updates
▪ June 2016 - addition of StorEdge profiles API
▪ April 2016- addition of status filter for alerts API
Introduction
The SolarEdge API allows other software applications to access its monitoring system database for data analysis purposes, fleet
management, displaying system data in other applications, etc.
The following is a list of available APIs:
Site Data: Start and End Dates The site energy production start and end dates
Site Overview Site current power, energy production (today, this month, lifetime) and lifetime revenue
Detailed site power measurements including meters such as consumption, export (feed-in),
Site Power
import (purchase), etc.
Detailed site energy measurements including meters such as consumption, export (feed-in),
Site Energy
import (purchase), etc.
4
Introduction
Installer Logo Image The installer logo image as uploaded to the server.
Components List List of inverters with name, model, manufacturer, serial number and status
Information about the SolarEdge equipment, including: inverters/SMIs, batteries, meters,
Inventory
gateways and sensors
Inverter Technical Data Technical data on the inverter performance for a requested period of time
Account List API The account details and list of all sub-accounts
Get Sensor Data The measurements of the sensors installed in the site
Information about each meter in the site including: lifetime energy, metadata and the device to
Get Meters Data
which it’s connected to.
API Versions The current and supported version numbers
Technical Information
The SolarEdge API is built as RESTful service:
• It uses predictable, resource oriented URLs
• It has built-in HTTP capabilities for passing parameters via the API
• It responds with standard HTTP codes
• It can return results in XML, JSON (including JSONP support) or CSV format.
API Access
▪ The API can be accessed via HTTPS protocol only. SolarEdge monitoring server supports both HTTPS/1.0 and HTTPS/1.1
protocols.
▪ All APIs are secured via an access token: every access to the API requires a valid token as a URL parameter named api_key.
For example: api_key= L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
▪ An API key can be generated to enable access to specific sites (via Site API key) or to all sites within a specific account (via
Account API key).
1 Acknowledge reading and agreeing to the SolarEdge API Terms & Conditions.
2 Click Generate API key.
3 Copy the key.
4 Click Save.
5 Use the key in all API requests
▪ When using special characters or spaces in URL, they must be url encoded.
▪ The monitoring server data can be in different languages therefore data is retrieved using UTF-8.
▪ Date and time formats in all APIs are:
• Date and time: YYYY-MM-DD hh:mm:ss
• Date only: YYYY-MM-DD
▪ Dates are always in the time zone of the site.
▪ All physical measures are in the metric units system.
▪ Temperature values are always in Celsius degrees.
Request Format
The request format and parameters are specified per each API, and conform to the HTTP and REST standards.
Parameter order in the request is not significant.
Response Formats
The user can request data in the following formats:
• JSON (application/json)
• XML(application/xml)
• CSV (text/csv).
See specific APIs in the next sections for supported format in each API.
If a specific format is not requested, the data will be retrieved via JSON. If the requested format is invalid, the system will
generate HTTP error "Media not supported".
The API user can request the response format in one of the methods below. The system handles the response format as follows:
• URL format Parameter – …&format=application/json
• Path extension – the name of the API will be followed by the requested format
name ../details.json&…
• HTTP header – based on ‘Accept’ header e.g. Accept application/json
JSONP Support
The API supports JSONP calls by appending a callback parameter with the name of a callback method at the end of the request.
As JSONP content type is application/javascript, make sure the client sends this content type in the Accept header, otherwise
HTTP 406 error may occur.
6
Introduction
▪ JSONP:
• Request:
http://monitoringapi.solaredge.com/1/details.json?api_key=[your_api_key]&callback=myFunction
• Response body:
myFunction({"details":{..}});
Error Handling
The API system uses standard HTTP error codes for reporting errors that occurred while calling the API. The monitoring server
API supports standard HTTP error codes, for example: if the user access is of an unknown resource, an HTTP 404 error will be
returned.
Usage Limitations
Usage limitations are enforced to prevent abuse of the monitoring server API, and these limitations may be changed in the
future without notice. Additionally, a request rate limit is applied to prevent abuse of the service. If you exceed the limitations,
an error message appears in the monitoring server API. If the limitation is further exceeded, the system may temporarily be
nonoperational, or your access to the monitoring server API may be blocked.
Daily Limitation
Use of the monitoring server API is subject to a query limit of 300 requests for a specific account token and a parallel query limit
of 300 requests for each specific site ID from the same source IP.
APIs that do not have a specific ID (e.g. Site List, Account List) will be counted as part of the account query limit.
Any additional site or account level request will result in HTTP 429 error – too many requests.
Concurrency Limitation
The monitoring server API allows up to 3 concurrent API calls from the same source IP. Any additional concurrent calls will return
HTTP 429 error – too many requests.
To execute APIs concurrently without exceeding the above limitation, it is the client responsibility to implement a throttling
mechanism on the client side.
Bulk Use
Some of the APIs offer a bulk form, that is, they take multiple site IDs as an input. The list is separated by a comma and should
contain up to 100 site IDs.
A bulk call for multiple sites consumes 1 call from the daily quota allowed for each of the sites included in the call.
7
API Description
API Description
Site List
Description: Returns a list of sites related to the given token, which is the account api_key. This API accepts parameters for
convenient search, sort and pagination.
URL: /sites/list
Example URL (with all options):
https://monitoringapi.solaredge.com/sites/list?size=5&searchText=Lyon&sortProperty=name&sortOrder=ASC&api_key=L4QLV
Q1LOKCQX2193VSEICXW61NP6B1O
Method: GET
Formats: JSON, XML and CSV
▪ Request: The following are parameters to include in the request.
8
API Description
▪ Response: The returned data is the site list, including the sites that match the given search criteria. For each entry, the
following information is displayed:
• id - the site ID
• name - the site name
• account id -the account this site belongs to
• status - the site status (see Site Status on page 53)
• peak power - site peak power
• CURRENCY
• installationDate – site installation date (format: yyyy-MM-DD hh:mm:ss )
• ptoDate – permission to operate date
• notes
• type – site type (see Site Type on page 53)
• location - includes country, state, city, address, secondary address, time zone and zip
• alertQuantity - number of open alerts in this site *
• alertSeverity - the highest alert severity in this site *
• publicSettings - includes if this site is public and its public name
• * Alert information is only available when using an API_KEY generated by an account. API_KEY
generated at the site level does not return this information.
•
•
▪ Example: JSON output:
{
"Sites":{
"count":1567,
"list":[{
"id":1,
"name":"Test",
"accountId":0,
"status":"Active",
"peakPower":10.0,
"currency":"EUR",
"installationDate":"2012-06-08 00:00:00",
“ptoDate”: “2017-05-11”,
"notes":"test notes",
"location":{
"country":"the country",
"state":"the state",
"city":"the city",
"address":"the address",
"address2":"the address2",
"zip":"00000",
"timeZone":"GMT"
9
API Description
},
"alertQuantity":0,
"alertSeverity":"NONE",
"uris":{
},
"publicSettings":{
"isPublic":true
},
"id":2,
"name":"Test",
"accountId":0,
"status":"Active",
"peakPower":10.0,
"currency":"EUR",
"installationDate":"2012-06-08 00:00:00",
“ptoDate”: “2017-05-11”,
"notes":"test notes",
"location":{
"country":"the country",
"state":"the state",
"city":"the city",
"address":"the address",
"address2":"the address2",
"zip":"00000",
"timeZone":"GMT"
},
"alertQuantity":0,
"alertSeverity":"NONE",
"uris":{
},
"publicSettings":{
"isPublic":true
10
API Description
}]
}}}]}}
Site Details
Description: Displays the site details, such as name, location, status, etc.
URL: /site/{siteId}/details
Example URL: https://monitoringapi.solaredge.com/site/1/details?api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
Method: GET
Accepted formats: JSON and XML
▪ Request: The following parameter is included in the request:
Parameter Type Mandatory description
siteId Integer Yes The site identifier
"details":{
"id":0,
"name":"site name",
"accountId":0,
"status":"Active",
"peakPower":9.8,
"currency":"EUR",
"installationDate":"2012-08-16 00:00:00",
“ptoDate”: “2017-05-11”,
11
API Description
"notes":"my notes",
"location":{
"country":"my country",
"state":"my state",
"city":"my city",
"address":"my address",
"address2":"",
"zip":"0000",
"timeZone":"GMT"
},
"alertQuantity":0,
"alertSeverity":"NONE",
"uris":{
},
"publicSettings":{
"name":null,
"isPublic":false
▪ Response: The returned data includes <start, end> dates of the requested site. In case this site is not transmitting, the
response is “null”.
▪ Example: JSON output example:
{
"dataPeriod":{
"startDate":"2013-05-05 12:00:00",
"endDate":"2013-05-28 23:59:59"
}
For non-transmitting sites:
{
12
API Description
"dataPeriod":{
"startDate":null,
"endDate":null
Site Energy
Description: Return the site energy measurements.
URL: /site/{siteId}/ energy
Example URL: https://monitoringapi.solaredge.com/site/1/energy?timeUnit=DAY&endDate=2013-05-30&startDate=2013-05-
01&api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
Method: GET
Accepted formats: JSON, XML and CSV
▪ Usage limitation: This API is limited to one year when using timeUnit=DAY (i.e., daily resolution) and to one month when
using timeUnit=QUARTER_OF_AN_HOUR or timeUnit=HOUR. This means that the period between endTime and startTime
should not exceed one year or one month respectively. If the period is longer, the system will generate error 403 with
proper description.
▪ Request: The following are parameters to include in the request:
Parameter Type Mandatory Description
siteId Integer Yes The site identifier
startDate String Yes The start date to return energy measurement
endDate String Yes The end date return energy measurement
timeUnit String Aggregation granularity, see Time Unit on page 53.
Default : DAY.
Allowed values are: QUARTER_OF_AN_HOUR,
HOUR, DAY, WEEK, MONTH, YEAR
13
API Description
▪ Response: The response includes the requested time unit, the units of measurement (e.g. Wh), and the pairs of date and
energy for every date ({"date":"2013-06-01 00:00:00","value":null}).
The date is calculated based on the time zone of the site. “null” means there is no data for that time.
▪ Example: JSON output:
{
"energy":{
"timeUnit":"DAY",
"unit":"Wh",
"values":[{
"date":"2013-06-01 00:00:00",
"value":null
},
"date":"2013-06-02 00:00:00",
"value":null
},
"date":"2013-06-03 00:00:00",
"value":null
},
"date":"2013-06-04 00:00:00",
"value":67313.24
}]
14
API Description
"date": "2013-06-01 00:00:00",
"value": null
},
{
"date": "2013-06-02 00:00:00",
"value": null
},
{
"date": "2013-06-03 00:00:00",
"value": null
},
{
"date": "2013-06-04 00:00:00",
"value": 67313.24
}]
},
{
"id": 4,
"values": [{
"date": "2013-06-01 00:00:00",
"value": null
},
{
"date": "2013-06-02 00:00:00",
"value": null
},
{
"date": "2013-06-03 00:00:00",
"value": null
},
{
"date": "2013-06-04 00:00:00",
"value": 67313.24
}]
}]
}
}
▪ Response: The response includes the energy summary for the given time period with units of measurement (e.g. Wh)
The date is calculated based on the time zone where the site is located.
▪ Example: JSON output:
{
"timeFrameEnergy":{
"energy":761985.8,
"unit":"Wh"
15
API Description
Site Power
Description: Return the site power measurements in 15 minutes resolution.
URL: /site/{siteId}/ power
Example URL: https://monitoringapi.solaredge.com/site/1/power?startTime=2013-05-5%2011:00:00&endTime=2013-05-
05%2013:00:00&api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
Method: GET
Accepted formats: JSON, XML and CSV
▪ Usage limitation: This API is limited to one-month period. This means that the period between endTime and startTime
should not exceed one month. If the period is longer, the system will generate error 403 with proper description.
▪ Request: The following are parameters to include in the request:
▪ Response: The response includes the time unit (i.e. QUARTER_OF_AN_HOUR), the measurement units (e.g. Watt) and the
pairs of date and power (in Watts) for every date ({"date":"2013-06-04 14:00:00","value":7722.3896})
16
API Description
The date is calculated in ticks starting 1-1-1970 and presented based on the time zone of the site. “null” means there is no
data for that time.
▪ Example: JSON output:
{
"power":{
"timeUnit":"QUARTER_OF_AN_HOUR",
"unit":"W",
"values":[{
"date":"2013-06-04 11:00:00",
"value":7987.03
},
"date":"2013-06-04 11:15:00",
"value":9710.121
},
"date":"2013-06-04 11:30:00",
"value":8803.309
},
"date":"2013-06-04 11:45:00",
"value":9000.743
},
"date":"2013-06-04 12:00:00",
"value":6492.2075
},
"date":"2013-06-04 12:15:00",
"value":7395.716
},
"date":"2013-06-04 12:30:00",
"value":8855.878
},
"date":"2013-06-04 12:45:00",
"value":6551.6655
},
"date":"2013-06-04 13:00:00",
"value":8114.938
17
API Description
},
"date":"2013-06-04 13:15:00",
"value":7466.171
},
"date":"2013-06-04 13:30:00",
"value":6595.561
},
"date":"2013-06-04 13:45:00",
"value":8824.195
},
"date":"2013-06-04 14:00:00",
"value":7722.3896
}]
18
API Description
"date": "2013-06-04 11:45:00",
"value": 9000.743
},
{
"date": "2013-06-04 12:00:00",
"value": 6492.207
}]
},
{
"id": 4,
"values": [{
"date": "2013-06-04 11:00:00",
"value": 7987.03
},
{
"date": "2013-06-04 11:15:00",
"value": 9710.121
},
{
"date": "2013-06-04 11:30:00",
"value": 8803.309
},
{
"date": "2013-06-04 11:45:00",
"value": 9000.743
},
{
"date": "2013-06-04 12:00:00",
"value": 6492.2075
}]
}]
}
}
Site Overview
Description: Display the site overview data.
URL: /site/{siteId}/ overview
Example URL: https://monitoringapi.solaredge.com/ site/{siteId}/overview?api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
Method: GET
Accepted formats: JSON and XML
▪ Response: The response includes the site current power, daily energy, monthly energy, yearly energy and life time energy.
▪ Example: JSON output:
{
"overview":{
"lastUpdateTime":"2013-10-01 02:37:47",
"lifeTimeData":{
"energy":761985.75,
"revenue":946.13104
},
"lastYearData":{
"energy":761985.8,
"revenue":0.0
},
19
API Description
"lastMonthData":{
"energy":492736.7,
"revenue":0.0
},
"lastDayData":{
"energy":0.0,
"revenue":0.0
},
"currentPower":{
"power":0.0
20
API Description
"revenue": 0.0
},
"lastDayData": {
"energy": 0.0,
"revenue": 0.0
},
"currentPower": {
"power": 0.0
}
}]
}
}
▪ Example URL:
https://monitoringapi.solaredge.com/site/1/powerDetails?meters=PRODUCTION,CONSUMPTION&startTime=2015-11-
21%2011:00:00&endTime=2015-11-22%2013:00:00&api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
▪ Response: The response provides 15 minute resolution data series for each of the requested meters.
The response includes the following:
powerDetails - Root element
• timeUnit - The time unit of the data (i.e. QUARTER_OF_AN_HOUR)
• unit - Power measurement units (e.g. Watt)
• meters - List of meters. For each meter:
• type - The meter type (Production/Consumption/SelfConsumption/FeedIn (export)/Purchased
(import))
• values - Pairs of date and power for every date
({"date":"2013-06-04 14:00:00" , "value":7722.3896})
For dates in which no data exists the value will be committed
▪ Sample response: A sample response for a call such as:
https://monitoringapi.solaredge.com/site/1/powerDetails?startTime=2015-11-21%2011:00:00&endTime=2015-11-
21%2011:30:00&api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
{
"powerDetails": {
"timeUnit": "QUARTER_OF_AN_HOUR",
"unit": "W",
21
API Description
"meters": [
{
"type": "Consumption",
"values": [
{
"date": "2015-11-21 11:00:00",
"value": 619.8288
},
{
"date": "2015-11-21 11:15:00",
"value": 474.87576
},
{
"date": "2015-11-21 11:30:00",
"value": 404.7733
}
]
},
{
"type": "Purchased",
"values": [
{
"date": "2015-11-21 11:00:00",
"value": 619.8288
},
{
"date": "2015-11-21 11:15:00",
"value": 474.87576
},
{
"date": "2015-11-21 11:30:00",
"value": 404.7733
}
]
},
{
"type": "Production",
"values": [
{
"date": "2015-11-21 11:00:00",
"value": 0
},
{
"date": "2015-11-21 11:15:00",
"value": 0
},
{
"date": "2015-11-21 11:30:00",
"value": 0
}
]
},
{
"type": "SelfConsumption",
"values": [
{
"date": "2015-11-21 11:00:00",
"value": 0
},
{
"date": "2015-11-21 11:15:00",
"value": 0
},
{
"date": "2015-11-21 11:30:00",
"value": 0
}
]
},
{
"type": "FeedIn",
"values": [
{
"date": "2015-11-21 11:00:00",
"value": 0
},
{
"date": "2015-11-21 11:15:00",
"value": 0
},
{
22
API Description
"date": "2015-11-21 11:30:00",
"value": 0
}
]
}
]
}
}
23
API Description
• values - Pairs of date and power for every date ({"date":"2013-06-04 14:00:00" ,
"value":7722.3896}).
For dates in which no data exists the value will be committed (see sample)
▪ Sample response: A sample response for a call such as:
https://monitoringapi.solaredge.com/site/1/energyDetails?meters=PRODUCTION,CONSUMPTION&timeUnit=WEEK&startTi
me=2015-10-21%2011:00:00&endTime=2015-11-21%2011:30:00&api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
{
"energyDetails": {
"timeUnit": "WEEK",
"unit": "Wh",
"meters": [
{
"type": "Production",
"values": [
{
"date": "2015-10-19 00:00:00"
},
{
"date": "2015-10-26 00:00:00"
},
{
"date": "2015-11-02 00:00:00"
},
{
"date": "2015-11-09 00:00:00"
},
{
"date": "2015-11-16 00:00:00",
"value": 2953
}
]
},
{
"type": "Consumption",
"values": [
{
"date": "2015-10-19 00:00:00"
},
{
"date": "2015-10-26 00:00:00"
},
{
"date": "2015-11-02 00:00:00"
},
{
"date": "2015-11-09 00:00:00"
},
{
"date": "2015-11-16 00:00:00",
"value": 29885
}
]
}
]
}
}
▪ Example URL:
https://monitoringapi.solaredge.com/site/1/currentPowerFlow?api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
24
API Description
▪ Response: The response returns power flow for each of the elements in the system and their state.
In case the site does not support this information, the response should be an empty object.
Otherwise, the response includes the following:
• siteCurrentPowerFlow - Root element
• unit - The measurement units (e.g. Watt)
• connections - A table including all the relationships between the elements, and the power flow
directions (producing element and consuming element)
• from element - The element providing power
• to element - The element consuming power
• A list of elements - Element per entity type in the specific site
• GRID - always included in response
• LOAD - always included in response
• PV - included if the site has a PV array (measurement of PV produced power)
• STORAGE - included if the site has storage installed and enabled
• Parameters for each element:
▪ For all included elements, the following parameters are provided:
o status - The current status of the element (Active / Idle
/ Disabled)
o currentPower - The current power of the element. All
numbers are positive; power direction is determined by the
“connections” section above:
▪ For STORAGE - Check the “connection” section for
the direction. From storage to load = discharge. From
PV to storage or from load to storage = charge.
▪ For GRID - Check the “connection” section for the
direction. From grid to load = import (purchase),
from load to grid = export (feed-in).
▪ For Storage, the following additional properties are included:
o chargeLevel - The accumulated state of energy (% of charge)
for all batteries
o critical- If the accumulated storage charge level drops below a
configurable level (currently 10%), this flag is returned
o timeLeft - In Backup mode (GRID is Disabled), this property is
returned to specify the time left before the storage energy
runs out (estimated according to current load level).
▪ Sample response:
{
"siteCurrentPowerFlow": {
"unit": "W",
"connections": [
{
"from": "GRID",
"to": "Load"
}
],
"GRID": {
"status": "Active",
"currentPower": 3435.77978515625
},
"LOAD": {
"status": "Active",
"currentPower": 3435.77978515625
},
"PV": {
"status": "Idle",
"currentPower": 0
},
25
API Description
"STORAGE": {
"status": "Idle",
"currentPower": 0,
"chargeLevel": 27,
"critical": false
}
}
}
Storage Information
Description: Get detailed storage information from batteries: the state of energy, power and lifetime energy.
Note: Applicable to systems with batteries.
URL: /site/{siteId}/storageData
Method: GET
Accepted response formats: JSON (default), XML
▪ Usage limitation: This API is limited to one-week period.
Specifying a period that is longer than 7 days will generate error 403 with proper description.
▪ Parameters:
Parameter Type Mandatory Description
siteId number Yes The site identifier
startTime String Yes Storage power measured start time in yyyy-MM-DD hh:mm:ss format
endTime String Yes Storage power measured end time in yyyy-MM-DD hh:mm:ss format
serials Comma No Return data only for specific battery serial numbers; the list is comma
separated list of separated.
Strings If omitted, the response includes all the batteries in the site
26
API Description
"storageData": {
"batteryCount": 1,
"batteries": [
"nameplate": 1,
"serialNumber": "BFA",
"telemetries": [
"power": 12,
"batteryState": 3,
"lifeTimeEnergyCharged": 6
"lifeTimeEnergyDischarged": 6,
“fullPackEnergyAvailable”: 8950,
“internalTemp”: 38,
“ACGridCharging”: 234
},
"power": 12,
"batteryState": 3,
"lifeTimeEnergyCharged": 6,
"lifeTimeEnergyDischarged": 6,
“fullPackEnergyAvailable”: 8950,
“internalTemp”: 38,
27
API Description
“ACGridCharging”: 234
},
"power": 12,
"batteryState": 3,
"lifeTimeEnergyCharged": 6,
"lifeTimeEnergyDischarged": 6,
“fullPackEnergyAvailable”: 8950,
“internalTemp”: 38,
“ACGridCharging”: 234
},
"power": 12,
"batteryState": 3,
"lifeTimeEnergyCharged": 6,
"lifeTimeEnergyDischarged": 6,
“fullPackEnergyAvailable”: 8950,
“internalTemp”: 38,
“ACGridCharging”: 234
}
Disclaimers:
1. As LG battery does not provide lifetime charge/discharge data, the monitoring system aggregates the delta
charge/discharge values. In cases where telemetries containing delta energy values are lost or not sent, the calculated
lifetime energy values will be incomplete. Values provided are not revenue grade.
2. AC coupling is not supported with 3rd party inverters.
Site Image
Description: Display the site image as uploaded by the user.
URL: /site/{siteId}/siteImage/{name}
Example URL:
https://monitoringapi.solaredge.com/site/1/siteImage/myname.jpg?hash=123456789&api_key=L4QLVQ1LOKCQX2193VSEICXW
61NP6B1O
Method: GET
28
API Description
▪ Performance: The image element returns with a hash element, which is consistent as long as the image is not changed.
When executing the Site Image API while using the hash element, the server matches the image hash and the hash sent in
the URL. If a match is found, the API returns an HTTP 304 code. In case the image hash that appears in the URL is different
than the one stored in the server, the image will be downloaded.
When using the maxWidth and MaxHeight parameters, the hash element will be ignored.
▪ Image sizes: By default, the API returns the same image that was uploaded to the monitoring portal. If an image in a
different scale is required, the API supports it via the maxWidth and maxHeight parameters. The system will scale the
image while keeping the aspect ratio of the original image, so the returned image will be smaller.
▪ Request: The following are parameters to include in the request:
▪ Response: Returns the list of environmental benefits associated with the site energy production:
• gasEmissionSaved: quantity of CO2 emissions that would have been generated by an equivalent
fossil fuel system
• treesPlanted: equivalent planting of new trees for reducing CO2 levels
• lightBulbs: number of light bulbs that could have been powered by the site for a day
29
API Description
▪ Sample response:
For Imperial:
{
"envBenefits": {
"gasEmissionSaved": {
"units": "Lb",
"co2": 1486.63,
"so2": 1926.55,
"nox": 614.37
},
"treesPlanted": 2.2555082200000003,
"lightBulbs": 5217.4604
}
}
For Metrics:
{
"envBenefits": {
"gasEmissionSaved": {
"units": "Kg",
"co2": 674.93066,
"so2": 874.65515,
"nox": 278.92545
},
"treesPlanted": 2.2555082200000003,
"lightBulbs": 5217.4604
}
}
30
API Description
Components List
Description: Return a list of inverters/SMIs in the specific site.
URL: /equipment/{siteId}/list
Example URL (with all options):
https://monitoringapi.solaredge.com/equipment/2/list?api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
Method: GET
Accepted formats: JSON, XML and CSV
▪ Request: The following parameter is included in the request:
▪ Response: The response includes a list of inverters/SMIs with their name, model, manufacturer and serial number.
• name – the inverter/SMI name
• manufacturer – the equipment manufacturer e.g. SolarEdge
• model – the inverter/SMI model e.g. SE16K
• serialNumber – the equipment short serial number
▪ Example: JSON output:
{
"list":[{
"name":"Inverter 1",
"manufacturer":"SolarEdge",
"model":"SE16K",
"serialNumber":"12345678-00"
},
"name":"Inverter 1",
"manufacturer":"SolarEdge",
"model":"SE16K",
"serialNumber":"12345678-00"
},
"name":"Inverter 1",
"manufacturer":"SolarEdge",
"model":"SE16K",
"serialNumber":"12345678-00"
},
31
API Description
"name":"Inverter 1",
"manufacturer":"SolarEdge",
"model":"SE16K",
"serialNumber":"12345678-65"
}]
Inventory
Description: Return the inventory of SolarEdge equipment in the site, including inverters/SMIs, batteries, meters, gateways and
sensors.
URL: /site/{siteId}/inventory
Example URL (with all options):
https://monitoringapi.solaredge.com/site/2/inventory?api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
Method: GET
Accepted formats: JSON, XML
▪ Request: The following parameter is included in the request:
32
API Description
"Inventory":{
"meters":[
"name":"Production Meter",
"manufacturer":"WattNode",
33
API Description
"model":"WNC-3Y-480-MB",
"firmwareVersion":"0013",
"connectedSolaredgeDeviceSN":"12345678-00",
"type":"Production",
"form":"physical"
}],
"sensors":[
"connectedSolaredgeDeviceSN":"12345678-00",
"id":"SensorDirectIrradiance",
"connectedTo":"Gateway 1",
"category":"IRRADIANCE",
"type":"Direct irradiance"
},
"connectedSolaredgeDeviceSN":"12345678-00",
"id":"SensorPlaneOfArrayIrradiance",
"connectedTo":"Gateway 1",
"category":"IRRADIANCE",
}],
"gateways":[
"name":"Gateway 1",
"firmwareVersion":"2.956.0",
"SN":"12345678-00"
}],
"batteries":[
"name":"Battery 1.1",
"manufacturer":"NAME",
"model":"10KWh",
"firmwareVersion":"2.0",
"connectedInverterSn":"12345678-01",
"nameplateCapacity":6400.0,
"SN":"T123456789"
}],
"inverters":[
"name":"Inverter 1",
"manufacturer":"SolarEdge",
34
API Description
"model":"SE20K",
"firmwareVersion":"2.19.233",
"SN":"12345678-01",
"connectedOptimizers":76
},
"name":"Inverter 2",
"manufacturer":"SolarEdge",
"model":"SE20K",
"firmwareVersion":"2.19.233",
"SN":"12345678-02",
"connectedOptimizers":76
}]
▪ Response: The response includes technical parameters as for the inverter’s performance (e.g., voltage, current, active
power etc.), inverter type (1ph or 3ph), and software version. If an attribute is not supported based on the inverter version
or type it will be omitted from the response.
Original name Comment Data divided per phase
timestamp no
AC current yes
AC voltage yes
AC frequency yes
QRef yes
CosPhi yes
Total Active Power no
apparentPower Supported starting communication yes
board version 2.474
35
API Description
▪ Example:
{
"data":{
"count":2,
"telemetries":[{
36
API Description
“threePhaseInverterTelemetry”:[{
"date":"2013-06-04 11:00:00",
"totalActivePower":null,
"dcVoltage":46.9757,
“groundFaultResistance”:6672.34,
“powerLimit”:78.4159,
“totalEnergy”:1.26533E7,
“temperature”:54.8134,
“inverterMode”:MPPT,
“operationMode”:0
"L1Data":{
"acCurrent":22.653,
"acVoltage":11.6201,
"acFrequency":41.3468,
“apparentPower”:1964.0,
“activePower”:1954.0,
“reactivePower”:-89.0,
“cosPhi”:1.0
“vL1To2”:394.312,
“vL2To3”:393.781,
“vL3To1”:392.5,
"L2Data":{
"acCurrent":22.653,
"acVoltage":11.6201,
"acFrequency":41.3468,
“apparentPower”:1964.0,
“activePower”:1954.0,
“reactivePower”:-89.0,
“cosPhi”:1.0
"L3Data":{
"acCurrent":22.653,
"acVoltage":11.6201,
"acFrequency":41.3468,
“apparentPower”:1964.0,
“activePower”:1954.0,
“reactivePower”:-89.0,
“cosPhi”:1.0
}],
37
API Description
“threePhaseInverterTelemetry”:[{
"date":"2013-06-04 11:05:00",
"totalActivePower":null,
"dcVoltage":46.9757,
“groundFaultResistance”:6672.34,
“powerLimit”:78.4159,
“totalEnergy”:1.26533E7,
“temperature”:54.8134,
“inverterMode”:MPPT,
“operationMode”:0
"L1Data":{
"acCurrent":22.653,
"acVoltage":11.6201,
"acFrequency":41.3468,
“apparentPower”:1964.0,
“activePower”:1954.0,
“reactivePower”:-89.0,
“cosPhi”:1.0
“vL1To2”:394.312,
“vL2To3”:393.781,
“vL3To1”:392.5,
"L2Data":{
"acCurrent":22.653,
"acVoltage":11.6201,
"acFrequency":41.3468,
“apparentPower”:1964.0,
“activePower”:1954.0,
“reactivePower”:-89.0,
“cosPhi”:1.0
"L3Data":{
"acCurrent":22.653,
"acVoltage":11.6201,
"acFrequency":41.3468,
“apparentPower”:1964.0,
“activePower”:1954.0,
“reactivePower”:-89.0,
“cosPhi”:1.0
}],
38
API Description
}]
▪ Response: The response includes a list of replacements by the specified equipment component, ordered-by date. The list
contains the component serial number, model and date of replacement.
• count – number of replacements of specified component
• list – list of replacements where each replacement contains:
• serialNumber – equipment short serial number
• partNumber – inverter/battery/optimizer/gateway model
• date – date of replacement of that equipment component
▪ Example: JSON output:
{
"ChangeLog": {
"count": 1,
"list": {
"serialNumber": "1234567-3A",
"partNumber": null,
"date": "2017-08-30"
}
}
}
39
API Description
▪ Response: The returned data is the account data, including sub-accounts. For each entry, the following information is
displayed:
▪ id – account ID
▪ name – account name
▪ location – includes country, state, city, address, address2 (secondary address), zip
▪ companyWebSite – the company web site
▪ contactPerson – the account contact person first name and surname
▪ email – the contact person email
▪ phoneNumber – account phone number
▪ faxNumber – account fax number
▪ notes – account notes
▪ parentId – account parent identifier
"accounts":{
"count":2638,
"list":[{
"id":0,
"location":{
"country":"my country",
"state":null,
"city":null,
40
API Description
"zip":"00000"
},
"companyWebSite":"",
"contactPerson":"Saar",
"email":"[email protected]",
"phoneNumber":"+00000000",
"faxNumber":"",
"notes":" ",
"parentId":32,
"uris":null
},
"id":1,
"location":{
"country":"my country",
"state":null,
"city":null,
"zip":"00000"
},
"companyWebSite":"",
"contactPerson":"Saar",
"email":"[email protected]",
"phoneNumber":"+00000000",
"faxNumber":"",
"notes":" ",
"parentId":32,
"uris":null
},
"id":2,
"location":{
"country":"my country",
"state":null,
"city":null,
41
API Description
"zip":"00000"
},
"companyWebSite":"",
"contactPerson":"Saar",
"email":"[email protected]",
"phoneNumber":"+00000000",
"faxNumber":"",
"notes":" ",
"parentId":32,
"uris":null
}]
42
API Description
Meters API
▪ Response: Response parameters include lifetime energy reading at the defined granularity within the specified date range,
including the following parameters:
"meterEnergyDetails": {
"timeUnit": "DAY",
43
API Description
"unit": "Wh",
"meters": [
"meterSerialNumber": "12345678",
"connectedSolaredgeDeviceSN": "7E212128-E8",
"model": "RWNC-3Y-480-MB",
"meterType": "Production",
"values": [
"value": 198
},
"value": 243
},
"value": 273
},
"value": 299
},
44
API Description
"value": 309
},
"value": 312
},
"value": 344
},
"value": 415
},
"value": 451
},
"value": 552
},
"value": 572
},
45
API Description
"value": 670
},
"meterSerialNumber": "22233345",
"connectedSolaredgeDeviceSN": "7E212121-E1",
"model": "RWNC-3Y-480-MB",
"meterType": "Production",
"values": [
"value": 121
},
"value": 153
},
"value": 255
},
46
API Description
"value": 276
},
"value": 295
},
"value": 303
},
"value": 348
},
"value": 450
},
"value": 541
},
"value": 604
},
47
API Description
"value": 817
},
"value": 975
48
API Description
Sensors API
▪ Response: Returns the list of sensors installed in the site associated with the gateway they are connected with. Each entry
will include the following parameters:
▪ connectedTo: name of the gateway the sensor is connected to
▪ name: the name of the sensor
▪ measurement: what the sensor measures, e.g.: SensorGlobalHorizontalIrradiance, SensorDiffusedIrradiance,
SensorAmbientTemperature
▪ type: the sensor type e.g.: Temperature, Irradiance.
▪ Example: JSON output example:
"SiteSensors": {
"count": 3,
"list": [{
"count": 2,
"sensors": [{
"measurement": "SensorGlobalHorizontalIrradiance",
"type": "IRREDIANCE"
},
"measurement": "SensorDiffusedIrradiance",
"type": "IRRADIANCE"
}]
},
"count": 1,
"sensors": [{
"measurement": "SensorAmbientTemperature",
"type": "TEMPERATURE"
49
API Description
}]
}]
▪ Response: Returns the telemetries reported by all sensors in the site, by the device they are connected to. Each entry will
include the following parameters:
▪ connectedTo: name of the gateway the sensor is connected to
▪ count: the number of telemetries
▪ date: timestamp of the telemetries
▪ measurement: (e.g. ambientTemperature) and its numerical value (metric system)
▪ Example: JSON output example:
{
"siteSensors": {
"data": [{
"count": 0,
"telemetries": []
},
"count": 427,
"telemetries": [{
"ambientTemperature": -22.1155,
"moduleTemperature": 47.2601,
"windSpeed": 81.3652,
…]
},
50
API Description
"count": 427,
"telemetries": [{
},
"count": 0,
"telemetries": []
},
"count": 0,
"telemetries": []
},
"count": 427,
"telemetries": [{
}]
51
API Description
API Versions
As the monitoring API evolves over time, users of the monitoring API need to make sure their code is interacting with the
formally supported version.
The monitoring API supports previous versions to some extent. This can be verified by executing the Supported Version API (see
below).
The version format is <major.minor.release> where:
▪ Major - The main version number. This number increases when the version includes significant changes, which might not be
backward compatible with previous versions in terms of APIs calls and returned results.
▪ Minor – The sub-version number. This number increases when the version includes some changes, which might not affect
the APIs, however the returned results can contain more information than the previous minor version.
▪ Release – bug fixes
The user should optionally specify the version as a parameter for each API (except this API) e.g. version=1.0.0. If it is omitted,
current version is assumed (see Current Version below).
Current Version
Description: Return the most updated version number in <major.minor.revision> format.
URL: /version/current
Example URL: https://monitoringapi.solaredge.com/version/current
Method: GET
Accepted formats: JSON and XML
Method: GET
▪ Request: No parameters
▪ Response: The current version
▪ Example: JSON output:
{"version":"1.0.0"}
Supported Version
Description: Return a list of supported version numbers in <major.minor.revision> format.
URL: /version/supported
Example URL: https://monitoringapi.solaredge.com/version/current
Method: GET
Accepted formats: JSON and XML
Method: GET
▪ Request: No parameters
▪ Response: A list of supported versions
▪ Example: JSON output:
{"supported":["0.9.5","1.0.0"]}
52
Data Types
Data Types
Time Unit
Allowed values: DAY, WEEK, MONTH and YEAR
Site Status
• Active – The site is active
• Pending Communication – The site was created successfully however there is no communication yet from its
inverters/SMI.
Site Type
• Optimizers and inverters
• Safety and monitoring interface
• Monitoring combiner boxes
53