1. hapib接口文档

1.1. 文档说明

本文档为hapib组件API接口说明

1.2. 修订记录

日期 文档版本 修订内容 修改人
2020-10-29 v0.1 添加Event、Retainer接口 lizefang
2020-11-28 v0.2 添加Service接口,Statistics接口 cdp
2020-12-23 v0.3 统计接口补全数据,添加排序功能(5.1.4) cdp

1.3. 接口约定

规则 描述
服务器域名(IP) 以部署为准,如: https://xxx.mixiot.top
接口鉴权 令牌机制,详情请阅接口鉴权
字符编码 统一采用UTF-8编码
响应格式 统一采用JSON格式

1.4. 响应说明

1.4.1. 返回码

code 含义 备注
200 请求成功 Code不为200,则说明请求失败
500 请求错误 -

1.4.2. 格式

1.单条记录

{
    "code":200,
    "msg":"success",
    "info":"",
    "result":{}
}

2.多条记录

{
    "code":200,
    "msg":"success",
    "info":"",
    "result":{
        "page_index":1,
        "page_size":20,
        "total_pages":0,
        "total_records":0,
        "data":[]
    }
}

1.5. 事件接口

1.5.1. 获取事件

请求地址:

属性
URL /api/v1/event/getItem
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
id int 编号

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/event/getItem?id=1009

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "id": 1009,
        "object_id": 1,
        "terminal_id": "1",
        "code": "3012",
        "label_en": "Sensor Fault Starts",
        "label_cn": "传感器故障出现",
        "value": "100",
        "extension_key": "",
        "extension_value": "",
        "reference": "",
        "created": "2020-10-27 01:15:25",
        "is_available": 1
    }
}

1.5.2. 获取事件列表

请求地址:

属性
URL /api/v1/event/getList
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
page_index int --- --- 查询页码(默认1)
page_size int --- --- 每页记录数(默认20)
where_and string --- --- AND查询条件
where_or string --- --- OR查询条件
where_in string --- --- IN查询条件

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/event/getList?where_and=[["label_en","LIKE","%Sensor%"],["id",">","1"]]&where_or=[["id","=","1"],["id",">","1"]]&where_in=["id","1009,1003"]&page_index=1&page_size=10

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "page_index": 1,
        "page_size": 10,
        "total_pages": 1,
        "total_records": 1,
        "data": [
            {
                "id": 1009,
                "object_id": 1,
                "terminal_id": "1",
                "code": "3012",
                "label_en": "Sensor Fault Starts",
                "label_cn": "传感器故障出现",
                "value": "100",
                "extension_key": "",
                "extension_value": "",
                "reference": "",
                "created": "2020-10-27 01:15:25",
                "is_available": 1
            }
        ]
    }
}

1.6. 标签接口

1.6.1. 获取标签

请求地址:

属性
URL /api/v1/retainer/getItem
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
id int --- --- 编号

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/retainer/getItem?id=1099

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "id": 1099,
        "object_id": 1,
        "terminal_id": "1",
        "project_id": 1,
        "class_id": "1",
        "code": "SF",
        "label_en": "Sensor Fault",
        "label_cn": "传感器故障",
        "retained": "0",
        "opened_at": "2020-10-27 01:15:25",
        "close_at": "2020-10-27 01:15:27",
        "elapsed": "2s",
        "reference": "",
        "created": "2020-10-27 18:38:59",
        "is_available": 1
    }
}

1.6.2. 获取标签列表

请求地址:

