監聽事件包含產品化與自動化兩種方式,本文將為您介紹自動化配置方式。
監聽事件屬于增值模塊,需要額外購買,您可根據業務需求付費購買。
事件相關
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"http:// 需要手動設置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
}