You need to enable JavaScript to run this app.
导航

可视化-数据订阅 Open API

最近更新时间2024.01.03 14:59:44

首次发布时间2022.10.27 19:45:04

1. 订阅资源定义

订阅资源(Subscription):Subscription 描述一个完整的订阅配置。

名称类型描述
idint订阅ID
appIdint项目ID
ownerstring订阅创建人
statusint状态,0:正常,1:已删除,2:暂停
titleobject标题信息
titlestring标题名称
withDatebool标题是否带日期
offsetint日期偏移值
descriptionstring订阅说明
dashboardobject仪表盘信息,只读字段
idint仪表盘ID
namestring仪表盘名称
urlsobject订阅sheet列表
urlstringsheet地址
contentobject推送内容配置
dashboardContentVisiblebool是否显示仪表盘内容
dashboardLinkVisiblebool是否显示仪表盘链接
dashboardContentFormatstring仪表盘推送形式,img:图片、pdf:pdf文件
pushTimeobject推送时间
frequencyint推送频率,0:天级、3:周级、5:月级
timezonestring时区,格式如:UTC+08:00
daysarray[int]推送日期列表,仅推送频率为月级时有效,可选值范围:[1, 31]
weekdaysarray[int]推送星期列表,表示每周的哪些天推送,仅推送频率为周级有效,可选值范围:[0, 6](周一~周日)
timearray[string]推送时间列表,格式:HH:MM,如:10:00表示上午10点整
untilDataReadybool是否等待数据集同步完成才推送
offsetint数据集同步日期偏移,如1表示T-1的数据分区
pushTypestring推送方式,可选值:lark(飞书)、lark_group(飞书群)、email(邮件)、email_group(邮件组)、dingtalk(钉钉)、dingtalk_group(钉钉群)、webcom(企业微信)、webex(webex)
subscribersarray[object]接收人列表
subscriberstring接收人
agentstring权限依据人
noticeTypeint创建/修改通知方式,0:推送给接收人、1:推送给创建者
remarkobject备注信息
contentstring备注内容
manageLinkVisiblebool推送消息是否显示订阅管理入口地址
screenshotTimeVisiblebool推送消息是否显示截图时间
config
autoRetrybool失败是否重试
autoSyncSheetsbool订阅范围是否自动同步仪表盘sheet配置
languagestring语言,auto(自动)、zh_CN(中文)、en_US(英文)
manageUrlstring管理链接
noPushIfAbnormalbool图表异常是否不推送
2. 错误码
错误码错误信息说明
aeolus/ok成功请求成功
aeolus/validation/validationFailed接口参数校验失败,参数不符合检查规则请求参数错误
aeolus/user/unauthorized用户无权限用户无相关资源权限(仪表盘、订阅)
3. 获取订阅列表

用于获取有权限的仪表盘订阅配置列表。项目管理员、系统管理员能获取所有订阅;仪表盘管理员能获取仪表盘的所有订阅;其他权限能获取创建人、接收人、权限依据人为本人的订阅。

3.1 请求

GET /aeolus/api/open/v2/subscription/subscriptions

3.2 请求头

名称类型必填描述
Authorizationstring用于后端做认证鉴权,格式:Bearer jwt_token,其中jwt_token通过jwt申请接口申请

3.3 请求参数

名称类型必填描述
appIdint项目ID
dashboardIdint仪表盘ID
subscriberstring接收人
pageSizeint每页数据条数,默认值:20
pageNumberint页面,默认值:1

3.4 响应

名称类型描述
codestring返回码,定义参考“错误码”定义
msgstring提示信息
dataobject数据内容
totalint总订阅数
pageSizeint每页订阅数
pageNumberint当前数据页码
resultsarray[Subscription]订阅列表,Subscription参考“订阅资源(Subscription)”定义

3.5 响应示例

