如何获取特定锁系统关联的ownerAccountId以调用BoundLocks查询接口
如何获取与特定锁系统关联的
ownerAccountId 方案1:调用全局锁查询端点反向匹配
- 同体系的开放API一般会提供不需要传入账户参数的全局锁资源查询接口,常见路径为
/api/v1/BoundLocks或/api/v1/Devices/Locks,调用时传入你的应用授权凭证,就能返回所有你有权限访问的锁列表,返回结果的字段中会自带每个锁对应的ownerAccountId,你可以通过锁的唯一标识(比如锁ID、物理序列号)过滤出目标锁对应的账户ID。 - 如果调用全局接口返回结果分页,你可以直接传入锁的序列号/名称作为查询参数,缩小返回范围,快速定位到目标记录。
方案2:遍历已授权账户的锁列表匹配
如果你没有全局锁接口的调用权限,可以按以下步骤操作:
- 先调用应用权限范围内的账户列表接口,常见路径为
/api/v1/Owners,获取所有向你的应用授权过的账户的ownerAccountId集合 - 遍历该ID集合,逐个调用
/api/v1/Owners/{ownerAccountId}/BoundLocks接口,查询每个账户下的绑定锁列表 - 匹配锁的唯一标识(如
deviceSn、lockId)和你要查询的特定锁系统,命中后对应的ownerAccountId就是目标值
注意:如果API服务端有调用频率限制,遍历时建议加适当的延迟,避免触发限流规则。
内容的提问来源于stack exchange,提问作者Alvin Mutisya
相关产品推荐
相关产品推荐