属性
URL /api/v1/retainer/getList
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
page_index int --- --- 查询页码(默认1)
page_size int --- --- 每页记录数(默认20)
where_and string --- --- AND查询条件
where_or string --- --- OR查询条件
where_in string --- --- IN查询条件

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/retainer/getList?where_and=[["label_en","LIKE","%Sensor%"],["id",">","1"]]&where_or=[["id","=","1"],["id",">","1"]]&where_in=["id","1099,1100"]&page_index=1&page_size=10

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "page_index": 1,
        "page_size": 10,
        "total_pages": 1,
        "total_records": 2,
        "data": [
            {
                "id": 1099,
                "object_id": 1,
                "terminal_id": "1",
                "project_id": 1,
                "class_id": "1",
                "code": "SF",
                "label_en": "Sensor Fault",
                "label_cn": "传感器故障",
                "retained": "0",
                "opened_at": "2020-10-27 01:15:25",
                "close_at": "2020-10-27 01:15:27",
                "elapsed": "2s",
                "reference": "",
                "created": "2020-10-27 18:38:59",
                "is_available": 1
            },
            {
                "id": 1100,
                "object_id": 2,
                "terminal_id": "2",
                "project_id": 1,
                "class_id": "1",
                "code": "SF",
                "label_en": "Sensor Fault",
                "label_cn": "传感器故障",
                "retained": "0",
                "opened_at": "2020-10-27 01:15:26",
                "close_at": "2020-10-27 01:15:28",
                "elapsed": "2s",
                "reference": "",
                "created": "2020-10-27 18:38:59",
                "is_available": 1
            }
        ]
    }
}

1.7. 服务接口

1.7.1. 添加服务

请求地址:

属性
URL /api/v1/service/add
Method post
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
name string varchar(64) --- 名称
description string varchar(255) --- 描述
object_id int int(11) --- 对象编号
category string varchar(64) --- 服务项
file string varchar(128) --- 附件路径
staff_id int int(11) --- 处理人编号
staff_name string varchar(32) --- 处理人
source string varchar(32) --- 服务来源:alert/event/fault/object
reference string varchar(64) --- 参考号
is_available int tinyint(1) --- 是否有效:1是、0否

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X POST -d '{
    "name": "test",
    "description": "test",
    "object_id": 1,
    "category": "test",
    "file": "test",
    "staff_id": 1,
    "staff_name": "test",
    "source": "test",
    "reference": "test",
    "is_availabel": 1
}' "https://xxx.mixiot.top/hapib/api/v1/service/add"

返回示例:

{
    "code": 200,
    "msg": "成功"
}

1.7.2. 删除服务

请求地址:

属性
URL /api/v1/service/delete
Method post
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
id int int(11) --- 编号

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X POST -d '{
    "id": 1011
}' "https://xxx.mixiot.top/hapib/api/v1/service/delete"

返回示例:

{
    "code": 200,
    "msg": "成功"
}

1.7.3. 获取服务

请求地址:

属性
URL /api/v1/service/getItem
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
id int int(11) --- 编号

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/service/getItem?id=1014"

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "id": 5,
        "name": "test",
        "description": "test",
        "object_id": 1,
        "category": "test",
        "file": "test",
        "staff_id": 1,
        "staff_name": "test",
        "service_at": "2020-11-27 18:24:23",
        "source": "test",
        "reference": "test",
        "created": "2020-11-28 18:24:23",
        "is_available": 1
    }
}

1.7.4. 获取服务列表

请求地址:

属性
URL /api/v1/service/getList
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
page_index int --- --- 查询页码(默认1)
page_size int --- --- 每页记录数(默认20)
where_and string --- --- AND查询条件
where_or string --- --- OR查询条件
where_in string --- --- IN查询条件

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果
+ page_index --- int 页索引
+ page_size --- int 页条数
+ total_pages --- int 总页数
+ total_records --- int 总条数
+ data --- array 返回数据列表

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/service/getList?where_and=[["name","LIKE","%25config1"],["id","<>","1001"]]&where_or=[["created","=","2020-10-21 07:24:46"],["created","=","2020-09-28 14:44:02"]]&where_in=["id","1002"]&page_index=1&page_size=10"

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "page_index": 1,
        "page_size": 10,
        "total_pages": 1,
        "total_records": 1,
        "data": [
            {
                "id": 5,
                "name": "test",
                "description": "test",
                "object_id": 1,
                "category": "test",
                "file": "test",
                "staff_id": 1,
                "staff_name": "test",
                "service_at": "2020-11-27 18:24:23",
                "source": "test",
                "reference": "test",
                "created": "2020-11-28 18:24:23",
                "is_available": 1
            }
        ]
    }
}

