Create a SmartApp
Prerequisites
- Sign in to your Samsung Account.
- Sign in to the Developer Workspace.
- Pick a solution to host your SmartApp. Visit Choosing a Hosting Solution for more details.
- If using a webhook, an app server up and publicly accepting lifecycle events (needs url) from SmartThings via HTTPS.
- Verify your domain ownership
- If using Lambda, permission to execute your Lambda (url) function must be granted to SmartThings.
Types of SmartApps
There are typically three types of SmartApps you can create. Which one you choose will depend entirely on your specific application. Choosing to start with a Simple SmartApp will not preclude you from enabling more advanced features later.
Simple SmartApp
If you need to create something more complex than a rule, but do not need to hold outside authentication information or other data, you will use a simple SmartApp. We have created an example tutorial on building a simple SmartApp that sets the color of a light based on the weather in a given zip code.
https://community.smartthings.com/t/simple-smartapp-tutorial-smartapp-sdk/194664
Services with a Complex SmartApp
If your SmartApp needs to allow external communication or authentication with a third party, you will need a context store. We have created a tutorial on building a SmartApp with Context Store here:
https://community.smartthings.com/t/endpoint-smartapps-with-file-store-contexts/219761
Cloud Connected Devices with SmartApp Connectors
It is possible to create and control cloud connected devices with a SmartApp. For more complete instructions on how to work with cloud connected devices please visit the Devices documentation section.
Create Your SmartApp With the SmartApp SDK
There are two SDKs available to help create your SmartApp.
The SDKs are a set of libraries and wrappers around the SmartThings API designed specifically for SmartApp creation.
For information on hosting your SmartApp, visit the Hosting section.
After creating your SmartApp, the next step is registering it with SmartThings.