as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
Ring
AWS
文档
Support
Contact Us
My Cases
Get started
Connect with Matter
Alexa Connect Kit
Add-ons
Certify
Resources
感谢您的访问。此页面目前仅提供英语版本。我们正在开发中文版本。谢谢您的理解。

Connect Your Device Cloud with Smart Home Add-ons


You can build smart home add-ons to connect your devices to Alexa through your cloud infrastructure. With a smart home add-on, users can voice-control their devices and view device status in the Alexa app and on Alexa-enabled devices with a screen.

When a user speaks to Alexa, Alexa interprets the utterance and sends a message to your add-on that communicates the request. Your add-on reacts by changing the state of the device, such as dimming a light, or sending information about device state, such as telling the user whether a light is on or off.

If you want to connect your smart home device to Alexa locally, see Connect with Matter.

If you don't have existing cloud infrastructure or prefer not to manage Lambda functions, account linking, and cloud services, consider Alexa Connect Kit (ACK). With ACK, Amazon manages the cloud infrastructure, so you can focus on your device application code. For details, see Alexa Connect Kit.

Who can develop smart home add-ons for Alexa

Anyone with cloud-connected devices can develop a smart home add-on. The Smart Home API uses the pre-built voice interaction model which defines the utterances that users say to interact with your add-on. Each interface defines a set of pre-built utterances to control the device. Alexa knows how to interpret the user's speech and what directives to send to your add-on.

Smart home add-on development falls into two categories:

  • Device manufacturers that want to enable customers to interact with their cloud-connected devices by using voice, the Alexa app, and Alexa-enabled devices with a screen.
  • Independent developers who want to create an Alexa add-on for cloud-connected devices, either for their own private use or general public use.

You can build your own smart home add-on or work with experienced solution providers to help you connect your devices to Alexa. For a list of solution providers, see Works with Alexa IoT Solution Providers.

If you're a device maker looking for a managed connectivity solution that adds Alexa and Matter support to your device, consider the Alexa Connect Kit (ACK). With ACK you don't develop an add-on or manage cloud services. Amazon manages the cloud infrastructure, security, and certification, and you focus on your device firmware.

What kinds of devices does the Smart Home API support?

You can connect almost any type of device to Alexa by using the Smart Home API. You decide how you want the user to interact with your device, and then in your add-on, you implement the capability interfaces that support those interactions. For example, if your device is a lamp, and you want the user to be able to turn the lamp on and off, you implement the Alexa.PowerController interface in your add-on.

Most devices implement multiple smart home interfaces to support multiple device features, such as dimming the light and turning the light off and on. For the full list of smart home interfaces, see List of Alexa Interfaces.

Some Alexa interfaces support specific device types, but other interfaces support many kinds of devices. For example, implement the Alexa.ThermostatController interface only for thermostats, but implement interfaces like Alexa.PowerLevelController for many kinds of devices.

Whenever possible, choose an interface that's specific to your device because more specific interfaces allow Alexa to support more specific functionality. For example, you could model the concept of device brightness with Alexa.PercentageController or Alexa.RangeController, but if you implement the Alexa.BrightnessController interface instead, Alexa provides built-in support for the phrase "Alexa, dim the lights."

For recommendations about what interfaces to implement for some common device types, see Smart Home Device Templates.

How your cloud connects to Alexa

Your smart home add-on uses the smart home model and includes code in an AWS Lambda function to provide communication between Alexa and your device. Lambda is a compute service offered by Amazon Web Services (AWS).

When a customer enables your add-on, Alexa starts device discovery. Here, your add-on describes your device and the properties and interfaces that it supports, and reports the device details to Alexa. Then, when a user speaks to Alexa to control your device, Alexa interprets the utterance and sends a message to your add-on to communicate the request. Your add-on reacts to the message by changing the state of the device, either directly over a local connection or through your cloud infrastructure. In addition, you connect the customer's account on your system with the customer's Amazon account so that your add-on knows the customer and their devices.

Capability interfaces

