I’ve looked at the code and see that the app uses the API call “currentPowerFlow.” When attempting to access that API via HTTPS, the API responds with no information. Other API calls do return information; for example, “overview” works as well as other calls. I’ve opened a case with SolarEdge to see if they can shed any light on this issue. I will update here when I have more information.
Thank you for contacting Solaredge Technical Support.
We can only provide the API key other than that we do not have access.
Please see the link below, for API Guide
I think the best way forward is to make the app fault tolerant when some api data is missing. That way it will keep working. Unless of course they changed the api permanently and the app should be updated accordingly.
The API Call documented in their API Reference “Site Overview” works.
Here is what I get when punching in my API key and Site ID:
Here is the API Reference for Site Overview:
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
Request: The following parameter is included in the request:
Parameter Type Mandatory Description
siteId Integer Yes The site identifier
Response: The response includes the site current power, daily energy, monthly energy, yearly energy and life time energy
The app uses the API Call “Site Power Flow”. Here is what that call returns when I plug in my Site ID and API Key:
Here is the API Reference for Site Power Flow:
Site Power Flow
Description: Retrieves the current power flow between all elements of the site including PV array, storage (battery), loads
(consumption) and grid.
Note: Applies when export , import and consumption can be measured.
URL: /site/{siteId}/currentPowerFlow
Method: GET
Accepted response formats: JSON (default), XML
Parameters:
Example URL: https://monitoringapi.solaredge.com/site/1/currentPowerFlow?api_key=L4QLVQ1LOKCQX2193VSEICXW61NP6B1O
Parameter Type Mandatory Description
siteId number Yes The site identifier
API Description
27
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).
The Site Overview (and all other API calls, apparently) are working. Just the “Site Power Flow” call is not working. When I say Not Working, I mean it returns no data.
If SolarEdge will not fix their API, then this app will not work at all.
Hi all!
Is this problem solved for anyone in the meanwhile? If yes, how?
I have exactly the same problem (currentPowerFlow API call not working - returns a HTTP error 500, while other API calls such as overview or details are working fine), and I wonder whether there is anything I could do about it (some workaround?).
I wrote to SolarEdge Support - let’s see whether they have any useful answer for me.
This app has never worked for me, and I think I have finally figured out why. I was digging around in the v1 API, which supports generic GET requests so you can just experiment in a browser without fiddling with headers or POST data or anything.
Just about every request I tried worked for my site. For example
https://monitoringapi.solaredge.com/site/[my site id]/overview?api_key=[my API key]
but the one request the app makes, https://monitoringapi.solaredge.com/site/[my site ID]/currentPowerFlow?api_key=[my API key], just returns
<siteCurrentPowerFlow/>
I did a little googling, and it looks like our friends using HomeAssistant have been experiencing this challenge as well. The API used by the SolarEdgeMonitor app can only provide data if you have the device mentioned hooked up as part of your Solar Edge system.