Ezlo Linux firmware - HTTP documentation preview

Has anybody managed to send insecure http command from Home Assistant to Ezlo or all of the HA users are banned :slight_smile: I tried to send it with rest command but it looks like you can only send http get commands with rest not https like in case with ezlo. Or i’m doing something wrong.

I’ve just rebooted my Ezlo Plus.

I tried to change the House Mode with no auth and I was able to switch it from Home to Away and also send the Cancel Command to stop it.

So it does seem to be working now with no auth.

Not sure why it wasn’t working yesterday ?

No I haven’t been able to send any HTTP commands to the Ezlo hub.

Even with auth turned off seems you still have to use HTTPS.

Does anyone know the correct commands for a Thermostat device ?

I am unable to get these device item objects working:


I can however use thermostat_setpoint OK and change the setpoint using value_int=23 for 23 degrees etc.

See item number " 6. Controlling a Thermostat’s Set Point value." on this thread in the dummy guide here for further details.

There is also some issue or bug that kinda crashes the Vera Mobile Android app.

If I am in the Vera Mobile app connected to the Ezlo Plus and looking at the devices view, if I then send some incorrect / bad HTTPS commands to the HTTP Server API from Postman, then the Vera Mobile app kinda crashes it switches itself back to the Controllers list page, the Ezlo Plus then shows as offline and red briefly and then it comes back to online and green and I have to select the controller again to get back in to the app proper and look at the devices again.


Please can someone answer my questions here at number 6. about controlling a Thermostat device.

Also I need some working example HTTPS commands for retrieving devices current status and retrieving different variable values from a device.

As yet I’ve been unable to use a HTTPS command to query a device.

Also has the bug been fixed for disarming a device via a HTTPS command? As previously it was not working is it logged in your bug tracking system?

Thank you.

Hi cw-kid,

I asked my colleague @Oleh to get back to you with answers.

@cw-kid, about PART6

  1. Please use “$URL” to avoid truncation of a query in Bash shell:
  2. Please, use the “armed” property of a command, not “value”, replace “value_bool” with “armed_bool”.

curl --insecure --http1.1 “”
curl --insecure --http1.1 “”

hub.device.armed.set WS example:
“method”: “hub.device.armed.set”,
“id”: “ ID ”,
“params”: {
“_id” : “ OBJECT_ID ”,
“armed”: true,


Thanks the Disarm command now works, I’ve updated the guide.

How about my other two question above ?



What is the Ezlo equivalent of SDATA?

This http command can be used in a browser for Vera.


Hi cw-kid,

The hub.data.list comes closest. It gives devices, items, scenes and rooms. You can even apply pretty advanced filters on the values you want returned to optimize the data amount returned. I am looking into it for a newer version of the EzloBridge plugin.

Cheers Rene

1 Like

The closest analog of sdata is hub.data.list. This command allows to request data from multiple collections from a hub in one request, allows data filtering by id and field names. Default request looks like this:

    "api": "1.0",
    "method": "hub.data.list",
    "id": "<REQUEST_ID>",
    "params": {
        "rooms": null,

Default request, with all fields filled:

    "api": "1.0",
    "method": "hub.data.list",
    "id": "<REQUEST_ID>",
    "params": {
            "ids":[], "fields": { "include":[] }
            "ids":[], "fields": { "include":[] }
            "ids":[], "fields": { "include":[] }
            "ids":[], "fields": { "include":[] }

Detailed description of hud.data.list in attachment
hub.data.list.pdf (89.0 KB)

Just curious about what project are you working on with this request?

@Oleh I’m talking to “The Home Remote” developer Bill about him adding support for the Ezlo platform.

The Home Remote is a 3rd party cross platform dashboard GUI control app.

I wrote about it here.

Bill has expressed an interesting in adding support for Ezlo hubs.

I’ve sent him all the Ezlo API documentation and links to the threads on this forum.

I’ve also offered him remote access to my Ezlo Plus hub for testing and developing against, unless you guys want to send him an Ezlo Plus hub ?

I’ve been talking to Melih recently about how all the 3rd party dashboard apps out there and all the 3rd party HA systems / HA software platforms out there that currently integrate with Vera hubs are all going to be broken and no longer work with the new Ezlo hubs and API’s.

There are many systems out there that integrate with Vera currently and all will stop working, Home Assistant being a prime example, a lot of those folks just use Vera hubs as a “Z-Wave Radio”.

All systems and apps like this will have to be updated by the 3rd party developers for the Ezlo platform. Many will never be updated however due to lack of interest or them not being actively developed anymore like the Imperihome dashboard app for example.

1 Like

there maybe a way to integrate it into Imperihome using ISS from it

1 Like

Not sure I’ve never used Imperihome ISS. Ask @reneboer he’s used it for Open Luup.


How do I make these API calls remotely? I.e. is there a vera domain name I can hit instead of the local IP?


I don’t believe Ezlo have this functionality currently.

Apparently you could do this in the past with the Vera Http API and their relay server, but they discontinued that service.

Personally I’ve only ever used http calls like these locally on my LAN.

I guess you could open the port number on your firewall and port forward, but I wouldnt recommend that unless you can add some extra security some how, like a static source IP address.

A VPN connection to your local LAN might be another option.

Hey cw-kid! Your CW’s IDIOT GUIDE has been very helpful, thank you for putting that together!

I found something that’s working right now, I’m just not confident that it’ll be supported long term since I can’t find any documentation on it… but here’s what I did:

  1. Following Python Script for Ezlo FW HTTP API Curl commands I saw we could get the Identity and IdentitySignature by doing a:
GET https://vera-us-oem-autha11.mios.com/autha/auth/username/{USER_NAME}?SHA1Password={SHA1_PASSWORD_FROM_SCRIPT}&PK_Oem=1&TokenVersion=2
  1. Using the Ezlo API Tool, and inspecting the requests with the Chrome DevTools, I noticed they were making this call (I’m not sure if this domain will always be around):
GET https://mms-proxy.vercel.app/device/device/device/{DEVICE_SN}
--header MMSAuth {Identity}
--header MMSAuthSig {IdentitySignature}

From the response we get a Server_Relay (e.g. wss://nma-server6-ui-cloud.ezlo.com:443) which I can connect to with a websocket and start communicating. The Chrome DevTools showed me what messages they’re sending to authenticate.

But without seeing any official documentation, I’m worried I’ll build something that will stop working one day because it’s not officially supported.

Best Home Automation shopping experience. Shop at getvera!

© 2021 Ezlo Innovation, All Rights Reserved. Terms of Use | Privacy Policy | Forum Rules