SmartThings Community

SimpliSafe Alarm Integration (cloud to cloud)

I know I am late to this thread, but glad I found it. I have been with SS for about a year and ST for about two months. First, I really like the app/handlers @tobycth3 and the others that have worked on them.
For those confused as easily as me, I have found things work with the classic ST app, not so much with the new ST app. Maybe I don’t have something configured correctly with the new app.
I do have a couple of questions, I can’t tell from the code and haven’t searched “the internet” so taking the easy way (for me): does anyone know where the userid and password are stored for this integration? Are all the data transmissions between the ST phone apps to the “cloud” encrypted? It appears the connection to the SS site is encrypted, if I remember the URLs listed in the code correctly.


Crazy easy question I am missing I am sure. I can’t seem to get the smart app to communicate with the device handler. I am guessing this has to do with the way I am entering my username and password. “username” and “password” appear multiple times up top in the code. Which field should I populate or replace?

You do not need to update the code at all to change UserName and Password. Try following the directions here. It has been a while since I installed it, so am not 100% sure I remember either (haha).

Hi Scott,

Thanks for replying. So then am I missing where I would put in the username and password? I have added the app, I can get to it by going to the “my apps” section under automation. However, when I try to select a system I am greeted by a red bar and error which says “There are no devices of this capability”

Again, I appreciate the reply.

Are you using the new SmarthThings app on your phone or the classic app?


I think this must be a step I am missing. I have installed the device handler and also the smart app. I am guessing I am missing a step for authentication to SS so I can properly select the system I want to control. You mention configuration in preferences, but I can’t seem to find that. I am fairly new to ST.

I am currently trying from the Classic App, but I have both installed. I can’t seem to install apps on the new app.

Online (API IDE Site for SmartThings), under My Device Handlers you should have the following installed (probably not blue).

Then you will install the Smart App under “My Smart Apps.” You should see this:

After that on the Web API IDE Site go to My Devices at the top. Click on the right towards the top the “New Device” button. Fill it out as follows (for Location and Hub, make sure to select accordingly for your hub):

Also note, the Device Network ID can be anything, if you are already using 0, then that can cause problems.

After that, start up the SmartThings Classic App on your phone. Go to the My Home tab and you should see Simplisafe listed there. Click on it and then you will see a status (probably invalid). Click on the gear in the top right corner. In there you can change your username, password, and version (ss2 or ss3).

If you want to use the SmartApp continue below.

Click on the Automation Tab. Select Smart Apps. You should see something like this.

Scroll to the bottom and select “Add a SmartApp”. Go to MyApps and you should see the following:


Click on the Simplisafe Monitor Smart App. Then you should see this.

1 Like

YES, thank you! This is what i was missing. I was looking to add an automation when I should have been looking to add a device first, still wrapping my head around it all. Now it is working, I just have to figure out now why turning on or off shows the main tile as “Alarm” I am guessing this will effect status feed back for triggers to my system?

Silly question: is there a typo or does it even matter in line 216 of the Device Handler. It looks like the type is C0 (letter C and number 0). Should it be the letters CO?
Also, is it possible to get status of contact (entry) sensors and motion sensors?

My guess is that yes, it should be an “O” (number), not the number Zero (0). I can’t test that as I do not have any CO Detectors in my system.

New website does not seem to have the format you specify. this is how it looks now, logged into my account… any other place I can get Location ID?

Answering my own question, you don’t need any information from the account other than your user name and password in the SmartThings app.

Is there a way to use SimpliSafe actions to integrate with lights and other routines? I want to turn on all home lights when my alarm triggers in home or away mode after say 6 PM.

Does this integration still work? Does it require Simplisafe INTERACTIVE plan or the basic?

Yes it does still work. And it does require the full interactive plan to work.

@ssilence Thank you for the response! Appreciate it!

It used to work great with my SS2. Thanks to Toby and Felix for this great app.
Recently upgraded to version 3. On SS3, I can set the alarm perfectly but tile is not getting updated and also the monitor is not working as status always shows off.

Appreciate any help.


Make sure you go into the settings (gear in the top right of your screen), and set the SimpliSafe Version to ss3. If that is already done, then I am at a loss. I switched from SS2 to SS3 last year, and haven’t had this issue.

Nevermind, I figured out what the bug is (actually have already fixed it locally in my code, but can’t push updates to the repository).

This requires you to go into the Smarthings IDE ( go to the My Device Handlers section and click on the tobycth3 : SimpliSafe link in the table. This will open the device handler to edit code. Scroll down to around 187 (inside of the Poll function). You will see the following lines of code.

//Check alarm state
sendEvent(name: "alarm", value:
sendEvent(name: "status", value:

You want to change it to the following:

//Check alarm state
sendEvent(name: "alarm", value:
sendEvent(name: "status", value:

The big difference here is that the value for SS3 that is returned for the Alarm State is all UpperCase (“OFF”), when Smartthings is expecting it to be all LowerCase (“off”). So, I added “.toLowerCase()” to the each of the end of the value of the SendEvent functions.

Awesome, it works now. Thanks Scott