# Godzilla API 接口文档
文档当前支持版本:2.x.x
# 1 数据查询接口
# 1.1 获取采集数据(全量数据)
# 1.1.1 HTTP请求uri
/api/data/query
# 1.1.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | 应用id |
| dataPointId | string | 是 | 数据点id |
| startTime | string | 是 | 开始时间,yyyy-MM-dd HH:mm:ss |
| endTime | string | 是 | 结束时间,yyyy-MM-dd HH:mm:ss |
{
"appId": "应用id",
"dataPointId": "数据点id",
"endTime": "2019-10-12 15:13:15",
"startTime": "2019-10-12 13:13:15"
}
# 1.1.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 1.2 定制化查询采集数据
# 1.2.1 HTTP请求uri
/api/data/customization/query
# 1.2.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | |
| dataPointId | string | 是 | |
| startTime | string | 开始时间(秒),为空时,则startTimeNanos必传 | |
| startTimeNanos | integer | 开始时间(纳秒)为空时,则startTime必传 | |
| endTime | string | 结束时间(秒),为空时,则endTimeNanos必传 | |
| endTimeNanos | integer | 结束时间(纳秒),为空时,则endTime必传 | |
| customizedCondition | list | 否 | 查询条件 |
| joinSymbol | string | 是 | 关联符号,目前仅支持like,=,in |
| leftValue | string | 是 | 查询条件字段名名 |
| rightValue | object | 是 | 查询条件值 |
| whereClause | string | 是 | 关系,目前仅支持 and ,or |
{
"appId": "string",
"customizedCondition": [
{
"joinSymbol": "string",
"leftValue": "string",
"rightValue": null,
"whereClause": "string"
}
],
"dataPointId": "string",
"endTime": "2019-10-12 15:13:15",
"endTimeNanos": 0,
"startTime": "2019-10-12 13:13:15",
"startTimeNanos": 0
}
# 1.2.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 1.3 查询Retention Policy
# 1.3.1 HTTP请求uri
/ai/data/predict
# 1.3.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | 应用id不能为空 |
{
"appId": "0025f27b9a6143a6baa14f9acd88635b"
}
# 1.3.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 1.4 设置保存策略时间
# 1.4.1 HTTP请求uri
/api/retention/policy/update
# 1.4.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | 应用id |
| duration | string | 是 | 保存时间 |
{
"appId": "0025f27b9a6143a6baa14f9acd88635b",
"duration": "30d"
}
# 1.4.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 1.5 删除app数据库
# 1.5.1 HTTP请求uri
/api/app/database/delete
# 1.5.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | 应用id |
{
"appId": "0025f27b9a6143a6baa14f9acd88635b"
}
# 1.5.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 2 告警接口
# 2.1 告警记录查询
# 2.1.1 HTTP请求uri
/api/alarm/history/record/query
# 2.1.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| alertId | string | 否 | 告警Id |
| dataPointId | string | 否 | 数据点id |
| dataPointStatus | string | 否 | 数据点状态 alerting ok |
| deviceId | string | 否 | 设备id |
| appId | string | 是 | 应用id |
| startTime | string | 否 | 开始时间(秒),2019-10-12 13:13:15 |
| endTime | string | 否 | 结束时间(秒),2019-10-12 13:13:15 |
| pageSize | int | 否 | 每页大小 |
| pageNum | int | 否 | 页码 |
{
"alertId": "0025f27aaaaaaa14f9acd88635b",
"dataPointId": "0025f27b9a6fffffffacd88635b",
"dataPointStatus": "alerting",
"deviceId": "0025f27bxxxxxx14f9acd88635b",
"appId": "0025f27b9a6143a6b2214f9acd88635b",
"startTime":"2022-08-05 00:00:00",
"endTime":"2022-08-05 23:59:59",
"pageSize":20,
"pageNum":1
}
# 2.1.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 2.2 最近一个月告警次数
# 2.2.1 HTTP请求uri
/api/alarm/history/month/alarm/count
# 2.2.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | 应用id |
{
"appId": "0025f27b9a6143a6baa14f9acd88635b"
}
# 2.2.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 3 采集数据模块
# 3.1 列表查询接口(分页数据)
# 3.1.1 HTTP请求uri
/api/collectdata/list
# 3.1.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| dataPointId | string | 是 | 数据点id |
| deviceId | string | 否 | 设备id |
| appId | string | 是 | 应用id |
| startTime | string | 是 | 开始时间(秒),2019-10-12 13:13:15 |
| endTime | string | 是 | 结束时间(秒),2019-10-12 13:13:15 |
| customizedCondition | List | 否 | 定制化查询条件 |
| pageSize | int | 否 | 每页大小 |
| pageNum | int | 否 | 页码 |
SQLModel类结构:
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| whereClause | string | 否 | where语句 and or |
| leftValue | string | 否 | 查询条件名称 |
| rightValue | Object | 否 | 查询条件值 |
| joinSymbol | String | 否 | 运算符 =,in,between,like等等 |
{
"dataPointId": "0025f27b9a6fffffffacd88635b",
"deviceId": "0025f27bxxxxxx14f9acd88635b",
"appId": "0025f27b9a6143a6b2214f9acd88635b",
"startTime":"2022-08-05 00:00:00",
"endTime":"2022-08-05 23:59:59",
"customizedCondition": [{
"whereClause":"and",
"leftValue": "name",
"rightValue": "value1",
"joinSymbol": "="
}],
"pageSize":20,
"pageNum":1
}
# 3.1.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 3.2 更新数据接口
# 3.2.1 HTTP请求uri
/api/collectdata/update
# 3.2.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| collectDataUpdates | List | 是 | 待更新数据集合 |
| deviceId | string | 是 | 设备id |
| appId | string | 是 | 应用id |
CollectDataUpdate类结构:
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| value | string | 是 | 更新值 |
| isValueString | Boolean | 是 | 该value是否为字符串 |
| otherFields | Map<String, Object> | 是 | 其它字段值 |
{
"collectDataUpdates":
[{"value": "1",
"otherFields": {
"f1": "v1"
}
}],
"deviceId": "0025f27bxxxxxx14f9acd88635b",
"appId": "0025f27b9a6143a6b2214f9acd88635b"
}
# 3.2.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 3.3 查询采集数据低级接口
# 3.3.1 HTTP请求uri
/api/collectdata/lli/data/query
# 3.3.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | 应用id |
| sql | string | 是 | sql查询语句 |
{
"appId": "0025f27bxxxxxx14f9acd88635b",
"sql": "select dataPointId,value from xxxx"
}
# 3.3.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 4 设备相关
# 4.1 查询设备上下线记录
# 4.1.1 HTTP请求uri
/api/device/history/onoff
# 4.1.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| deviceId | string | 是 | 设备id |
| appId | string | 是 | 应用id |
| startTime | string | 否 | 开始时间(秒),2019-10-12 13:13:15 |
| endTime | string | 否 | 结束时间(秒),2019-10-12 13:13:15 |
| pageSize | int | 否 | 每页大小 |
| pageNum | int | 否 | 页码 |
{
"deviceId": "0025f27bxxxxxx14f9acd88635b",
"appId": "0025f27b9a6143a6b2214f9acd88635b",
"startTime":"2022-08-05 00:00:00",
"endTime":"2022-08-05 23:59:59",
"pageSize":20,
"pageNum":1
}
# 4.1.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 4.2 设备下发指令
# 4.2.1 HTTP请求uri
/api/device/send/command
# 4.2.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| deviceId | string | 是 | 设备id |
| command | string | 是 | 应用id |
{
"deviceId": "0025f27bxxxxxx14f9acd88635b",
"command": "hello command"
}
# 4.2.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 4.3 查看设备下发指令记录
# 4.3.1 HTTP请求uri
/api/device/send/command/history
# 4.3.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| deviceId | string | 否 | 设备id |
| appId | string | 是 | 应用id |
| jobId | string | 否 | jobId |
| startTime | string | 否 | 开始时间(秒),2022-10-12 13:13:15 |
| endTime | string | 否 | 结束时间(秒),2022-10-12 13:13:15 |
| pageSize | int | 否 | 每页大小 |
| pageNum | int | 否 | 页码 |
{
"deviceId": "0025f27bxxxxxx14f9acd88635b",
"jobId": "0025f27sssss3a6b2214f9acd88635b",
"appId": "0025f27b9a6143a6b2214f9acd88635b",
"startTime":"2022-08-05 00:00:00",
"endTime":"2022-08-05 23:59:59",
"pageSize":20,
"pageNum":1
}
# 4.3.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 5 告警通知记录管理
# 5.1 告警通知记录查询
# 5.1.1 HTTP请求uri
/api/notification/record/manage/query
# 5.1.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | 应用id |
| dataPointId | string | 否 | 数据点id |
| deviceId | string | 否 | 设备id |
| channel | string | 否 | 发送类型(sms voice email callback) |
| channelParam | string | 否 | 发送业务参数 |
| success | BigDecimal | 否 | 发送状态 |
| alertId | string | 否 | 告警信息id |
| collectTimeStartTime | Date | 否 | 开始时间(数据采集)(秒),2022-10-12 13:13:15 |
| collectTimeEndTime | Date | 否 | 结束时间(数据采集)(秒),2022-10-12 13:13:15 |
| messageSendStartTime | Date | 否 | 开始时间(通知发送)(秒),2022-10-12 13:13:15 |
| messageSendEndTime | Date | 否 | 结束时间(通知发送)(秒),2022-10-12 13:13:15 |
| pageSize | int | 否 | 每页大小 |
| pageNum | int | 否 | 页码 |
{
"deviceId": "0025f27bxxxxxx14f9acd88635b",
"dataPointId": "0025f27sssss3a6b2214f9acd88635b",
"appId": "0025f27b9a6143a6b2214f9acd88635b",
"channel": "sms",
"channelParam": "hello",
"success": 1,
"alertId": "0025f273sdfsdff14f9acd88635b",
"collectTimeStartTime":"2022-08-05 00:00:00",
"collectTimeEndTime":"2022-08-05 23:59:59",
"messageSendStartTime":"2022-08-05 00:00:00",
"messageSendEndTime":"2022-08-05 23:59:59",
"pageSize":20,
"pageNum":1
}
# 6 API监控
# 6.1 API调用记录查询
# 6.1.1 HTTP请求uri
/api/monitor/history/interface/call
# 6.1.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | 应用id |
| startTime | string | 否 | 开始时间(秒),2022-10-12 13:13:15 |
| endTime | string | 否 | 结束时间(秒),2022-10-12 13:13:15 |
| pageSize | int | 否 | 每页大小 |
| pageNum | int | 否 | 页码 |
{
"appId": "0025f27b9a6143a6b2214f9acd88635b",
"startTime":"2022-08-05 00:00:00",
"endTime":"2022-08-05 23:59:59",
"pageSize":20,
"pageNum":1
}
# 6.1.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 7 AI模块
# 7.1 AI数据预测
# 7.1.1 HTTP路径
/ai/data/predict
# 7.1.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| aiAnalysisInstanceId | string | 是 | AI分析实例id |
| datas | List | 否 | 预测输入数据 |
| startTime | string | 否 | 样本数据采集开始时间,yyyy-MM-dd HH:mm:ss |
| endTime | string | 否 | 样本数据采集结束时间,yyyy-MM-dd HH:mm:ss |
{
"aiAnalysisInstanceId": "0025f27b9a6143a6b2214f9acd88635b",
"startTime":"2020-08-05 00:00:00",
"endTime":"2020-08-05 23:59:59",
"datas": [
[
{
"dataPointId": "67008721c0014fb49f1c98836b35967b",
"data": [
{
"dataValue": "467378.3016",
"time": "2020-08-05T11:10:48.046167987+08:00"
},
{
"dataValue": "467620.2774",
"time": "2020-08-05T11:33:58.046167987+08:00"
}
]
},
{
"dataPointId": "062daf63864a4484b6be0789f091d348",
"data": [
{
"dataValue": "467373.8363",
"time": "2020-08-05T11:10:48.046167987+08:00"
},
{
"dataValue": "467621.6987",
"time": "2020-08-05T11:33:58.046167987+08:00"
}
]
}
],
[
{
"dataPointId": "67008721c0014fb49f1c98836b35967b",
"data": [
{
"dataValue": "467378.3016",
"time": "2020-08-04T10:10:48.046167987+08:00"
},
{
"dataValue": "467620.2774",
"time": "2020-08-04T10:33:58.046167987+08:00"
}
]
},
{
"dataPointId": "062daf63864a4484b6be0789f091d348",
"data": [
{
"dataValue": "467373.8363",
"time": "2020-08-04T10:10:48.046167987+08:00"
},
{
"dataValue": "467621.6987",
"time": "2020-08-04T10:33:58.046167987+08:00"
}
]
}
]
]
}
# 7.1.3 接口出参
| 字段名 | 类型 | 说明 |
|---|---|---|
| code | string | 接口响应码 |
| msg | string | 接口处理信息 |
| flag | boolean | 接口调用成功失败标志 true:成功,false:失败 |
| data | T | 接口返回数据 |
| timeZone | String | 接口返回时区 |
# 8 告警回调接口
# 8.1 数据点阈值告警回调
# 8.1.1 HTTP路径
由用户业务系统自定义配置
# 8.1.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| alertId | string | 是 | 告警Id |
| appId | string | 是 | 应用id |
| deviceId | string | 是 | 设备id |
| deviceName | string | 是 | 设备名称 |
| message | string | 是 | 消息Json格式 |
| dataPointId | string | 是 | 数据点id |
| dataPointName | string | 是 | 数据点名称 |
| value | string | 是 | 数据值 |
| dataPointUnit | string | 是 | 数据点单位 |
| dataPointStatus | string | 是 | 数据点状态 DataPointAlert:ok/alerting |
| collectTime | string | 是 | 采集时间 |
| collectTimeInNanos | string | 是 | 采集时间(纳秒) |
| alertSource | string | 是 | 告警来源 DataPointAlert |
| dataPointGroupId | string | 否 | #NA |
| dataPointGroupStatus | string | 否 | #NA |
| dataMap | string | 是 | 附带数据 |
# 8.2 设备告警回调(设备上下线,数据点采集超时)
# 8.2.1 HTTP路径
由用户业务系统自定义配置
# 8.2.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| alertId | string | 是 | 告警Id |
| appId | string | 是 | 应用id |
| deviceId | string | 是 | 设备id |
| deviceName | string | 是 | 设备名称 |
| message | string | 是 | 消息Json格式 |
| dataPointId | string | 否 | 数据点id |
| dataPointName | string | 否 | 数据点名称 |
| value | string | 否 | 数据值 |
| dataPointUnit | string | 否 | 数据点单位 |
| dataPointStatus | string | 是 | 数据点状态 DeviceAlert:online/offline/timeout/timeout-reset |
| collectTime | string | 是 | 采集时间 |
| collectTimeInNanos | string | 是 | 采集时间(纳秒) |
| alertSource | string | 是 | 告警来源 DeviceAlert |
| dataPointGroupId | string | 否 | #NA |
| dataPointGroupStatus | string | 否 | #NA |
| dataMap | string | 是 | 附带数据 |
# 8.3 数据点分组告警回调
# 8.3.1 HTTP路径
由用户业务系统自定义配置
# 8.3.2 接口入参
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| alertId | string | 是 | 告警Id |
| appId | string | 是 | 应用id |
| deviceId | string | 否 | 设备id |
| deviceName | string | 否 | 设备名称 |
| message | string | 是 | 消息Json格式 |
| dataPointId | string | 否 | #NA |
| dataPointName | string | 否 | #NA |
| value | string | 否 | 数据值 |
| dataPointUnit | string | 否 | #NA |
| dataPointStatus | string | 否 | #NA |
| collectTime | string | 是 | 采集时间 |
| collectTimeInNanos | string | 是 | 采集时间(纳秒) |
| alertSource | string | 是 | 告警来源 DataPointGroupAlert |
| dataPointGroupId | string | 是 | 数据点分组id |
| dataPointGroupStatus | string | 是 | 数据点分组状态 ok/dataPointStatusAbnormal |
| dataMap | string | 是 | 附带数据 |
# 9 mqtt数据推送接口
# 9.1 数据点采集实时推送
# 9.1.1 topic
godzilla/${appId}
# 9.1.2 推送参数
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| appId | string | 是 | 应用id |
| dataPointId | string | 是 | 数据点id |
| messageType | string | 是 | 消息类型 data |
| metaData | string | 是 | 数据点原数据json |
| value | string | 是 | 数据值 |
| dataPointUnit | string | 是 | 单位 |
| collectTime | string | 是 | 采集时间 |
| collectTimeInNanos | string | 是 | 采集时间(精确到纳秒) |
# 9.2 数据点告警实时推送
# 9.2.1 topic
godzilla/${appId}
# 9.2.2 推送参数
| 字段名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| alertId | string | 是 | 告警id |
| appId | string | 是 | 应用id |
| deviceId | string | 是 | 设备id |
| deviceName | string | 是 | 设备名称 |
| dataPointId | string | 是 | 数据点id |
| dataPointName | string | 是 | 数据点名称 |
| dataPointUnit | string | 是 | 单位 |
| messageType | string | 是 | 消息类型 alert |
| alertSource | string | 是 | 告警来源 DeviceAlert/DataPointAlert/DataPointGroupAlert |
| message | string | 是 | alarmLog json格式 |
| value | string | 是 | 数据值 |
| dataPointStatus | string | 是 | ok/alerting |
| metaData | string | 是 | godzillaPoint原数据 json |
| dataPointGroupId | string | 否 | 数据分组id |
| dataPointGroupStatus | string | 否 | dataPointStatusAbnormal/ok |
| collectTime | string | 是 | 采集时间 |
| collectTimeInNanos | string | 是 | 采集时间(精确到纳秒) |
| source | string | 是 | broker或api节点的IP:port |