{
    "code":"aeolus/ok",
    "data":{
        "pageNumber":20,
        "pageSize":1,
        "results":[
            {
                "id":1000,
                "owner":"hezhongwei",
                "status":0,
                "title":{
                    "offset":1,
                    "title":"datawind订阅",
                    "withDate":true
                },
                "content":{
                    "dashboardContentFormat":"img",
                    "dashboardContentVisible":true,
                    "dashboardLinkVisible":false
                },
                "description":"description",
                "dashboard":{
                    "id":144250,
                    "name":"datawind仪表盘"
                },
                "noticeType":0,
                "pushTime":{
                    "frequency":3,
                    "offset":2,
                    "time":[
                        "10:00"
                    ],
                    "timezone":"UTC+08:00",
                    "untilDataReady":true,
                    "weekdays":[
                        1,
                        2
                    ]
                },
                "pushType":"lark",
                "subscribers":[
                    {
                        "agent":"hezhongwei",
                        "subscriber":"hezhongwei"
                    }
                ],
                "urls":[
                    {
                        "title":"仪表盘sheet-01",
                        "url":"仪表盘URL"
                    }
                ],
                "remark":{
                    "content":"订阅说明",
                    "manageLinkVisible":true,
                    "screenshotTimeVisible":true
                },
                "config":{
                    "autoRetry":false,
                    "autoSyncSheets":false,
                    "language":"auto",
                    "manageUrl":"订阅管理URL",
                    "noPushIfAbnormal":false
                }
            }
        ],
        "total":1
    },
    "msg":"成功"
}
4. 创建订阅

用于创建仪表盘订阅配置。

4.1 请求

POST /aeolus/api/open/v2/subscription/subscriptions

4.2 权限要求

只能创建有对应仪表盘权限的订阅。

4.3 请求头

名称类型必填描述
Authorizationstring用于后端做认证鉴权,格式:Bearer jwt_token,其中jwt_token通过jwt申请接口申请

4.4 Body 参数

名称类型必填描述
appIdint项目ID
titleobject标题信息
titlestring标题名称
withDatebool标题是否带日期,默认值为false
offsetint日期偏移值,withDate为true时有效,默认值为0
descriptionstring订阅说明
dashboardIdint仪表盘ID,表示订阅的仪表盘ID,urls为空或者不传时有效,则表示订阅仪表盘的所有sheet
urlsobject订阅sheet列表
urlstringsheet地址
contentobject推送内容配置
dashboardContentVisiblebool是否显示仪表盘内容,默认是为true
dashboardLinkVisiblebool是否显示仪表盘链接,默认值为true
dashboardContentFormatstring仪表盘推送形式,img:图片、pdf:pdf文件,默认值为img
pushTimeobject推送时间
frequencyint推送频率,0:天级、3:周级、5:月级
timezonestring时区,格式如:UTC+08:00
daysarray[int]推送日期列表,推送频率为月级时有效且必填,可选值范围:[1, 31]
weekdaysarray[int]推送星期列表,表示每周的哪些天推送,推送频率为周级时有效且必填,可选值范围:[0, 6](周一~周日)
timearray[string]推送时间列表,格式:HH:MM,如:10:00表示上午10点整
untilDataReadybool是否等待数据集同步完成才推送,默认值为false
offsetint数据集同步日期偏移,如1表示T-1的数据分区,仅untilDataReady为true时有效,默认值为1
pushTypestring推送方式,可选值:lark(飞书)、lark_group(飞书群)、email(邮件)、email_group(邮件组)、dingtalk(钉钉)、dingtalk_group(钉钉群)、webcom(企业微信)、webex(webex)
subscribersarray[object]接收人列表
subscriberstring接收人
agentstring权限依据人
noticeTypeint创建/修改通知方式,可选值:0(推送给接收人)、1(推送给创建者),默认值为1
remarkobject备注信息
contentstring备注内容
manageLinkVisiblebool推送消息是否显示订阅管理入口地址,默认值为true
screenshotTimeVisiblebool推送消息是否显示截图时间,默认值为true
config
autoRetrybool失败是否重试,默认值为false
autoSyncSheetsbool订阅范围是否自动同步仪表盘配置。urls为空时默认值为true,否则默认值为false。autoSyncSheets为true时,忽略urls参数。
languagestring语言,可选值:auto(自动)、zh_CN(中文)、en_US(英文)
manageUrlstring管理链接,不传则设置为DataWind项目中心订阅管理页面地址
noPushIfAbnormalbool图表异常是否不推送,默认值为false

