3. agent管理API
API列表
编号 | API名称 | 路径 | 版本 |
---|---|---|---|
1.1 | 上传agent包 | /v1/iot/gateway/agent/package/upload | 1.0 |
1.2 | 新增agent | /v1/iot/gateway/agent/add | 1.0 |
1.3 | agent列表 | /v1/iot/gateway/agent/list | 1.0 |
1.4 | 更新agent | /v1/iot/agent/gateway/update | 1.0 |
1.5 | 删除agent | /v1/iot/gateway/agent/delete | 1.0 |
1.6 | agent详情 | /v1/iot/gateway/agent/detail | 1.0 |
1.7 | agent id 列表 | /v1/iot/gateway/agent/id/list | 1.0 |
1.8 | 新增agent名称 | /v1/iot/gateway/agent/name/add | 1.0 |
1.9 | 删除agent名称 | /v1/iot/gateway/agent/name/delete | 1.0 |
1.10 | 修改agent名称 | /v1/iot/gateway/agent/name/update | 1.0 |
1.11 | agent版本发布 | /v1/iot/gateway/agent/deploy | 1.0 |
1.12 | agent ota | /v1/iot/gateway/agent/upgrade | 1.0 |
1.13 | 根据agent获取模板id | /v1/iot/gateway/agent/get/productId/by/agentId | 1.0 |
1.14 | 修改agent配置 | /v1/iot/gateway/agent/config/put | 1.0 |
1.15 | agent配置列表 | /v1/iot/gateway/agent/config/get | 1.0 |
1.16 | 加载agent配置 | /v1/iot/gateway/agent/config/reload | 1.0 |
1.17 | 获取agent的版本数据 | /v1/iot/gateway/agent/queryAgentVersionList | 1.0 |
1.18 | 获取agent定义的信息 | /v1/iot/gateway/agent/queryAgentList | 1.0 |
API调用
1.1: 上传agent包
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/package/upload
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
file | body | file | y |
请求Body描述(Form表单)
{
"file": "agent.tar.gz"
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
"packageMd5": "f2e91a565a89c5a7fabd69077a00a231",
"url": "https://mideazy-test-public.oss-cn-hangzhou.aliyuncs.com/iot_box_image/app.000000010412.tar.bz"
},
"message": "success"
}
1.2: 添加agent
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/add
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
deviceCategoryId | body | string | y | 设备分类id |
deviceSubCategoryId | body | string | y | 设备类型id |
agentName | body | string | y | |
agentVersion | body | string | y | |
manufactVersion | body | string | y | 平台/SDK |
deviceProductId | body | string | y | 设备模板 |
imageUrl | body | string | y | 镜像地址 |
packageDesc | body | string | y | 备注 |
packageMd5 | body | string | y |
请求Body描述(非Form表单数据)
{
"msgId":"123123123",
"deviceCategoryId": 1,
"deviceSubCagegoryId": 7,
"agentName": "测试agent",
"agentVersion": "v1.0.0",
"manufactVersion":"sdk8",
"deviceProductId": 1,
"imageUrl":"www.google.com",
"packageDesc": "1、aaa\n2、bbb",
"packageMd5": "f2e91a565a89c5a7fabd69077a00a231"
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | y | 响应码标识 |
message | 顶层 | STRING | y | 响应消息文本 |
data | 顶层 | JSONObject | y | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
},
"message": "success"
}
1.3: agent列表
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/list
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
agentId | body | string | y | 传""表示查询所有agent |
agentName | body | string | y | 传""表示查询所有agent,传值则模糊查询 |
deviceCategoryId | body | string | y | 根据大类搜索 |
deviceSubCategoryId | body | string | y | 根据小类搜索 |
pageNo | body | int | y | |
pageSize | body | int | y |
请求Body描述(非Form表单数据)
{
"msgId": "123123123",
"agentId" : "",
"agentName": "agent12",
"deviceCategoryId":"2",
"deviceSubCategoryId":"",
"pageNo": 1,
"pageSize": 20
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
"paginator": {
"pageNo": 1,
"pageSize": 20,
"totalCount": 1
},
"resultList": [
{
"packageDesc": "1、aaa\n2、bbb",
"agentId": 2,
"agentVersionId": 11,
"agentName": "agent梯控",
"packageVersion": "v1.0.0",
"productName": "测试模板"
"releaseStatus": 0 //0:未发布,1:已发布
}
]
},
"message": "success"
}
1.4: agent更新
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/update
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
agentVersionId | body | string | y | agent软件包id |
packageDesc | body | string | y | 软件包描述 |
请求Body描述(非Form表单数据)
{
"msgId":"123123123",
"agentVersionId":12,
"packageDesc":"xxxxxxxxxx"
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
},
"message": "success"
}
1.5: 删除agent
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/delete
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
agentVersionId | body | string | y | agent软件包id |
请求Body描述(非Form表单数据)
{
"msgId": "123123123",
"agentVersionId" :12
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": "200",
"message": "success",
"data": {
}
}
1.6: agent详情
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/detail
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
agentVersionId | body | string | y | agent软件包id |
请求Body描述(非Form表单数据)
{
"msgId": "123123123",
"agentVersionId" :1
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
"imageLink": "www.google.com",
"packageDesc": "1、aaa\n2、bbb",
"manufactVersion": "sdk8",
"deviceCategoryId": 1,
"deviceProductName": "测试模板", //模板名称
"deviceProductId": 1,
"agentName": "agent捷顺门禁",
"packageVersion": "v1.0.0",
"deviceSubCategoryId": 7,
"deviceSubCategoryName": "捷顺门禁", //设备类型
"deviceCategoryName": "门禁系统" //设备分类
},
"message": "success"
}
1.7: agent id 列表
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/id/list
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y |
请求Body描述(非Form表单数据)
{
"msgId": "123123123"
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
"resultList": [
{
"agentName": "agent捷顺门禁",
"id": 1 //agent id
},
{
"agentName": "agent梯控",
"id": 2
},
{
"agentName": "测试agent3",
"id": 3
},
{
"agentName": "测试agent4",
"id": 4
},
{
"agentName": "测试agent5",
"id": 5
},
{
"agentName": "测试agent6",
"id": 6
},
{
"agentName": "测试agent7",
"id": 7
},
{
"agentName": "测试agent8",
"id": 8
}
]
},
"message": "success"
}
1.8: 新增agent名称
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/name/update
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
agentName | body | string | y |
请求Body描述(非Form表单数据)
{
"msgId":"123123123",
"agentName": "agentName"
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
},
"message": "success"
}
1.9: 删除agent名称
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/name/delete
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
agentId | body | int | y |
请求Body描述(非Form表单数据)
{
"msgId":"123123123",
"agentId":12
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
},
"message": "success"
}
1.10: 更新agent名称
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/name/update
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
agentId | body | int | y | |
agentName | body | string | y |
请求Body描述(非Form表单数据)
{
"msgId":"123123123",
"agentId":12,
"agentName":"测试agent123"
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
},
"message": "success"
}
1.11: agent版本发布
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/deploy
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
packageVersionId | body | int | y | agent固件包id |
releaseStatus | body | int | y | 0:未发布,1:已发布 |
请求Body描述(非Form表单数据)
{
"msgId":"123123123",
"packageVersionId": 147,
"releaseStatus": 1
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {},
"message": "success"
}
1.12: agent ota
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/upgrade
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
agentInstanceId | body | string | y | agent实例id |
latestPackageVersionId | body | string | y | agent最新固件包id |
latestPackageImageUrl | body | string | y | 镜像地址 |
请求Body描述(非Form表单数据)
{
"msgId":"123123123",
"agentInstanceId": 14,
"latestPackageVersionId": 208,
"latestPackageImageUrl": "www.baidu.com"
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {},
"message": "success"
}
1.13: 根据agent获取模板id
描述
请求信息
HTTP协议:HTTP,HTTPS
uri:/v1/iot/gateway/agent/get/productId/by/agentId
方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | body | string | y | |
agentId | body | string | y | agent id |
请求Body描述(非Form表单数据)
{
"msgId":"123123123",
"agentId": 14,
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | STRING | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"data": {
"productId": 3 //如果当前agentId尚未关联模板,返回的data:{}
"productName": "xxxx"
},
"message": "success"
}
1.14 修改agent配置
描述
请求信息
URI:/v1/iot/gateway/agent/config/put 方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
nvrConfigs | BODY | ARRAY | 是 | NVR配置列表 |
userName | nvrConfigs | String | 是 | 用户名 |
password | nvrConfigs | String | 是 | 密码 |
host | nvrConfigs | String | 是 | IP地址 |
port | nvrConfigs | String | 是 | 端口 |
brand | nvrConfigs | String | 是 | 厂商:1海康,2大华 |
name | nvrConfigs | String | 是 | 别名 |
projectId | BODY | String | 是 | 项目ID |
productId | BODY | String | 是 | 模板ID |
请求Body描述(非Form表单数据)
{
"productId": "",
"projectId": "",
"nvrConfigs": [{
"userName": "",
"password": "",
"host": "",
"port": "",
"brand": "",
"name": ""
}]
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | INTEGER | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"message": "success",
"data": {
}
}
1.15 获取agent配置
描述
请求信息
URI:/v1/iot/gateway/agent/config/get 方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
projectId | BODy | String | 是 | 项目ID |
productId | BODY | String | 是 | 产品ID |
请求Body描述(非Form表单数据)
{
"projectId": "",
"productId": ""
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | INTEGER | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
nvrConfigs | 顶层 | ARRAY | 是 | NVR配置列表 |
userName | nvrConfigs | String | 是 | 用户名 |
password | nvrConfigs | String | 是 | 密码 |
host | nvrConfigs | String | 是 | IP地址 |
port | nvrConfigs | String | 是 | 端口 |
brand | nvrConfigs | String | 是 | 厂商:1海康,2大华 |
name | nvrConfigs | String | 是 | 别名 |
返回结果示例
{
"code": 200,
"message": "success",
"data": {
"nvrConfigs": [{
"userName": "",
"password": "",
"host": "",
"port": "",
"brand": "",
"name": ""
}]
}
}
1.16 加载agent配置
描述
请求信息
URI:/v1/iot/gateway/agent/config/reload 方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
projectId | BODy | String | 是 | 项目ID |
productId | BODY | String | 是 | 产品ID |
请求Body描述(非Form表单数据)
{
"projectId": "",
"productId": ""
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | INTEGER | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code": 200,
"message": "success",
"data": {
}
}
1.17 获取agent的版本数据
描述
请求信息
URI:/v1/iot/gateway/agent/queryAgentVersionList 方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
msgId | BODy | String | 是 | 消息id |
agentDefinitionId | BODY | String | 是 | agent的id |
请求Body描述(非Form表单数据)
{
"msgId": "4c928438-b522-e944-b6c6-9d674ccc5ab0",
"agentDefinitionId": "2"
}
返回信息
返回参数类型
JSON
返回参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
code | 顶层 | INTEGER | 是 | 响应码标识 |
message | 顶层 | STRING | 是 | 响应消息文本 |
data | 顶层 | JSONObject | 是 | 响应数据对象 |
返回结果示例
{
"code":200,
"data":{
"resultList":[
{
"manufactVersion":"DH_H500",
"packageMd5":"6de29c9449b865029a8595ae9af2af62",
"packageVersion":"1.0.1",
"updateTime":1604049294000,
"imageLink":"https://mideazy-test-public.oss-cn-hangzhou.aliyuncs.com/iot_box_image/ADB.zip",
"latestVersionFlag":0,
"packageDesc":"1.0.0",
"createBy":"2158289",
"agentDefinitionId":2,
"createTime":1604049294000,
"updateBy":"2158289",
"deviceProductId":"90f7c8364eaa4aadae4c7f05ace3130c",
"id":2,
"packageName":"大华H500门禁1.0.0",
"status":1
}
]
},
"message":"success"
}
1.18 获取agent的信息
描述
请求信息
URI:/v1/iot/gateway/agent/queryAgentList 方法:POST
请求参数
名称 | 位置 | 类型 | 必填 | 描述 |
---|---|---|---|---|
gatewayInstanceId | body | string | y | 网关实例id |
请求Body描述(非Form表单数据)
```
### *返回信息*
#### 返回参数类型
JSON
### *返回参数*
| 名称 | 位置 | 类型 | 必填 | 描述 |
|------------|------------|------------|------|--------------------|
| code | 顶层 | INTEGER | 是 | 响应码标识 |
| message | 顶层 | STRING | 是 | 响应消息文本 |
| data | 顶层 | JSONObject | 是 | 响应数据对象 |
#### 返回结果示例
`
{ "code": 200, "data": [ { "id": 1, "agentName": "海康大华视频", "createTime": "2020-10-30 16:18:57", "createBy": "2055507", "updateTime": "2020-10-30 16:18:57", "updateBy": "2055507" } ], "message": "success" } ````