boschshcpy
Bosch Smart Home Controller API Python Library
Decision gist · record as of 2026-08-14
Yes. The library is actively maintained, has low install friction, carries no known vulnerabilities, and uses a permissive license. Install it if you own Bosch Smart Home Controller hardware and need programmatic local control without cloud dependency. The reverse-engineered endpoints are explicitly documented as such, so verify compatibility with your specific SHC generation before relying on firmware-update or automation-rule features in production.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python ≥ 3.10.
- Client certificate registration via boschshc_registerclient CLI tool requires physical access to the SHC device (press front button until LED flashes) and the device password.
- Low friction: pure Python wheel with four runtime dependencies (cryptography, getmac, requests, zeroconf).
License · maintenance · safety
bsd-3-clause (permissive) — BSD 3-Clause (permissive): you may use, modify, and distribute this library freely in commercial and private projects, provided you retain the license notice and disclaimer.
last release 2026-08-05 (9 days) · last repo commit 2026-08-05 · 72 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 185,709 downloads/mo, #10,002 on PyPI
Alternatives
Verify before relying
pip install boschshcpy
import boschshcpy
session = boschshcpy.SHCSession("192.168.x.x", "cert.pem", "key.pem")
session.information.summary()
session.start_polling()
# ... your code ...
session.stop_polling()- Whether the library's reverse-engineered endpoints (firmware updates, automation rules, hydraulic balancing) remain stable across SHC firmware versions.
- Real-world performance and reliability of the long-poll mechanism under sustained network interruptions.
- Compatibility with all Bosch Smart Home Controller hardware generations currently in the field.
What it is and what it does
boschshcpy is a Python client for controlling Bosch Smart Home Controller devices over the local network using mutual-TLS encryption. It provides both synchronous (requests-based) and asynchronous (aiohttp-based) interfaces, with a long-poll mechanism that fires callbacks when device state changes. The library models the official OpenAPI surface plus several undocumented endpoints that Bosch's own Android app uses—firmware updates, automation rules, and other features—all traced from the official app and real hardware.
The package is designed for direct integration into home automation systems (notably Home Assistant via boschshc-hass) and standalone scripts. It handles device discovery, service state tracking, and connection retry logic transparently. Supported devices include shutters, smart plugs, lights, thermostats, motion detectors, cameras, and various sensors; the library also manages controller-wide operations like firmware updates and intrusion/water-alarm systems.
Use it for
- Build a Home Assistant integration or custom home automation dashboard that polls Bosch Smart Home devices over the local network without cloud dependency.
- Trigger Bosch device actions (shutter control, light switching, thermostat adjustment) from a Python script or event handler on the same network.
- Monitor firmware updates and device health status (battery level, communication quality, tamper alerts) from a centralized Python application.
- Implement custom automation rules or presence simulation logic that reacts to Bosch sensor state changes via callback subscriptions.
- Integrate Bosch Smart Home devices into a broader home automation platform that requires local-network-only operation for privacy or reliability.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The library is actively maintained, has low install friction, carries no known vulnerabilities, and uses a permissive license. Install it if you own Bosch Smart Home Controller hardware and need programmatic local control without cloud dependency. The reverse-engineered endpoints are explicitly documented as such, so verify compatibility with your specific SHC generation before relying on firmware-update or automation-rule features in production.
Install
boschshcpy on PyPI
Before you install
Low friction: pure Python wheel with four runtime dependencies (cryptography, getmac, requests, zeroconf). Actively maintained with a release 9 days ago; repository shows 72 stars and no archived status.
Requires Python ≥ 3.10. Client certificate registration via boschshc_registerclient CLI tool requires physical access to the SHC device (press front button until LED flashes) and the device password.
License in practice
BSD 3-Clause (permissive): you may use, modify, and distribute this library freely in commercial and private projects, provided you retain the license notice and disclaimer.
Quickstart
pip install boschshcpy
import boschshcpy
session = boschshcpy.SHCSession("192.168.x.x", "cert.pem", "key.pem")
session.information.summary()
session.start_polling()
# ... your code ...
session.stop_polling()
Verify before relying
- Whether the library's reverse-engineered endpoints (firmware updates, automation rules, hydraulic balancing) remain stable across SHC firmware versions.
- Real-world performance and reliability of the long-poll mechanism under sustained network interruptions.
- Compatibility with all Bosch Smart Home Controller hardware generations currently in the field.
Package facts
| License | bsd-3-clause permissive |
| Python support | Supports the current Python release <4,>=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 4 packagescryptographygetmacrequestszeroconf |
| Maintenance | Actively maintained 9 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 185,709 / month, #10,002 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3 |
Evidence: boschshcpy-0.6.8-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “bosch smart home controller api”
- boschshcpyPython client library for the Bosch Smart Home Controller local REST…
- home-connect-asyncAn async Python SDK that connects to the BSH Home Connect API to…
- pyControl4An async library for controlling Control4 smart home systems through…
Give your agent the search over MCP, or paste the wish link into any chat.
More WWW/HTTP packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.
HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.
Install it if you are building new projects or modernizing existing ones that rely on HTTP.
A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.
aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.
Install it if you need async HTTP client or server capabilities in asyncio-based applications.
See also homematicip · pyswitchbee · home-connect-async · python-ecobee-api · pyhiveapi · tplink-omada-client · aiohue · python-miio · zigpy · pyprusalink