Z-Wave the public standard

Basic Zware API example


We are currently trying to build a gateway on top of Z-ware but finding little documentation and examples on how to achieve even basic functionality. Being very green in the field of Z-Wave in general I am sure I have some serious misconception that some example code would help resolve.

Currently I am able to authenticate, query and set gateway, list available nodes, perform basic inclusion and exclusion operations.

What would help tremendously is a simple sample/sudo code bases on the zware API that shows:

  • Sending a basic command preferable a multilevel switch (LEVEL_SET) operation
  • Doing a passive Poll to retrieve data from a node

Any help would be greatly appreciated :slight_smile:

1 Like

The full API description you can find in the “Web Developers Guide” here:

There is a small Python implementation of some basic functionality in the PyWare client here:

Not much, but a starting point

Hope this gets you a bit further

1 Like

Thanks for your time Iaus. I have been meaning to reply. It turns out I was calling the API incorrectly. I have manage to send multi level switch commands to the device successfully.
I will take a look at the python code and see if I can work out how to poll devices correctly.

Correct me if I am wrong but it looks like you need to call each device->enpoint->interface with a passive get separately to determine if something has changed? This would also require me to store the previous state of the device to determine if something has changed. This would require some serious polling to achieve am I missing something here?


Correct, as this is a web interface you need to perform polling to track changes. And it should be passive gets to avoid unnecessary traffic on the Z-Wave network


Hello ,
I am sorry to Interrupt in the middle but I think this is exactly what I am searching for.
I am planning to code in LabVIEW so that I can controll/(make funcationally wider) the Z-Wave Devices .For that I am searching ZWare API/(or smothing else for eg ZWare DLL …etc ).

where can I find the ZWare API? @laus Unfortunately the API description “Web Developers Guide” shows error. Is there any other way to go ahead?? Any help would be highly appreciated. Thank You.
Best Regards


@stteshak the public Z-Wave site has been shutdown since all information is now available from silabs.com - here you can get the latest updated documentation


@laus Can you please tell me where the ZWare API is? Or in the documentation of zipgateway 2.81 from ZWave where can I find the ZWare API?(DLL or php or users Guide to programm in another programming Language). Thank You .

Best Regards


Hi Stteshak,

What your looking for tus the Z-ware SDK found here. You will however need the following to get this working:

  • Bridged version of the Z-ware controller firmware for the region you require, I got mine pre-installed from digikey. Saying that you can replace firmware on any compatible zware controller if you know what your doing.
  • zipgateway install (have working on Raspberian, Ubuntu and Debian 9)
  • zwaresdk (local portal install normally fine for most uses)

There is a Rasberian Pi image available from silicon labs that has this all setup if you want to get started quickly.

Be warned the API supports polling only and as such you need to poll for every command on every device that your interested in (however you can easily modify the code for example to send Notification reports from the scene lib to get instant update for a great deal of devices).


1 Like