1.8. 数据统计

1.8.1. 事件数量统计

请求地址:

属性
URL /api/v1/statistics/eventQuantity
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
where_and string --- --- AND查询条件
where_or string --- --- OR查询条件
where_in string --- --- IN查询条件

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/statistics/eventQuantity?where_and=[["object_id","=","1001"]]"

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "data": 4506
    }
}

1.8.2. 事件数量按天统计

请求地址:

属性
URL /api/v1/statistics/eventQuantityByDay
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
day int 大于0,不传默认14 --- 统计天数
where_in string 指定格式的json字符串 --- IN查询条件

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/statistics/eventQuantityByDay?where_in=["object_id","1001,1002"]&day=5"

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "date": [
            "12/19",
            "12/20",
            "12/21",
            "12/22",
            "12/23"
        ],
        "data": {
            "12/19": 1,
            "12/20": 2,
            "12/21": 0,
            "12/22": 4,
            "12/23": 0
        }
    }
}

1.8.3. 提炼数量统计

请求地址:

属性
URL /api/v1/statistics/retainerQuantity
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
where_and string --- --- AND查询条件
where_or string --- --- OR查询条件
where_in string --- --- IN查询条件

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/statistics/retainerQuantity?where_and=[["object_id","=","1001"]]"

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "data": 4506
    }
}

1.8.4. 提炼数量按天统计

请求地址:

属性
URL /api/v1/statistics/retainerQuantityByDay
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
day int 大于0,不传默认14 --- 统计天数
where_in string 指定格式的json字符串 --- IN查询条件

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/statistics/retainerQuantityByDay?where_in=["object_id","1001,1002"]&day=5"

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "date": [
            "12/19",
            "12/20",
            "12/21",
            "12/22",
            "12/23"
        ],
        "data": {
            "12/19": 1,
            "12/20": 2,
            "12/21": 0,
            "12/22": 4,
            "12/23": 0
        }
    }
}

1.8.5. 服务类型数量按天统计

请求地址:

属性
URL /api/v1/statistics/serviceTypeQuantityByDay
Method get
Content-Type application/json

请求参数:

参数名称 是否必选 数据类型 数据约束 示例数据 描述
day int 大于0,不传默认14 --- 统计天数
where_in string 指定格式的json字符串 --- IN查询条件

响应参数:

参数名称 是否必选 数据类型 描述
code int 返回码
msg string 提示消息
info string 详细信息
result object 返回结果

请求示例

curl -H "Content-Type: application/json" -X GET "https://xxx.mixiot.top/hapib/api/v1/statistics/serviceTypeQuantityByDay?where_in=["object_id","1001,1002"]&day=5"

返回示例:

{
    "code": 200,
    "msg": "成功",
    "info": "",
    "result": {
        "date": [
            "12/21",
            "12/22",
            "12/23"
        ],
        "data": {
            "12/21": {
                "其他": 0,
                "定期保养": 0,
                "报警处理": 1,
                "故障排除": 0,
                "日常巡检": 0,
                "设备维修": 0
            },
            "12/22": {
                "其他": 0,
                "定期保养": 0,
                "报警处理": 0,
                "故障排除": 0,
                "日常巡检": 0,
                "设备维修": 0
            },
            "12/23": {
                "其他": 0,
                "定期保养": 0,
                "报警处理": 0,
                "故障排除": 0,
                "日常巡检": 0,
                "设备维修": 0
            }
        }
    }
}
© Mixlinker all right reserved,powered by Gitbook文件修订时间: 2021-03-05 16:09:24

results matching ""

    No results matching ""