Hi,
I am wanting to connect a KLEREO system that is used for a pool. That klereo system allows to control the temperature of the pool, ph, etc from a web app/website but there is no API.
Despite that, is there a solution with like a script to send commands to KLEREO system ?
If there’s “website” there is likely a way.
Also, a mobile app will likely also be using HTTP protocol for messages which is what an API uses too.
I can’t seem to find something for your provider but try this:
Log on to the website
Press F12 in your browser
Click the tab that says “Network”
Do a thing, or refresh the page
Right click on an interesting request (note, POST usually means “do a thing”)
Click “Copy as CuRL”
Paste in a terminal and click enter
If thing changed or you got successful data back, then you’re 1% of the way to writing your own API for HA
@kwilliams1987
No need to complicate things with Selenium - at the end of the day clients talk to server via HTTP so you can hook into that rather than involving front end just for JS or CSS
Issue is that a lot of (especially real time) web apps will use web sockets or long polling for updates these days which can’t be emulated with a simple cURL request. Authentication and session cookies can also complicate things.
If its a standard HTTP backend with a simple session/JWT cookie then he may be in luck.
This all is super interesting !
I will dive into it instead of in the pool !
In the news they say an API is to come. So i might probably spend too much time for nothing…
You hold IoT software developers in high regard! It’s usually a cobble of copy-pasted code.
I’ve done this dozens of times and I’ve only encountered one or two that couldn’t be tackled with HTTP alone.
It sure is possible, but I wouldn’t assume they’re using sockets for a simple state change or data transmission on a bespoke application.
I bet we have all heard that.
The best thing to do is to look this up before you buy the product and just politely say that you are not investing in stuff they claim they will be making and just reject the product until the API is done.