The Smart Home API provides capability interfaces that you use to describe your devices and the properties, events, and directives that they support. During the device discovery process, you describe your device to Alexa by sending a Discover.Response event after receiving a Discover directive from Alexa. Alexa uses this description of your device and its capabilities to automatically enable certain functionality, such as:

  • Contextual targeting, which lets Alexa use context clues, such as device groups, to issue commands that target the proper device even when the user isn't explicit.
  • Controlling devices through routines.
  • Viewing and controlling devices with the Alexa app and on Alexa-enabled devices with a screen.

Device updates

In addition to supporting voice requests, the API also supports device updates when the state of a device changes. Proactive updates enable users to ask Alexa about the state of a device and see the up-to-date status in the Alexa app and on Alexa-enabled devices with a screen. For example, a user can check the temperature of their home or see if a light is on. In addition, your add-on or device can proactively notify Alexa when the user manually changes the device state, such as turning on the light switch.

To support these customer scenarios, the Smart Home API has the following features:

  • Capability interfaces – These interfaces describe a device's functionality. A device, or endpoint, can implement the combination of capability interfaces that best represent its features. For example, a light that you can turn on and off and dim might implement two interfaces: Alexa.PowerController and Alexa.BrightnessController. A similar light that has these two features and also supports tunable white light might also implement Alexa.ColorTemperatureController.
  • Synchronous and asynchronous messaging – When Alexa sends a directive, your smart home add-on responds either synchronously or asynchronously. You're free to choose asynchronous or synchronous responses or a combination of the two, whichever works best for your device and cloud architecture.
  • Device state change notifications – When you provide proactive state updates to Alexa, Alexa can display accurate and up-to-date device status in the Alexa app and on Alexa-enabled devices with a screen. Proactive updates enable customers to take action, if needed. For example, if someone manually unlocks the door, you can send this change to Alexa to speak or display to the customer.
  • Querying state – Capability interfaces define properties that Alexa can query to enable customers to check the current state of a device by asking Alexa or viewing the state in the Alexa app and on Alexa-enabled devices with a screen.

The following image shows an overview of the functionality offered by smart home add-ons.

Alexa smart home add-ons interact with the Alexa service and your device cloud.

Example: Control a kitchen light

A customer enables your smart home add-on, links the add-on to their account with your device cloud, and then asks Alexa to discover devices associated with that account. Later, the customers says, for example, "Alexa, turn the kitchen light to 50 percent", or makes a change to a device setting in the Alexa app.

Alexa uses information from the customer's utterance or the app to compose a message that identifies the endpoint and the operation to perform. Alexa sends this message, called a directive, to your add-on to control the kitchen light. The directive includes: - The capability, for example, BrightnessController.SetBrightness, which includes the new setting value. - The endpoint identifier. In this example, the ID representing the endpoint that the customer named "kitchen light". - Information that authenticates the customer.

Your add-on code, hosted in Lambda, receives and parses the directive, and then validates the authentication information. Your add-on communicates with your device, or device cloud, using communication channels you've defined, to set the brightness on the customer's kitchen light.

Your add-on responds to Alexa with a message called an event that indicates whether the operation was successful. You have the option of sending the event synchronously from the Lambda function or asynchronously from the device cloud. Alexa uses this response to provide the appropriate response to the customer. For example, Alexa might say, "OK" to indicate that the requested directive was successfully handled.

Later, the customer switches off the kitchen light manually. This action causes your device to send a change report event to Alexa to indicate that the light is now off. Alexa displays the updated status in the Alexa app and on Alexa-enabled devices with a screen.

Works with Alexa guidelines

Works with Alexa (WWA) is a certification program that establishes your product's compatibility with Alexa and helps your customers have a better smart home experience. When your products receive certification, they can carry the Works with Alexa badge in the Amazon Smart Home Store and on product packaging. For details, see Works with Alexa Overview.

Next steps

To get started, see Steps to Build Smart Home Add-ons.


Was this page helpful?

Last updated: Apr 08, 2026