通过Google SDM API访问NEST摄像头获取设备列表为空如何解决
Google SDM API拉取NEST设备为空排查方案
核心排查步骤
- 先确认OAuth配置正确性:如果你的GCP应用OAuth同意屏幕处于测试状态,必须将你用于绑定NEST设备的谷歌账号加入测试用户列表,否则即使拿到access_token也没有访问设备的权限。
- 核对scope配置:授权请求中必须携带
https://www.googleapis.com/auth/sdm.service这个核心scope,缺失该scope会导致没有设备读取权限。 - 确认项目ID正确性:拉取设备接口中的项目ID为SDM设备访问控制台生成的项目ID,不是普通GCP控制台的项目ID,二者混淆是最常见的报错原因。
- 核对授权账号一致性:授权时登录的谷歌账号,必须和谷歌Home app中绑定NEST摄像头的账号为同一个,且设备在谷歌Home app中可正常访问。
- 检查请求格式:正确的设备拉取请求格式如下:
GET https://smartdevicemanagement.googleapis.com/v1/enterprises/<你的SDM项目ID>/devices Header: Authorization: Bearer <你的access_token> - 确认授权流程中所有权限勾选:账号关联弹窗出现时,必须勾选所有对应NEST设备的访问权限,漏选权限会导致接口返回空列表。
你可以对照以上步骤逐一排查,90%以上的空返回问题都是上述配置错误导致的。
你提供的API返回结果截图如下:
内容的提问来源于stack exchange,提问作者Deepak Singh
相关产品推荐
相关产品推荐

