Developer detailed API documentation

Hi all,

I'm new with Hubitat. I'm Electronic Engineering with 10+ years on industrial automation.

I'm trying to start up a business with Home/Building automation and decided to go with Hubitat (after using ST at home for 2 years).

What I am finding a little bit frustrating is the lack of documentaiton on both Hubitat API (for developing Apps + Drivers) and Z Wave documentation (events, commands, parameters for devices).

I am convinced the problem is on my side and I'm not looking correctly, that's why I'm asking here for help on where to look for this information.

The question why I want this information is because, after so many years working on industrial automation, and trying to deliver a great product/service to my eventual clients, I wan't to go in detail to each driver/app I'm going to use and make sure I both understand and am confident with the quality of the code and that all features have been implemented.

Thanks for any help on tips where to look for this information.

2 Likes

This link is the Hubitat basic operational documentation.

https://docs.hubitat.com/index.php?title=Hubitat_Elevation_Documentation

In that data is the below link, which contains the specific api for Hubitat. Additionally, the programming language (groovy) provides the basic programming language.

https://docs.hubitat.com/index.php?title=Developer_Documentation

Dave

1 Like

Thanks Dave for the quick response.

I was already aware of those pages, but it looks quite incomplete, for instance, I cannot find a reference for methods such as switchMultilevelV2, sendEvent, etc.

Also, I cannot find a complete definition of z wave commands, capabilities, parameters, etc.

Honestly, I don't think Hubitat has good developer documentation at the moment, just the above that describes at least the signatures of most Hubitat-specific methods. The platform runtime environment is nearly identical to that of SmartThings, so if you're familiar with that you already know most. If you don't, their docs are really mostly a better resource, but use their "classic" docs (where things ran/run in the ST cloud; they are slowly moving to a model where you need to provide your own with an accessible endpoint). For SmartApps, see: SmartApp — SmartThings Classic Developer Documentation. For DTHs (like Hubitat drivers), see: Device Handlers — SmartThings Classic Developer Documentation.

There are some differences, mostly in driver land, which you can see most of here: App and driver porting to Hubitat

2 Likes

Thanks, that helps a lot. I will start by looking at ST docs and together with what's available for Hubitat, work from there.

I wish they'd open it up to allow the community to submit documentation changes and have one of the staff approve. I get they don't have time to update everything but if they opened it up, we'd probably get a few of us who would contribute.

6 Likes

Also the source code, at least of some parts, like the mobile app... I would be more than happy to contribute to it, instead of having to look for a 3rd party mobile app that's more suite for commercial grade home automation services.

1 Like

Commercial products rarely release their source code...

Smartthings does for a lot of things...

Yeah, groovy device drivers and apps... Things that only run... in ST. It's another story to release the source code to the product itself.

Mobile app would only work with Hubitat...

I think @patrick (or someone else but they said to contact him) mentioned during one of the first Hubitat Live episodes that the docs are technically a wiki and they'd allow user contributions if asked. Not sure what the vetting process is; perhaps he could shed some light.

1 Like

Yes, that is exactly how it is set up. You can create an account on your own and then PM me and I will give you edit access. We did not want to give everyone access by default and have not figured out a better way yet.

1 Like

@chuck.schwer I guess I never noticed the create account button at the top. I just created one. Not sure how much I can contribute, but I'm happy to do some!