SwitchBot OpenAPI

🏠 官方 API 掌控全屋 SwitchBot 设备

通过 SwitchBot 官方 OpenAPI 远程控制智能设备,支持 Bot、Curtain、Lock、Meter 等全系列硬件,需配置 TOKEN 与 SECRET。

收藏
11.8k
安装
2.6k
版本
1.0.1
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

SwitchBot OpenAPI Skill 允许用户通过 HTTPS 调用官方 v1.1 API,实现对 SwitchBot 生态设备的远程操控。支持的功能包括:设备列表查询、实时状态获取、以及丰富的设备指令(开关、按压、窗帘开合百分比、温度设定、门锁锁定/解锁等)。使用方式上,推荐直接调用提供的 CLI 脚本(Node.js 或 Bash),脚本已封装 HMAC-SHA256 签名计算、时戳与随机数生成,避免手动处理加密细节。

显著优点

1. 官方接口,稳定可靠:基于 SwitchBot 官方 OpenAPI,非逆向工程,协议更新与设备兼容性有保障。
2. 脚本即开即用:提供 Node.js CLI 与 Bash curl 模板,覆盖列表、状态、指令三大高频场景,降低接入门槛。

3. 区域适配:支持 global/na/eu/jp 多区域 endpoint,便于海外部署。

4. 场景兜底机制:针对部分设备(如特定型号扫地机器人)未开放直接指令的情况,提供 Scenes API 作为替代方案。

5. 安全预检:CLI 内置预飞检查(preflight guard),对蓝牙类设备强制校验 enableCloudServicehubDeviceId,避免无效请求。

潜在缺点与局限性

1. 依赖云端 Hub:蓝牙设备(Bot、Lock、Curtain 等)必须绑定 Hub Mini/Plus 并开启云服务,否则无法通过 OpenAPI 控制。
2. 部分设备指令缺失:如某些扫地机型号未在 v1.1 中暴露直接命令,需退而求其次使用场景执行,灵活性受限。

3. 签名时效敏感:HMAC 签名基于毫秒级时间戳,容器/系统时间漂移可能导致 100/190 授权错误,需保证 NTP 同步。

4. 无本地回退:纯云端方案,断网或 SwitchBot 服务器故障时完全失效,无局域网控制选项。

适合人群

  • 已部署 SwitchBot 硬件生态、希望实现自动化或远程控制的家庭用户与极客玩家
  • 需要将 SwitchBot 设备接入自有 Home Assistant、Node-RED 或其他 IoT 平台的开发者
  • 寻求官方稳定接口、不愿维护逆向协议的企业级智能家居集成商

常规风险

  • 凭证泄露风险:TOKEN 与 SECRET 若硬编码或日志打印,可能导致设备被未授权操控(尤其涉及门锁解锁)。建议通过环境变量注入,并启用敏感操作二次确认。
  • 误操作风险:窗帘、门锁等执行类指令无物理确认,远程误触可能造成隐私暴露或安全隐患。
  • API 限流与稳定性:官方未公开速率限制细节,高频调用可能触发限流;服务可用性依赖 SwitchBot 云端 SLA。
  • 地域合规:部分区域(如欧盟)对智能家居数据跨境传输有 GDPR 等合规要求,需确认数据存储位置与处理条款。

SwitchBot OpenAPI 内容

references文件夹
scripts文件夹
手动下载zip · 10.6 kB
commands.mdtext/markdown
请选择文件