监听事件包含产品化与自动化两种方式,本文将为您介绍自动化配置方式。
监听事件属于增值模块,需要额外购买,您可根据业务需求付费购买。
事件相关
1、新增事件
接口路径:
/openapi/v2/event/add
(POST)接口描述:开放平台事件中心新增监听事件,支持报表目录、数据集、数据门户、报表管理等事件。
输入参数:(content-type:application/json;charset=UTF-8,参数以JSON对象格式附录在http body中)
参数名 | 类型 | 描述 | 是否必须 |
businessName | String | 业务名称 | 是 |
bindChannelId | String | 自定义推送渠道的Id | 是 |
subscribedEvent | List<String> | 监听的事件,可选范围:
| 是 |
返回参数说明(SDK调用时,仅返回data部分):
参数 | 类型 | 描述 |
traceId | string | 请求ID。 |
code | string | 抛错码。取值范围:
|
message | string | 抛错信息。取值范围:
|
success | boolean | 是否请求成功。取值范围:
|
data | boolean | 返回接口执行结果。取值范围:
|
返回结果:
{
"traceId":"9bbd2088-6aeb-46e3-9ef3-082cc5a4f8f3",
"code":null,
"message":null,
"data":true,
"success":true
}
2、获取事件订阅支持的事件类型列表
接口路径:
/openapi/v2/event/support/list
(GET)接口描述:返回事件订阅支持的时间类型列表,包含报表目录管理、数据集、数据门户、报表管理及相关子事件。
输入参数:无参数
返回参数说明(SDK调用时,仅返回data部分):
参数 | 类型 | 描述 |
traceId | string | 请求ID。 |
code | string | 抛错码。取值范围:
|
message | string | 抛错信息。取值范围:
|
success | boolean | 是否请求成功。取值范围:
|
data | JsonArray | 返回支持的事件类型列表 |
JsonArray中四中类型事件分别为数据门户管理、报表管理、报表目录管理、数据集管理,每种类型事件的sndTypeMap中包含若干子事件:
参数 | 参数说明 |
senTypeMap | 每个一级事件下的子事件(二级事件) |
primaryType | 一级事件 |
primaryTypeCn | 一级事件中文名称 |
primaryTypeSortNum | 事件排序字段(用于前端展示排序) |
返回参数(SDK调用时,仅返回data部分):
{
"traceId":"9bbd2088-6aeb-46e3-9ef3-082cc5a4f8f3",
"code":null,
"message":null,
"data":true,
"success":true
}
3、修改事件
接口路径:
/openapi/v2/event/modify
(POST)接口描述:修改事件配置,可修改业务名称及监听事件
输入参数:(content-type:application/json;charset=UTF-8,参数以JSON对象格式附录在http body中)
参数 | 类型 | 描述 | 是否必须 |
bindChannelId | String | 事件绑定的渠道ID | 是 |
businessName | String | 要修改的名称 | 是 |
subscribedEvent | List<String> | 监听的事件,可选范围:
例如,Lists.newArrayList("DATAPRODUCT_MANAGE", "WORKS_MANAGE"); | 是 |
返回参数说明(SDK调用时,仅返回data部分):
参数 | 类型 | 描述 |
traceId | string | 请求ID。 |
code | string | 抛错码。取值范围:
|
message | string | 抛错信息。取值范围:
|
success | boolean | 是否请求成功。取值范围:
|
data | boolean | 返回接口执行结果。取值范围:
|
返回结果:
{
"traceId":"9bbd2088-6aeb-46e3-9ef3-082cc5a4f8f3",
"code":null,
"message":null,
"data":true,
"success":true
}
4、删除事件
接口路径:
/openapi/v2/event/remove
(DELETE)接口描述:批量删除配置的事件
输入参数:(content-type:application/x-www-form-urlencoded;charset=UTF-8,参数以表单提交)
参数 | 类型 | 描述 | 是否必须 |
channelIds | String | 以英文逗号分割的待删除的事件所绑定的渠道id列表。 格式:"aaaaaa,bbbbbb" | 是 |
返回结果:
{
"traceId":"9bbd2088-6aeb-46e3-9ef3-082cc5a4f8f3",
"code":null,
"message":null,
"data":true,
"success":true
}
JAVA SDK 示例:
HttpRequest request = HttpRequest.build()
.setUri("/openapi/v2/event/remove")
.setMethod(HttpMethod.POST)
.setHttpContentType(FormatType.JSON);
request.addEntity(Lists.newArrayList("8c23642b-6e81-4221-bf1a-61b9f570395f"));
client.syncExecute(request);
5、查询配置的事件列表
接口路径:
/openapi/v2/event/get
(GET)接口描述:根据查询条件查询所配置的事件列表
输入参数:
参数 | 类型 | 描述 | 是否必须 |
keyword | String | 关键词 | 否 |
creatorId | String | 创建人的userId | 否 |
createStartFrom | Long | 创建事件的起始时间,时间戳 | 否 |
createEndTo | Long | 创建事件的结束时间,时间戳 | 否 |
返回参数说明(SDK调用时,仅返回data部分):
参数名称 | 参数类型 | 参数说明 |
creator | String | 创建者ID |
gmtModified | TimeStamp | 修改时间戳 |
bindChannelName | String | 绑定渠道名称 |
businessName | String | 业务名称 |
creatorName | String | 创建者名称 |
gmtCreate | TimeStamp | 创建时间戳 |
bindChannelId | String | 绑定渠道ID |
operatorName | String | 操作者名称 |
operator | String | 操作者ID |
返回结果:
{
"traceId": "2572dea3-2799-4f36-8e47-0cc1501bd59f",
"code": null,
"message": null,
"data": [
{
"creator": "ae479116c5ba4346913719b066f4d3cc",
"gmtModified": 1698831996000,
"bindChannelName": "api创建的渠道",
"businessName": "测试",
"creatorName": "日常开发账户测试_org",
"gmtCreate": 1698831996000,
"bindChannelId": "8c23642b-6e81-4221-bf1a-61b9f570395f",
"operatorName": "日常开发账户测试_org",
"operator": "ae479116c5ba4346913719b066f4d3cc"
}
],
"success": true
}
渠道相关
1、查询可配置渠道列表
接口路径:
/openapi/v2/channel/list
(GET)接口描述:查询可配置渠道列表
输入参数:
参数名 | 类型 | 描述 | 是否必须 |
channelType | String | 渠道类型
| 是 |
keyword | String | 渠道名称关键词 | 否 |
返回参数说明(SDK调用时,仅返回data部分):
参数名称 | 参数类型 | 参数说明 |
creator | String | 创建者ID |
gmtModified | TimeStamp | 修改时间戳 |
channelOperationRelationCount | Integer | 渠道关联的业务数量 |
channelType | Integer | 渠道类型 |
gmtCreate | TimeStamp | 创建时间戳 |
organizationId | String | 组织ID |
creatorNick | String | 创建者昵称 |
system | Boolean | 是否为系统渠道 |
eventSubscriptionUse | Boolean | 是否已在事件订阅中心配置 |
channelName | String | 渠道名称 |
parameters | JsonArray | 参数列表: 包含webhooks.url,webhooks.token两个参数及其值,以及对应渠道的id [ { "parameterName": "webhooks.url", "parameterValue": "http://127.0.0.1:7003/webhooks", "channelId": "8c23642b-6e81-4221-bf1a-61b9f570395f" }, { "parameterName": "webhooks.token", "parameterValue": "ba3d82d*****************11d80e2e", "channelId": "8c23642b-6e81-4221-bf1a-61b9f570395f" } ] |
| String | 参数名称 |
| String | 参数值 |
| String | 渠道ID |
channelId | String | 渠道ID |
status | Integer | 渠道状态枚举,0表示停用,1表示启用 |
返回结果:
{
"traceId": "2572dea3-2799-4f36-8e47-0cc1501bd59f",
"code": null,
"message": null,
"data": [
{
"creator": "363e8880003244048b626a7377cf1899",
"gmtModified": 1697706979000,
"channelOperationRelationCount": 1,
"channelType": 3,
"gmtCreate": 1697706979000,
"organizationId": "2fe4fbd8-588f-489a-b3e1-e92c7af083ea",
"creatorNick": "xxx",
"system": false,
"eventSubscriptionUse": true,
"channelName": "api创建的渠道",
"parameters": [
{
"parameterName": "webhooks.url",
"parameterValue": "http://127.0.0.1:7003/webhooks",
"channelId": "8c23642b-6e81-4221-bf1a-61b9f570395f"
},
{
"parameterName": "webhooks.token",
"parameterValue": "ba3d82d*****************11d80e2e",
"channelId": "8c23642b-6e81-4221-bf1a-61b9f570395f"
}
],
"channelId": "8c23642b-6e81-4221-bf1a-61b9f570395f",
"status": 1
}
],
"success": true
}
2、新建自定义渠道
接口路径:
/openapi/v2/channel/add
(POST)接口描述:新建自定义渠道
接口参数:(content-type:application/json;charset=UTF-8,参数以JSON对象格式附录在http body中)
参数名称 | 参数类型 | 描述 | 是否必须 |
channelName | String | 渠道名称 | 是 |
channelType | Integer | 渠道类型 | 是 |
parameters | JsonArray | 渠道所需参数 | 是 |
参数示例:
{
"channelName": "1212313",
"channelType": 3,
"parameters": [
{
"parameterName": "webhooks.url",
"parameterValue": "http://xx.xx.xx.xx:xxxx/webhooks" // 需要更改成自定义渠道的URL
},
{
"parameterName": "webhooks.token",
"parameterValue": "b23ee65f38becbf7e60234a4c385d277"// 需要手动设置32个字符长度的token
}
]
}
返回参数说明(SDK调用时,仅返回data部分):
参数 | 类型 | 描述 |
traceId | string | 请求ID。 |
code | string | 抛错码。取值范围:
|
message | string | 抛错信息。取值范围:
|
success | boolean | 是否请求成功。取值范围:
|
data | boolean | 返回接口执行结果。取值范围:
|
返回类型:
{
"traceId":"9bbd2088-6aeb-46e3-9ef3-082cc5a4f8f3",
"code":null,
"message":null,
"data":true,
"success":true
}
3、修改渠道
接口路径:
/openapi/v2/channel/modify
(POST)接口描述:修改渠道的配置信息
传入参数:(content-type:application/json;charset=UTF-8,参数以JSON对象格式附录在http body中)
参数名称 | 参数类型 | 描述 | 是否必须 |
channelId | String | 渠道id | 是 |
channelName | String | 渠道名称 | 是 |
channelType | Integer | 可选类型:
| 是 |
parameters | JsonArray | 渠道相关参数,包括webhooks.url,和webhooks.token,token如果与原值不一样的话已引用的加密密钥需会进行替换 [ { "parameterName": "webhooks.url", "parameterValue": "http://127.0.0.1:7003/webhooks" }, { "parameterName": "webhooks.token", "parameterValue": "ba3d82d*****************11d80e2e" } ] | 是 |
返回参数说明(SDK调用时,仅返回data部分):
参数 | 类型 | 描述 |
traceId | string | 请求ID。 |
code | string | 抛错码。取值范围:
|
message | string | 抛错信息。取值范围:
|
success | boolean | 是否请求成功。取值范围:
|
data | boolean | 返回接口执行结果。取值范围:
|
返回结果:
{
"traceId":"9bbd2088-6aeb-46e3-9ef3-082cc5a4f8f3",
"code":null,
"message":null,
"data":true,
"success":true
}
4、删除渠道
接口路径:
/openapi/v2/channel/remove
(DELETE)接口描述:修改渠道的配置信息
输入参数:无参数
参数名称 | 参数类型 | 描述 | 是否必须 |
channelId | String | 事件绑定的渠道id | 是 |
返回参数说明(SDK调用时,仅返回data部分):
参数 | 类型 | 描述 |
traceId | string | 请求ID。 |
code | string | 抛错码。取值范围:
|
message | string | 抛错信息。取值范围:
|
success | boolean | 是否请求成功。取值范围:
|
data | boolean | 返回接口执行结果。取值范围:
|
返回结果:
{
"traceId":"9bbd2088-6aeb-46e3-9ef3-082cc5a4f8f3",
"code":null,
"message":null,
"data":true,
"success":true
}