4.5 Body 示例

{
    "config": {
        "autoRetry": true,
        "autoSyncSheets": false,
        "language": "auto",
        "manageUrl": "订阅管理URL",
        "noPushIfAbnormal": true
    },
    "content": {
        "dashboardContentFormat": "img",
        "dashboardContentVisible": true,
        "dashboardLinkVisible": false
    },
    "appId": 555371,
    "dashboardId": 144250,
    "description": "description",
    "noticeType": 0,
    "pushTime": {
        "frequency": 3,
        "offset": 2,
        "weekdays": [
            1,
            2
        ],
        "time": [
            "10:00"
        ],
        "timezone": "UTC-08:00",
        "untilDataReady": true
    },
    "pushType": "lark",
    "remark": {
        "content": "",
        "manageLinkVisible": true,
        "screenshotTimeVisible": true
    },
    "subscribers": [
        {
            "agent": "hezhongwei",
            "subscriber": "hezhongwei"
        }
    ],
    "title": {
        "offset": 1,
        "title": "DataWind订阅",
        "withDate": true
    },
    "urls": [
        {
            "url": "仪表盘链接URL"
        }
    ]
}

4.6 响应

名称类型描述
codestring返回码,定义参考“错误码”定义
msgstring提示信息
dataobject数据内容
subscriptionIdint创建的订阅ID

4.7 响应示例

{
    "code": "aeolus/ok",
    "data": {
        "subscriptionId": 1000
    },
    "msg": "成功"
}
5. 更新订阅

用于修改已有的仪表盘订阅。

5.1 请求

PATCH /aeolus/api/open/v2/subscription/subscriptions

5.2 权限限制

只能修改有权限的订阅,项目管理员、系统管理员可以修改任意订阅,仪表盘管理员可修改对应仪表盘的订阅,订阅所有者可修改自己创建的订阅。

5.3 请求头

名称类型必填描述
Authorizationstring用于后端做认证鉴权,格式:Bearer jwt_token,其中jwt_token通过jwt申请接口申请

5.4 Body 参数

名称类型必填描述
idint订阅ID
statusint状态,0:正常,2:暂停
titleobject标题信息
titlestring标题名称
withDatebool标题是否带日期,默认值为false
offsetint日期偏移值,withDate为true时有效,默认值为0
descriptionstring订阅说明
urlsobject订阅sheet列表
urlstringsheet地址
contentobject推送内容配置
dashboardContentVisiblebool是否显示仪表盘内容,默认是为true
dashboardLinkVisiblebool是否显示仪表盘链接,默认值为true
dashboardContentFormatstring仪表盘推送形式,img:图片、pdf:pdf文件,默认值为img
pushTimeobject推送时间,不支持修改pushTime的单个字段
frequencyint推送频率,0:天级、3:周级、5:月级
timezonestring时区,格式如:UTC+08:00
daysarray[int]推送日期列表,推送频率为月级时有效且必填,可选值范围:[1, 31]

weekdays

array[int]

推送星期列表,表示每周的哪些天推送,推送频率为周级时有效且必填,可选值范围:[0, 6](周一~周日)

timearray[string]推送时间列表,格式:HH:MM,如:10:00表示上午10点整
untilDataReadybool是否等待数据集同步完成才推送,默认值为false
offsetint数据集同步日期偏移,如1表示T-1的数据分区,仅untilDataReady为true时有效,默认值为1

pushType

string

推送方式,可选值:lark(飞书)、lark_group(飞书群)、email(邮件)、email_group(邮件组)、dingtalk(钉钉)、dingtalk_group(钉钉群)、webcom(企业微信)、webex(webex)

subscribersarray[object]接收人列表
subscriberstring接收人
agentstring权限依据人
noticeTypeint创建/修改通知方式,可选值:0(推送给接收人)、1(推送给创建者),默认值为1
remarkobject备注信息
contentstring备注内容
manageLinkVisiblebool推送消息是否显示订阅管理入口地址,默认值为true
screenshotTimeVisiblebool推送消息是否显示截图时间,默认值为true
configobject配置信息
autoRetrybool失败是否重试,默认值为false
autoSyncSheetsbool订阅范围是否自动同步仪表盘配置,urls为空时默认值为true,否则默认值为false
languagestring语言,可选值:auto(自动)、zh_CN(中文)、en_US(英文)
manageUrlstring管理链接,不传则设置为DataWind项目中心订阅管理页面地址
noPushIfAbnormalbool图表异常是否不推送,默认值为false

