-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Get Current Profile does not work with Bearer Auth #7
Comments
You won't be able to access this by logging into the Enphase site with an Some of the URLs support the
Check which role your token has (and the account you're using to log in) then try again and it should work. I do plan to document which URLs require which roles in future. As for access to the platform, I actually have discovered a security vulnerability which allows me access to the system - Enphase Cyber Security are working on a fix (responsibly disclosed 26th July 2023, although I actually ended up finding ~7 issues)... but had I not found this it would have been fairly easy to check which URLs are accessible to which type of token or not based off the current documentation generator which is in this repo. The code is actually Ruby and for the meters compiled native (both via Nginx and mongrel2) . Glad you like the project. Kind Regards, |
Hi Matthew, thank for the quick answer, cool that you have access to the Envoy, add an additional user account that you can continue to investigate the Envoy after a new SW release. The username/account is always the same in my test case. The difference is only that the non working session ID I get via the login.json login. The working one I get via the envoy.local login button which goes to: My long term goal is to get the Envoy and IQ7/IQ8 to produce power in an island mode, at present the System Controller is not available in Europe. I may need to join the three phases into a single one to have a chance to get this running. For this, understanding profiles is important. Also the PLC communication is probably of help to understand and maybe needed for this. Best regards, Helmut |
I have that with the Tesla Powerwall system (specifically the Tesla Gateway).. The microinverters need to see a grid that is within safe parameters to continue operating. As the storage battery becomes fully charged the emulated grid can then use frequency-watt control to continue providing power to the home but encourage the third-party microinverters to safely reduce (and eventually stop) generating (as part of the grid profile which I personally believe is currently non-optimal for the UK). In the UK at least, one has to physically island from the utility to prevent the microinverters trying to power the grid and electrocuting the utility company's workers. Enphase IQ8's Sunlight Backup (which does not require a battery and was true islandling depending solely on current PV conditions - but almost certainly still triggering a disconnect from the grid in the System Controller) will not make it to Europe but it doesn't sound like something that would work properly over here anyway (clouds and typically smaller installations due to our smaller homes)
I am not using
For 3-phase systems the IQ Gateway I believe can only sit on 1-phase (as you would expect) so one would need to repeat the PLC data on the other phases by purchasing the IQ Relay this behaves as a "built-in phase coupler to distribute power line communications (PLC) signals across phases". There's probably third-party ways to accomplish the same thing, but I am not an electrician I am computer technical by trade. |
I got the entire Bearer auth running with my standalone C++ Mac application which I like to port down to an ESP32 later on for energy switching based on metered data. Thanks for this great documentation.
When requesting the Profile "installer/agf/details.json”, the Bearer token based auth gives error 401. Using an HTTP session cookie e.g.:
”envoy_122143077773=xxx; sessionId=3TUYsfNoGCYPQmCyDPuvoMRAWV6OiNaA"
it works with a different session ID compared to the Bearer login session ID.
It works only if I login via Firefox to envoy.local via login with Enphase, then copying this session ID from the browser into my app.
PS: Have you logged into the Envoy via a TTY serial adapter to see the running code and the JavaScript code (maybe Node.js), or any other trick.
The text was updated successfully, but these errors were encountered: