--- id: boschshcpy version: "0.6.8" license: bsd-3-clause license_treatment: permissive maintenance: active --- # boschshcpy — Bosch Smart Home Controller API Python Library License: permissive · Maintenance: active · Downloads: 185.7K/mo ## 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 above — verify before relying. Python client library for the Bosch Smart Home Controller local REST API, communicating directly with the controller over mutual-TLS on the local network without requiring a cloud connection or Bosch account. 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 pip install boschshcpy uv add boschshcpy poetry add boschshcpy ## Installing boschshcpy 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. 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() 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. 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_current - Install friction: low - Maintenance: active - Downloads: 185.7K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags bosch smart home controller api, local home automation python client, mtls rest api home control, zigbee homeMaticIP device integration, bosch shc python library, local network home automation, smart home device polling, home-automation, local-network-api, mtls-client [View on SkillFed](https://skillfed.io/packages/boschshcpy) · [View on PyPI](https://pypi.org/project/boschshcpy/)