Shark IQ Robot

Hello Hubitat!

So I've been spending a bit of time learning the ins and outs of the Shark IQ Robot API, and I'm fairly close to a complete driver that enables on/off functionality of the vacuum. I'm creating this post to see if there's any interest in this driver...I'd still need to do a bit of code cleanup, and possibly include some additional features (such as power levels). I'll need some testing done still to ensure that all my urls are properly entered (and not unique to myself), so if you're interested in testing, let me know!

GitHub Link to Driver: GitHub - TheChrisTech/Hubitat-SharkIQRobot: Hubitat Integration for Shark IQ Robot


I'm considering the purchase of a Shark Vacuum, the lack of integration has been holding me back. I'll be following your progress for sure. Thanks

Yeah me too! How is the Shark?

The Shark is pretty good for the price. Granted it's only camera based navigation (so lights on when running), it does pretty well cleaning my house. Ended up buying mine at KOHLs with a million of their online coupons...ended up around $250 I think for the one with the self-empty base.

As I haven't vetted urls yet, I'm looking for someone else to help with some testing so I can ensure these weird URLs aren't just for my vacuum. Once that happens, I'll be happy to release it to the public.

So far, I've managed to get the on/off working with just a login (so it's grabbing auth tokens, and device IDs). Also, don't ask me how this works when you have multiple shark vacuums. No idea, unless someone looking for that functionality wants to help me test that out.

1 Like

I have a Roomba and have been looking at the Shark. This might make me get one. Thanks.

I have a SHARK ION Robot Vacuum R85 I don't know if this is compatable. I'm moving into a new home in about 10 days. I would be HAPPY to help test URLs etc.


Steve, I'm honestly not entirely sure how they work together. I'm more than happy to setup a debug app to capture some information which you could run and relay to me, so I can see the urls, and what exactly it's trying to do. Honestly though, most of my work was done using packet capture from my phone through the Shark App.

Let me know if you'd be interested in helping out - heck, even if you gave me temp access to your account (I do understand security/trust issues!) that might allow me to figure it out a bit quicker.

I'm more then happy to help by running a debug app or if need be granting you access to my Shark account.


I’m looking into getting a Shark IQ and would like to integrate it with HE.

1 Like

Did this ever come to fruition? I'd love to see some integration between the Shark IQ and Hubitat.


Unfortunately it didn't. I never got around to testing it with another account to ensure that the endpoints were right, but my integration is still going strong since I made this post. - I'm still open to releasing the code, but want to ensure that it might not work for you...Just because the testing effort hasn't gone through it's paces.


I'm completely fine with experimenting with the code. I have a second hub that I'm currently moving some apps to. It won't even affect my production hub if it causes an issue.

I'm not concerned about it breaking your hub in anyway...It's the url endpoints that the Shark App uses. I'm not sure if it's region specific, or unique per user. I'm just concerned that it won't work at all for others.

I'll get it thrown up on GitHub later today and will update this thread when I do.


Thank you!

I am in the US and would be happy to help test.

@Dodgeboy and @N4IRS, I've posted my driver here: GitHub - TheChrisTech/Hubitat-SharkIQRobot: Hubitat Integration for Shark IQ Robot

Please let me know how it works for you. My main concern is the app_secret that gets passed through the app, as I'm hoping it's not unique to me.

That was my fear too when I wrote something similar in the past. SamsungThings/shark-ion-robot.groovy at master · tobycth3/SamsungThings · GitHub

Looks like the secret is unique.

errorError during runCmd: Forbidden

Same error here:
Error during runCmd: Forbidden

Alright, well at least my vacuum didn’t start up :grinning:. It shouldn’t be too hard to get that app secret, as long as it’s transferred via API in some way. I’ll take a look when I have free time and see if I can get it dynamically.

1 Like

Would not be the first time I had to use the developer console to extract info. :wink:
BTW, I'm a Android user. Not that I can't grab a IOS device if need be.