Controlling things with apple home

I’ve looked everywhere for information on this topic without luck. I want to control all things with the apple home app, for great integration with my familys iphones, setting up scenes/automations, siri voice control etc.

Yes, I have seen the homekit addon but that is for allowing homekit-supported devices to be added to webthings gateway. I want to control everything through the apple home app on my iphone, is this possible? Or will I have to buy every single different gateway (hue, trådfri, aqara etc) needed and use homebridge instead of webthings gateway?


I think something like Homebridge or Home Assistant would probably be better for your needs. Both of those projects can already serve devices up as HomeKit accessories, which can then be added to the Apple Home app.

However, I will say that you can add our UI as a Progressive Web App (Add to Home Screen), which will then appear on your devices as an app. You would be lacking some of the nice iOS built-ins, though, like Siri.

Thats what I suspected, thanks for confirming! I look forward to following the progress of this project, I think it looks really promising. Keep up the good work!

Hi! I was also searching for a function to control the Webthings Gateway with Apples HomeKit and found this post.

As an alternative to control the Gateway with an Apple Device running iOS, you can use the API of Webthings and the Shortcut function of iOS.
With Siri you can trigger a created shortcut. In the shortcut itself you are sending a PUT command to the API of the gateway to change the status of your smart Home device.
Attached you can find my created example. It is working very good.

1 Like

Just a tip: you’ll probably also want to add an Accept: application/json header.

Hi mrstegeman!

Thank you for the tip. Could you please give me a short description why adding this to the header?
I started 2 weeks ago with the webthings, so I‘am no that familiar with the api programming.

Regards Ingo

In the gateway, most of the HTTP paths are shared between the UI and the REST API, so using the Accept header makes sure you’re requesting the proper resource.

I’m trying to make shortcuts to lock and unlock my Zigbee smart lock, I’m having no end of trouble trying to get it to work. Following @Ingo-L’s post I get an alert stating “Invalid property name” (Using “locked”: “unlocked” as my get request indicated is correct)

I’ve also tried issuing a “lock” and “unlock” action as per Mozilla’s API docs, but keep getting an “Incorrect number of parameters” error.

I’d be happy to provide screenshots if it helps :slight_smile:

I’m also stuggling to get my shortcut working… Any help greatly appreciated.

It is the “:” at the end of header parameters. Not sure why but specifically the one after the Authorization. Also I found it easier to use the JSON selection in the body vs creating text and attaching as file. Here is the what worked for me:

Thank you so much for your reply. I got it working a couple of days ago. The colons were only part of my problem. I also had the wrong URL and was trying to update the wrong attribute. For the benefit of others, I attach a screenshot.