Alexa, Arm My Security System. Now You Can Connect Security Systems with Alexa Using the Security Panel Controller API

Brian Crum Dec 11, 2018
Share:
Connected Devices Smart Home API
Blog_Header_Post_Img

We are excited to announce the Security Panel Controller API, enabling your customers to control their security systems via Alexa-enabled devices. Once you’ve implemented the Security Panel Controller API, your customers can arm, disarm, and query their security systems with Alexa. Alexa supports arming in away, home or stay, and night modes. The Security Panel Controller API is available today in the US, and security system providers such as ADT, Ring, Honeywell Home, abode, and Scout Alarm are already leveraging these new smart home capabilities.
 

How the Security Panel Controller API Works

Arming or disarming a security system is done using the Arm and Disarm directives. The Arm and Disarm directives signal that a customer has asked Alexa to activate or deactivate their security system. Customer utterances that support Arm are, “Alexa, arm <device name> in <mode type> mode,” and “Alexa, arm.” If a customer doesn’t specify a mode, the default arming mode is stay mode (a.k.a. home mode). Customer utterances that support Disarm are “Alexa, disarm <device name>,” and “Alexa, disarm.” Here is what the arm and disarm requests would look like:

Arm Directive:

Copied to clipboard
{ 
   "directive": {
     "header": {
       "namespace": "Alexa.SecurityPanelController",
       "name": "Arm",
       "messageId": "2bfeb157-89b1-40f3-ba50-677e233b3312",
       "correlationToken" :  "an opaque correlation token",
       "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "<an OAuth2 bearer token>"
      },
      "endpointId": "<the identifier of the target endpoint>",
      "cookie": {
         // key/value pairs as received during discovery
      },
    },
    "payload": {
      "armState": "ARMED_AWAY",
      "isArmInstant": true
    }
  }

Disarm Directive:

Copied to clipboard
{ 
   "directive": {
     "header": {
       "namespace": "Alexa.SecurityPanelController",
       "name": "Disarm",
       "messageId": "2bfeb157-89b1-40f3-ba50-677e233b3312",
       "correlationToken" :  "an opaque correlation token",
       "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "<an OAuth2 bearer token>"
      },
      "endpointId": "<the identifier of the target endpoint>",
      "cookie": {
         // key/value pairs as received during discovery
      },
    },
    "payload": {
      "authorization": {
        "type": "FOUR_DIGIT_PIN",
        "value": "1234"
      }
    }
  }
}

 

Security panel customers must enable the disarm-by-voice feature in order to use the Disarm capabilities. Customers can enable disarm-by-voice during set-up flow or by visiting their panel’s settings page in the Alexa app. If your security system supports 4-digit PIN codes known to your security system control cloud, customers can choose to use either their existing PIN or an Alexa-specific voice code to disarm their system. If your security system does not support 4-digit PIN codes known to your cloud, customers must create an Alexa-specific voice code to disarm.

Security panel providers such as ADT, Ring, Honeywell Home, abode, and Scout Alarm are already leveraging the Security Controller APIs, and customers can use their respective skills today. To get started, you can follow the instructions in the Security Panel Controller API documentation. 

Subscribe