Skip to content

HTTP API 文档

目录


认证相关接口

用户登录

  • 方法: POST
  • 路径: /api/nauth/login
  • 参数:
    json
    {
      "username": "admin",
      "password": "密码"
    }
  • 成功响应:
    json
    {
      "token": "JWT令牌"
    }
  • 失败响应: 401 Unauthorized

修改密码

  • 方法: POST
  • 路径: /api/user/setPwd
  • 参数:
    json
    {
      "oldPwd": "原密码",
      "newPwd": "新密码"
    }
  • 成功响应: 200 OK
  • 失败响应: 401 Unauthorized

获取用户信息

  • 方法: GET
  • 路径: /api/user
  • 响应:
    json
    {
      "id": "用户ID",
      "email": "user@localhost",
      "authority": "TENANT_ADMIN",
      "tenantId": "租户ID",
      "customerId": "客户ID"
    }

设备管理

创建设备

  • 方法: POST
  • 路径: /api/device
  • 参数: 设备JSON对象
  • 响应: 创建后的设备对象

删除设备

  • 方法: DELETE
  • 路径: /api/device/{设备ID}
  • 响应: 200 OK

根据凭证获取设备

  • 方法: GET
  • 路径: /api/device/cre/{设备凭证}
  • 响应: 设备对象

批量获取设备

  • 方法: GET
  • 路径: /api/device/ids
  • 参数: ids=id1,id2,id3
  • 响应: 设备列表

设备RPC调用

  • 方法: POST
  • 路径: /api/device/rpc/{设备ID}
  • 参数: RPC命令对象
  • 响应: RPC响应对象

获取设备属性

  • 方法: GET
  • 路径: /api/device/attributes
  • 参数:
    • deviceId: 设备ID
    • scope: 属性作用域 (默认: CLIENT_SCOPE)
    • keys: 属性键列表 (逗号分隔)
  • 响应: 属性键值对

媒体资源管理

批量获取媒体资源

  • 方法: GET
  • 路径: /api/mhoss/ids
  • 参数: ids=id1,id2,id3
  • 响应: MHOss列表(包含局域网访问URL)

获取未使用的媒体资源

  • 方法: GET
  • 路径: /api/mhoss/notUsed
  • 参数:
    • startTime: 起始时间戳
    • endTime: 结束时间戳
    • page: 页码
    • pageSize: 每页数量
    • textSearch: 搜索文本
  • 响应: 分页的MHOss列表(包含局域网访问URL)

删除媒体资源

  • 方法: DELETE
  • 路径: /api/mhoss/ids
  • 参数: ids=id1,id2,id3
  • 响应: 删除结果

创建/更新媒体资源

  • 方法: POST
  • 路径: /api/mhoss
  • 参数: MHOss对象
  • 响应: 创建/更新后的MHOss对象

节目管理

获取节目详情

  • 方法: GET
  • 路径: /api/nauth/mhcast/{节目ID}
  • 响应: MHCast对象(媒体资源包含局域网URL)

删除节目

  • 方法: DELETE
  • 路径: /api/mhcast/{节目ID}
  • 响应: 200 OK

创建/更新节目

  • 方法: POST
  • 路径: /api/mhcast
  • 参数: MHCast对象
  • 响应: 创建/更新后的MHCast对象

通知节目变化

  • 方法: GET
  • 路径: /api/mhcast/notify/{节目ID}
  • 响应: 通知结果

获取节目关系列表

  • 方法: GET
  • 路径: /api/mhcast/castRelations
  • 参数: deviceId=设备ID
  • 响应: 节目关系列表

实体查询

查询实体

  • 方法: POST
  • 路径: /api/entitiesQuery/find
  • 参数: EntityDataQuery对象
  • 响应: 分页的实体数据结果

关系管理

创建关系

  • 方法: POST
  • 路径: /api/relation
  • 参数: EntityRelation对象
  • 响应: 创建的关系对象

批量创建关系

  • 方法: POST
  • 路径: /api/relation/list
  • 参数: 关系对象列表
  • 响应: 200 OK

删除关系

  • 方法: DELETE
  • 路径: /api/relation
  • 参数: EntityRelation对象
  • 响应: 200 OK

批量删除关系

  • 方法: DELETE
  • 路径: /api/relation/ids
  • 参数:
    json
    {
      "direction": "FROM|TO",
      "relationType": "关系类型",
      "relationTypeGroup": "关系组",
      "entityIdList": ["实体ID1", "实体ID2"]
    }
  • 响应: 删除数量

查询关系列表

  • 方法: GET
  • 路径: /api/relations
  • 参数:
    • 方式1: fromId=来源ID&fromType=来源类型
    • 方式2: toId=目标ID&toType=目标类型
  • 响应: 关系列表

文件上传

上传文件

  • 方法: POST
  • 路径: /upload
  • 格式: multipart/form-data
  • 字段: uploadfile (文件字段)
  • 响应:
    json
    {
      "provider": "LOCAL",
      "key": "文件存储key",
      "thumbnail": "base64缩略图(如果是图片)"
    }

其他接口

获取当前时间戳

  • 方法: GET
  • 路径: /api/nauth/realts
  • 响应: 当前时间戳字符串

设备Hello检测

  • 方法: GET
  • 路径: /api/nauth/hello
  • 参数:
    • deviceCre: 设备凭证 (可选)
    • port: 端口号 (可选)
  • 响应:
    json
    {
      "update": "是否更新了局域网地址",
      "deviceCre": "服务器设备凭证(当请求未提供时)"
    }

生成动态设备码(DDC)

  • 方法: POST
  • 路径: /api/nauth/getDdc
  • 响应:
    json
    {
      "ddc": "动态设备码",
      "expireInMin": 10,
      "checkInSec": 5
    }

检查DDC状态

  • 方法: GET
  • 路径: /api/nauth/checkDdc
  • 参数: ddc=动态设备码
  • 响应:
    json
    {
      "verifiedTs": "验证时间戳(0表示未验证)"
    }

输入DDC验证码

  • 方法: POST
  • 路径: /api/device/inputDdc
  • 参数:
    • Query: ddc=动态设备码
    • Body: 验证码字符串 或 JSON {"code": "验证码"}
  • 响应: 验证结果