-
-
Notifications
You must be signed in to change notification settings - Fork 70
/
api_application_recommend_rule_list.go
141 lines (125 loc) · 11.4 KB
/
api_application_recommend_rule_list.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
// Code generated by lark_sdk_gen. DO NOT EDIT.
/**
* Copyright 2022 chyroc
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package lark
import (
"context"
)
// GetApplicationRecommendRuleList 获取当前设置的推荐规则列表。
//
// doc: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/application-v6/app_recommend_rule/list
// new doc: https://open.feishu.cn/document/server-docs/workplace-v1/app_recommend_rule/list
func (r *ApplicationService) GetApplicationRecommendRuleList(ctx context.Context, request *GetApplicationRecommendRuleListReq, options ...MethodOptionFunc) (*GetApplicationRecommendRuleListResp, *Response, error) {
if r.cli.mock.mockApplicationGetApplicationRecommendRuleList != nil {
r.cli.Log(ctx, LogLevelDebug, "[lark] Application#GetApplicationRecommendRuleList mock enable")
return r.cli.mock.mockApplicationGetApplicationRecommendRuleList(ctx, request, options...)
}
req := &RawRequestReq{
Scope: "Application",
API: "GetApplicationRecommendRuleList",
Method: "GET",
URL: r.cli.openBaseURL + "/open-apis/application/v6/app_recommend_rules",
Body: request,
MethodOption: newMethodOption(options),
NeedTenantAccessToken: true,
}
resp := new(getApplicationRecommendRuleListResp)
response, err := r.cli.RawRequest(ctx, req, resp)
return resp.Data, response, err
}
// MockApplicationGetApplicationRecommendRuleList mock ApplicationGetApplicationRecommendRuleList method
func (r *Mock) MockApplicationGetApplicationRecommendRuleList(f func(ctx context.Context, request *GetApplicationRecommendRuleListReq, options ...MethodOptionFunc) (*GetApplicationRecommendRuleListResp, *Response, error)) {
r.mockApplicationGetApplicationRecommendRuleList = f
}
// UnMockApplicationGetApplicationRecommendRuleList un-mock ApplicationGetApplicationRecommendRuleList method
func (r *Mock) UnMockApplicationGetApplicationRecommendRuleList() {
r.mockApplicationGetApplicationRecommendRuleList = nil
}
// GetApplicationRecommendRuleListReq ...
type GetApplicationRecommendRuleListReq struct {
PageSize int64 `query:"page_size" json:"-"` // 分页大小, 示例值: 10, 最大值: `50`
PageToken *string `query:"page_token" json:"-"` // 分页标记, 第一次请求不填, 表示从头开始遍历;分页查询结果还有更多项时会同时返回新的 page_token, 下次遍历可采用该 page_token 获取查询结果, 示例值: "new-e11ee058b4a8ed2881da11ac7e37c4fc"
UserIDType *IDType `query:"user_id_type" json:"-"` // 用户 ID 类型, 示例值: "open_id", 可选值有: open_id: 标识一个用户在某个应用中的身份。同一个用户在不同应用中的 Open ID 不同。[了解更多: 如何获取 Open ID](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid), union_id: 标识一个用户在某个应用开发商下的身份。同一用户在同一开发商下的应用中的 Union ID 是相同的, 在不同开发商下的应用中的 Union ID 是不同的。通过 Union ID, 应用开发商可以把同个用户在多个应用中的身份关联起来。[了解更多: 如何获取 Union ID?](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-union-id), user_id: 标识一个用户在某个租户内的身份。同一个用户在租户 A 和租户 B 内的 User ID 是不同的。在同一个租户内, 一个用户的 User ID 在所有应用(包括商店应用)中都保持一致。User ID 主要用于在不同的应用间打通用户数据。[了解更多: 如何获取 User ID?](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-user-id), 默认值: `open_id`, 当值为 `user_id`, 字段权限要求: 获取用户 user ID
}
// GetApplicationRecommendRuleListResp ...
type GetApplicationRecommendRuleListResp struct {
Rules []*GetApplicationRecommendRuleListRespRule `json:"rules,omitempty"` // 推荐规则列表
PageToken string `json:"page_token,omitempty"` // 分页标记, 当 has_more 为 true 时, 会同时返回新的 page_token, 否则不返回 page_token
HasMore bool `json:"has_more,omitempty"` // 是否还有更多项
}
// GetApplicationRecommendRuleListRespRule ...
type GetApplicationRecommendRuleListRespRule struct {
ID string `json:"id,omitempty"` // 推荐规则 ID
Name string `json:"name,omitempty"` // 推荐规则名称
Status string `json:"status,omitempty"` // 推荐规则启用状态, 可选值有: open: 启用, closed: 停用
VisibilityInfo *GetApplicationRecommendRuleListRespRuleVisibilityInfo `json:"visibility_info,omitempty"` // 推荐规则可见性信息
RecommendItemInfos []*GetApplicationRecommendRuleListRespRuleRecommendItemInfo `json:"recommend_item_infos,omitempty"` // 不可移除推荐应用项列表
DistributedRecommendItemInfos []*GetApplicationRecommendRuleListRespRuleDistributedRecommendItemInfo `json:"distributed_recommend_item_infos,omitempty"` // 可移除推荐应用项列表
}
// GetApplicationRecommendRuleListRespRuleDistributedRecommendItemInfo ...
type GetApplicationRecommendRuleListRespRuleDistributedRecommendItemInfo struct {
ItemID string `json:"item_id,omitempty"` // 推荐应用项 ID
ItemType string `json:"item_type,omitempty"` // 推荐应用项类型, 可选值有: application: 应用类型, link: 链接类型
Name string `json:"name,omitempty"` // 推荐应用项名称
Description string `json:"description,omitempty"` // 推荐应用项描述
LinkURL string `json:"link_url,omitempty"` // 链接类型应用项的跳转链接(应用类型该字段为空)
ClientID string `json:"client_id,omitempty"` // 应用类型应用项的 app id(链接类型该字段为空)
IconURL string `json:"icon_url,omitempty"` // 应用项图标链接
DefaultLocale string `json:"default_locale,omitempty"` // 链接类型应用项的默认展示语种(应用类型该字段为空), 可选值有: zh_cn: 简体中文, zh_hk: 繁体中文(中国香港), zh_tw: 繁体中文(中国台湾), en_us: 英文, ja_jp: 日文
I18nName *GetApplicationRecommendRuleListRespRuleDistributedRecommendItemInfoI18nName `json:"i18n_name,omitempty"` // 应用项的多语种名称
}
// GetApplicationRecommendRuleListRespRuleDistributedRecommendItemInfoI18nName ...
type GetApplicationRecommendRuleListRespRuleDistributedRecommendItemInfoI18nName struct {
ZhCn string `json:"zh_cn,omitempty"` // 应用项的简体中文名称
ZhHk string `json:"zh_hk,omitempty"` // 应用项的繁体中文(中国香港)名称
ZhTw string `json:"zh_tw,omitempty"` // 应用项的繁体中文(中国台湾)名称
EnUs string `json:"en_us,omitempty"` // 应用项的英文名称
JaJp string `json:"ja_jp,omitempty"` // 应用项的日文名称
}
// GetApplicationRecommendRuleListRespRuleRecommendItemInfo ...
type GetApplicationRecommendRuleListRespRuleRecommendItemInfo struct {
ItemID string `json:"item_id,omitempty"` // 推荐应用项 ID
ItemType string `json:"item_type,omitempty"` // 推荐应用项类型, 可选值有: application: 应用类型, link: 链接类型
Name string `json:"name,omitempty"` // 推荐应用项名称
Description string `json:"description,omitempty"` // 推荐应用项描述
LinkURL string `json:"link_url,omitempty"` // 链接类型应用项的跳转链接(应用类型该字段为空)
ClientID string `json:"client_id,omitempty"` // 应用类型应用项的 app id(链接类型该字段为空)
IconURL string `json:"icon_url,omitempty"` // 应用项图标链接
DefaultLocale string `json:"default_locale,omitempty"` // 链接类型应用项的默认展示语种(应用类型该字段为空), 可选值有: zh_cn: 简体中文, zh_hk: 繁体中文(中国香港), zh_tw: 繁体中文(中国台湾), en_us: 英文, ja_jp: 日文
I18nName *GetApplicationRecommendRuleListRespRuleRecommendItemInfoI18nName `json:"i18n_name,omitempty"` // 应用项的多语种名称
}
// GetApplicationRecommendRuleListRespRuleRecommendItemInfoI18nName ...
type GetApplicationRecommendRuleListRespRuleRecommendItemInfoI18nName struct {
ZhCn string `json:"zh_cn,omitempty"` // 应用项的简体中文名称
ZhHk string `json:"zh_hk,omitempty"` // 应用项的繁体中文(中国香港)名称
ZhTw string `json:"zh_tw,omitempty"` // 应用项的繁体中文(中国台湾)名称
EnUs string `json:"en_us,omitempty"` // 应用项的英文名称
JaJp string `json:"ja_jp,omitempty"` // 应用项的日文名称
}
// GetApplicationRecommendRuleListRespRuleVisibilityInfo ...
type GetApplicationRecommendRuleListRespRuleVisibilityInfo struct {
IsAll bool `json:"is_all,omitempty"` // 是否全员可见
DepartmentIDs []string `json:"department_ids,omitempty"` // 可见部门 ID 列表
UserIDs []string `json:"user_ids,omitempty"` // 可见用户 ID 列表
GroupIDs []string `json:"group_ids,omitempty"` // 可见用户组 ID 列表
}
// getApplicationRecommendRuleListResp ...
type getApplicationRecommendRuleListResp struct {
Code int64 `json:"code,omitempty"` // 错误码, 非 0 表示失败
Msg string `json:"msg,omitempty"` // 错误描述
Data *GetApplicationRecommendRuleListResp `json:"data,omitempty"`
Error *ErrorDetail `json:"error,omitempty"`
}