开始使用
  • English
  • 简体中文
前往官网
开始使用
  • English
  • 简体中文
前往官网
  • 开始使用
  • 核心概念
  • 开发指南
  • 设备能力与事件参考
  • API 参考
    • 公共约定
    • HTTP 开发规范
    • accessToken(管理员 Token)
    • API 请求示例
    • 错误码
    • 接口调用限额
    • 账号与授权
      • OAuth 授权 API
        • oauthTokenV2:换取或刷新 OAuth token
        • getStreamUrl:获取 RTSP 拉流地址
      • createSubAccount(创建子账号)
      • getOpenIdByAccount(根据子账号获取 openId)
      • deleteSubAccount(删除子账号)
      • listSubAccount(分页查询子账号)
      • subAccountToken(获取子账号 token)
      • addPolicy(添加子账号权限)
      • clearPolicy(清除子账号授权策略)
      • queryDevicePermission(查询子账号设备维度权限)
      • deleteDevicePermission(删除子账号设备权限)
      • listSubAccountDevice(分页查询子账号有权限的设备)
    • 设备接口
    • 直播地址
    • 推送配置
    • 云存储
    • 资源池额度管理
    • 旧版接口(不再维护)
  • SDK 与工具
  • 方案
  • 平台与支持
本页目录
功能说明
请求地址
鉴权
grant_type:authorization_code
grant_type:refresh_token
响应(成功)
错误响应
相关
错误码
相关参考

oauthTokenV2:换取或刷新 OAuth token

oauthTokenV2:换取或刷新 OAuth token

功能说明

在 H5 授权完成后,用授权码换取终端用户 OAuth access token,或在过期前用 refresh_token 刷新。本接口使用 form-urlencoded 请求体与 HTTP Basic 鉴权(OAuth 项目 Access Key / Secret Key),不是多数 Open API 使用的标准 JSON 公共请求体(含 system 对象)。

授权码回调流程见 OAuth 2.0 授权。

请求地址

POST https://openapi-[DataCenter].easy4ip.com/openapi/oauthTokenV2

[DataCenter] 替换为开发者账号所属数据中心(见 开发规范)。

鉴权

请求头值
AuthorizationBasic + Base64(ProjectAccessKey:ProjectSecretKey)
Content-Typeapplication/x-www-form-urlencoded

参考:RFC 2617 §2。

grant_type:authorization_code

用回调 URL 中的授权码换取 token。

表单参数

参数必填说明
grant_type是authorization_code
code是回调 URL 中 code 参数
redirect_uri否可选。与 OAuth 项目控制台配置的回调 URL 一致。开放平台换 token 接口不校验该字段;仅在客户端或授权服务要求时提交。

请求示例

POST /openapi/oauthTokenV2 HTTP/1.1
Host: openapi-fk.easy4ip.com
Authorization: Basic <base64(ProjectAccessKey:ProjectSecretKey)>
Content-Type: application/x-www-form-urlencoded

grant_type=authorization_code&code=XXXXXXXXXXXXXXXXXX&redirect_uri=https%3A%2F%2Fclient%2Eexample%2Ecom%2Fcb

grant_type:refresh_token

在 expires_in 到期前刷新 access token。

表单参数

参数必填说明
grant_type是refresh_token
refresh_token是上次成功响应中的 refresh_token

请求示例

POST /openapi/oauthTokenV2 HTTP/1.1
Host: openapi-fk.easy4ip.com
Authorization: Basic <base64(ProjectAccessKey:ProjectSecretKey)>
Content-Type: application/x-www-form-urlencoded

grant_type=refresh_token&refresh_token=QWU3723JDDUFH2382

响应(成功)

HTTP 200,Content-Type: application/json;charset=UTF-8,Cache-Control: no-store,Pragma: no-cache。

字段类型说明
access_tokenString终端用户 access token(Ot_ 前缀),bearer
token_typeStringbearer
expires_inNumber有效期(秒),7200
refresh_tokenString用于下次刷新
scopeString当前为 all

响应示例

{
  "access_token": "Ot_xxxxxxxxxxxxxxxxxx",
  "token_type": "bearer",
  "expires_in": 7200,
  "refresh_token": "QWU3723JDDUFH2382",
  "scope": "all"
}

错误响应

本接口采用 OAuth 2.0 token 错误格式,不是标准 Open API 的 result 响应结构。失败时 HTTP 状态码常为 200 或 400,响应体为带 error 字段的 JSON。

error说明
invalid_request缺少或空的 grant_type、code、refresh_token;Authorization 头格式错误
invalid_clientOAuth 项目 Access Key / Secret Key 无效,或换 token 失败
unsupported_grant_typegrant_type 不是 authorization_code 或 refresh_token

相关

  • getStreamUrl
  • OAuth 授权模块

错误码

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

网关与鉴权(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。

相关参考

  • 开发规范
  • 公共约定
  • 本模块索引
接口调用限额
getStreamUrl:获取 RTSP 拉流地址