5.5 Body 示例

{
    "id": 1000,
    "status": 0,
    "config": {
        "autoRetry": true,
        "autoSyncSheets": false,
        "language": "auto",
        "manageUrl": "订阅管理URL",
        "noPushIfAbnormal": true
    },
    "content": {
        "dashboardContentFormat": "img",
        "dashboardContentVisible": true,
        "dashboardLinkVisible": false
    },
    "appId": 555371,
    "dashboardId": 144250,
    "description": "description",
    "noticeType": 0,
    "pushTime": {
        "frequency": 3,
        "offset": 2,
        "weekdays": [
            1,
            2
        ],
        "time": [
            "10:00"
        ],
        "timezone": "UTC-08:00",
        "untilDataReady": true
    },
    "pushType": "lark",
    "remark": {
        "content": "",
        "manageLinkVisible": true,
        "screenshotTimeVisible": true
    },
    "subscribers": [
        {
            "agent": "hezhongwei",
            "subscriber": "hezhongwei"
        }
    ],
    "title": {
        "offset": 1,
        "title": "DataWind订阅",
        "withDate": true
    },
    "urls": [
        {
            "url": "仪表盘URL"
        }
    ]
}

5.6 响应

名称类型描述
codestring返回码,定义参考“错误码”定义
msgstring提示信息
dataobject数据内容
subscriptionIdint更新的订阅ID

5.7 响应示例

{
    "code": "aeolus/ok",
    "data": {
        "subscriptionId": 1000
    },
    "msg": "成功"
}
6. 删除订阅

用于批量删除有权限的仪表盘订阅。

6.1 请求

DELETE /aeolus/api/open/v2/subscription/subscriptions

6.2 权限

只能删除有权限的订阅,项目管理员、系统管理员可以删除任意订阅,仪表盘管理员可删除对应仪表盘的订阅,订阅所有者可删除自己创建的订阅。

6.3 请求头

名称类型必填描述
Authorizationstring用于后端做认证鉴权,格式:Bearer jwt_token,其中jwt_token通过jwt申请接口申请

6.4 Body 参数

名称类型必填描述
subscriptionsarray[int]需要删除的的订阅ID列表

6.5 响应

名称类型描述
codestring返回码,定义参考“错误码”定义
msgstring提示信息
dataobject数据内容
totalCountint需要删除的订阅数
deletedSubscriptionsarray[int]成功删除的订阅列表

6.6 响应示例

{
    "code": "aeolus/ok",
    "data": {
        "deletedSubscriptions": [
            10827
        ],
        "totalCount": 1
    },
    "msg": "成功"
}
7. 退订订阅

退订指定用户的订阅,同时支持根据仪表盘ID退订全部订阅以及根据订阅ID退订指定订阅。

7.1 请求

DELETE /aeolus/api/open/v2/subscription/unsubscribe

7.2 权限

只能退订有修改删除权限的订阅。

7.3 请求头

名称类型必填描述
Authorizationstring用于后端做认证鉴权,格式:Bearer jwt_token,其中jwt_token通过jwt申请接口申请

7.4 Body 参数

名称类型必填描述
dashboardIdint需退订订阅的仪表盘ID,会退订此仪表盘的所有订阅
subscriptionsarray[int]需退订的订阅ID列表,subscriptions、dashboardId二者必传其一,subscriptions优先级高于dashboardId
subscriberstring订阅订阅的接收人

7.5 响应

名称类型描述
codestring返回码,定义参考“错误码”定义
msgstring提示信息
dataobject数据内容
totalCountint需要删除的订阅数
unsubscribedSubscriptionsarray[int]成功退订的订阅列表

7.6 响应示例

{
    "code": "aeolus/ok",
    "data": {
        "totalCount": 5,
        "unsubscribedSubscriptions": [
            10825
        ]
    },
    "msg": "成功"
}