开始使用
  • English
  • 简体中文
前往官网
开始使用
  • English
  • 简体中文
前往官网
  • 开始使用
  • 核心概念
  • 开发指南
  • 设备能力与事件参考
  • API 参考
    • 公共约定
    • HTTP 开发规范
    • accessToken(管理员 Token)
    • API 请求示例
    • 错误码
    • 接口调用限额
    • 账号与授权
    • 设备接口
      • bindDevice(绑定设备)
      • unBindDevice(解绑设备)
      • device.detail.list(按 ID 批量详情)
      • device.detail.page(分页详情)
      • device.status.get(查询在离线)
      • device.prebind.get(绑定前信息)
      • device.bindstate.get(是否已绑定)
      • subAccountDeviceInfo(获取子账号指定授权设备详情)
      • subAccountDeviceList(分页获取子账号授权设备详情)
      • setDeviceSnap(设备抓图)
      • setDeviceSnapEnhanced(设备抓图增强)
      • timeZoneConfigByDay(按日期设置设备时区夏令时)
      • timeZoneConfigByWeek(按周设置设备时区夏令时)
      • timeZoneQueryByDay(按日查询设备时区夏令时)
      • timeZoneQueryByWeek(按周查询设备时区夏令时)
    • 直播地址
    • 推送配置
    • 云存储
    • 资源池额度管理
    • 旧版接口(不再维护)
  • SDK 与工具
  • 方案
  • 平台与支持
本页目录
功能说明
请求地址
请求格式
请求参数
请求示例
返回 data 字段
响应示例
错误码
相关参考

bindDevice(绑定设备)

bindDevice:绑定设备

功能说明

将设备绑定到指定账号。

指南:接入摄像机 · 绑定状态。下一篇:unBindDevice(解绑设备) · 设备添加。

请求地址

https://openapi-[DataCenter].easy4ip.com/openapi/bindDevice

请求格式

POST JSON 请求体见 请求约定;签名见 签名。

请求参数

参数名参数类型是否必填默认值合法取值参数说明
tokenString是管理员 accessToken
deviceIdString是设备序列号
codeString是见下方说明设备验证码或密码
encryptCodeString否加密后的验证码或密码;与 code 二选一,同时传时以 code 为准

code 取值规则(统称设备验证码,不同机型传值不同):

  1. 设备具备 auth 能力集:传设备初始化后的设备密码;
  2. 不具备 auth 能力集,且机身标签(或二维码)上有 6 位安全码:传该 6 位数字;
  3. 不具备 auth 能力集且无 6 位安全码:可传空字符串。

密码加密(encryptCode) 计算公式:Base64(AES256_CBC(code, Key[], IV[]))

  1. 算法:AES/CBC/PKCS5Padding;
  2. code 为明文验证码或密码;
  3. Key[] 为密钥字节数组;
  4. key = LowerCase(MD5(UpperCase(Base64(KDF(deviceId, MD5(appSecret)))))),KDF 为 PBKDF2WithHmacSHA256,迭代 1200 次,导出 256 位密钥;
  5. IV[] = MD5(appSecret)(Java MessageDigest MD5)。

示例:deviceId=TESTQWERXXXX,appSecret=12345qwert67890asdfg12345qwert,明文 code=Admin123,则 encryptCode=5ZtW6b0Ttf1zOiFhqynKaA==。

请求示例

{
 "system":{
 "ver":"1.0",
 "appId":"lcdxxxxxxxxx",
 "sign": "xjhCQBoJ9hRDsCjyDcHjtDNzRZ3ZJezcawsfWeiaoxU=",
 "time":1603352833,
 "nonce":"b52eb20c-c836-45d7-9a98-cded3cf2fa9b"
 },
 "id":"5d5c16ec-0ee4-4880-88dd-6ce602d1e138",
 "params":{
 "token":"At_00000ad9e6e87f0142eb92e207aec46a",
 "deviceId":"TESTQWERXXXX",
 "code":"Admin123"
 }
}

返回 data 字段

无返回数据。

响应示例

{
 "result":{
 "msg":"操作成功.",
 "code":"0"
 },
 "id":"5d5c16ec-0ee4-4880-88dd-6ce602d1e138"
}

错误码

本接口可能返回下列码;完整分组见 错误码 与 能力错误码。

网关与鉴权(SN / TK / OP)

错误码错误码说明下一步
SN1001签名校验异常按 HTTP 开发规范 核对 sign
TK1002token 无效或过期重新获取 accessToken
OP1002缺少必填参数补必填字段
OP1003参数不合法按本页参数表核对
OP1009权限不足核对 token 与设备绑定/分享权限
OP1013接口总次数超限降低调用频率
OP1014接口日限额超限见 接口调用限额
DV1007设备离线等设备上线

更多见 错误码 · OP/SN/TK。

子账号(SUB)

错误码错误码说明下一步
SUB1001–SUB1002子账号无接口权限在 addPolicy 中补策略
SUB1005子账号 token 过期重新 subAccountToken
SUB1006子账号与设备无授权核对 Resource 与设备序列号
SUB1008子账号未绑定应用先创建并绑定子账号

更多见 错误码 · SUB。

设备绑定(DV10xx)

错误码错误码说明下一步
DV1001已被其他账号绑定解绑或换设备
DV1002设备不存在核对序列号
DV1003已被当前账号绑定无需重复绑定
DV1005验证码错误核对设备机身码
DV1008绑定数量超限解绑冗余设备
DV1011设备未绑定先执行绑定
DV1029设备已被绑定勿重复绑定

更多见 错误码 · DV。

相关参考

  • 开发规范
  • 公共约定
  • 本模块索引
listSubAccountDevice(分页查询子账号有权限的设备)
unBindDevice(解绑设备)