SmartApp SDK
Note: As of January 2025, I have migrated my home automation infrastructure from SmartThings to Home Assistant, so I no longer actively use this software. I will continue to maintain the library, keeping dependencies up-to-date and supporting new Python versions, etc. Time permitting, I will also continue to accept GitHub issues for bug fixes and enhancement requests. If you submit an issue, please keep in mind that I no longer have a SmartThings environment to test with, so I will expect you to coordinate with me on testing before I release any changes.
smartapp-sdk is a Python library to build a webhook-based SmartApp for the SmartThings platform.
The SDK is intended to be easy to use no matter how you choose to structure your code, whether that's a traditional Python webapp (such as FastAPI on Uvicorn) or a serverless application (such as AWS Lambda).
The SDK handles all the mechanics of the SmartThings webhook lifecycle interface on your behalf. You just implement a single endpoint to accept the SmartApp webhook requests, and a single callback class where you define specialized behavior for the webhook events. A clean attrs object interface is exposed for use by your callback. The attrs interface has been designed to match the JSON interface documented by SmartThings. If you have questions about the shape of the data or the way the lifecyle interface works, the SmartThings documentation is your best source of information.
SDK documentation for this library is found at smartapp-sdk.readthedocs.io. Look there for installation instructions, the class model documentation, and example code.
Statement on free-threading: This code is single-threaded by design. Starting with Python 3.14, the matrix build CI workflow in GitHub Actions ensures that the test suite passes for both standard and free-threaded interpreters.
Metadata
Release files for smartapp-sdk 0.9.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| smartapp_sdk-0.9.2.tar.gz | 56.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| smartapp_sdk-0.9.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 79.5 kB
Release files / smartapp_sdk-0.9.2.tar.gz
| Download URL | smartapp_sdk-0.9.2.tar.gz |
|---|---|
| Size | 56.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3c98653781fada3919291e5097423209eaa8044b9e5098436a4a75fbf1edfe21
|
|
BLAKE2b-256 checksum How to use checksums |
25352127c54369c8bfd2f6dfe282bdaf041646f53ae7901b248c36297e151215
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / smartapp_sdk-0.9.2-py3-none-any.whl
| Download URL | smartapp_sdk-0.9.2-py3-none-any.whl |
|---|---|
| Size | 23.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f94805a0dfc2c680ebd3b9f4a83794c6d5cf5ebfb5fb6a93e9f2be119eace80b
|
|
BLAKE2b-256 checksum How to use checksums |
dc69f557b40d253b42d9b8b362de0a4b37ad6519cdf5697f32867132c8ab30d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|