gitee.com/larksuite/oapi-sdk-go/v3@v3.0.3/service/application/v6/model.go (about) 1 // Package application code generated by oapi sdk gen 2 /* 3 * MIT License 4 * 5 * Copyright (c) 2022 Lark Technologies Pte. Ltd. 6 * 7 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 8 * 9 * The above copyright notice and this permission notice, shall be included in all copies or substantial portions of the Software. 10 * 11 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 12 */ 13 14 package larkapplication 15 16 import ( 17 "fmt" 18 19 "context" 20 "errors" 21 22 "gitee.com/larksuite/oapi-sdk-go/v3/event" 23 24 "gitee.com/larksuite/oapi-sdk-go/v3/core" 25 ) 26 27 const ( 28 I18nKeyZhCn = "zh_cn" // 中文 29 I18nKeyEnUs = "en_us" // 英文 30 I18nKeyJaJp = "ja_jp" // 日文 31 ) 32 33 const ( 34 UserIdTypeUserId = "user_id" // 以user_id来识别用户 35 UserIdTypeUnionId = "union_id" // 以union_id来识别用户 36 UserIdTypeOpenId = "open_id" // 以open_id来识别用户 37 ) 38 39 const ( 40 I18nKeyPatchApplicationZhCn = "zh_cn" // 中文 41 I18nKeyPatchApplicationEnUs = "en_us" // 英文 42 I18nKeyPatchApplicationJaJp = "ja_jp" // 日文 43 ) 44 45 const ( 46 I18nKeyUnderauditlistApplicationZhCn = "zh_cn" // 中文 47 I18nKeyUnderauditlistApplicationEnUs = "en_us" // 英文 48 I18nKeyUnderauditlistApplicationJaJp = "ja_jp" // 日文 49 ) 50 51 const ( 52 UserIdTypeUnderauditlistApplicationUserId = "user_id" // 以user_id来识别用户 53 UserIdTypeUnderauditlistApplicationUnionId = "union_id" // 以union_id来识别用户 54 UserIdTypeUnderauditlistApplicationOpenId = "open_id" // 以open_id来识别用户 55 ) 56 57 const ( 58 CycleTypeDay = 1 // 日活 59 CycleTypeWeek = 2 // 周活, date字段应该填自然周周一的日期 60 CycleTypeMonth = 3 // 月活, date字段应该填自然月1号的日期 61 62 ) 63 64 const ( 65 AbilityApp = "app" // 返回应用整体的数据 66 AbilityMp = "mp" // 返回小程序的数据 67 AbilityH5 = "h5" // 返回网页的数据 68 AbilityBot = "bot" // 返回机器人的数据 69 ) 70 71 const ( 72 DepartmentIdTypeDepartmentId = "department_id" // 以自定义department_id来标识部门 73 DepartmentIdTypeOpenDepartmentId = "open_department_id" // 以open_department_id来标识部门 74 ) 75 76 const ( 77 I18nKeyGetApplicationAppVersionZhCn = "zh_cn" // 中文 78 I18nKeyGetApplicationAppVersionEnUs = "en_us" // 英文 79 I18nKeyGetApplicationAppVersionJaJp = "ja_jp" // 日文 80 ) 81 82 const ( 83 UserIdTypeGetApplicationAppVersionUserId = "user_id" // 以user_id来识别用户 84 UserIdTypeGetApplicationAppVersionUnionId = "union_id" // 以union_id来识别用户 85 UserIdTypeGetApplicationAppVersionOpenId = "open_id" // 以open_id来识别用户 86 ) 87 88 const ( 89 AppVersionStatusUnknown = 0 // 未知状态 90 AppVersionStatusAudited = 1 // 审核通过 91 AppVersionStatusReject = 2 // 审核拒绝 92 AppVersionStatusUnderAudit = 3 // 审核中 93 AppVersionStatusUnaudit = 4 // 未提交审核 94 95 ) 96 97 const ( 98 UserIdTypePatchApplicationAppVersionUserId = "user_id" // 以user_id来识别用户 99 UserIdTypePatchApplicationAppVersionUnionId = "union_id" // 以union_id来识别用户 100 UserIdTypePatchApplicationAppVersionOpenId = "open_id" // 以open_id来识别用户 101 ) 102 103 const ( 104 OpenFeedbackTypeFault = 1 // 故障反馈 105 OpenFeedbackTypeAdvice = 2 // 产品建议 106 107 ) 108 109 const ( 110 OpenMarkStatusUnmarked = 0 // 反馈未处理 111 OpenMarkStatusMarked = 1 // 反馈已处理 112 OpenMarkStatusProcessing = 2 // 反馈处理中 113 OpenMarkStatusClosed = 3 // 反馈已关闭 114 115 ) 116 117 const ( 118 UserIdTypeListApplicationFeedbackOpenId = "open_id" // 用户的 open id 119 UserIdTypeListApplicationFeedbackUnionId = "union_id" // 用户的 union id 120 UserIdTypeListApplicationFeedbackUserId = "user_id" // 用户的 user id 121 ) 122 123 const ( 124 UserIdTypePatchApplicationFeedbackOpenId = "open_id" // 用户的 open id 125 UserIdTypePatchApplicationFeedbackUnionId = "union_id" // 用户的 union id 126 UserIdTypePatchApplicationFeedbackUserId = "user_id" // 用户的 user id 127 ) 128 129 const ( 130 OpenMarkStatusPatchApplicationFeedbackUnmarked = 0 // 反馈未处理 131 OpenMarkStatusPatchApplicationFeedbackMarked = 1 // 反馈已处理 132 OpenMarkStatusPatchApplicationFeedbackProcessing = 2 // 反馈处理中 133 OpenMarkStatusPatchApplicationFeedbackClosed = 3 // 反馈已关闭 134 135 ) 136 137 type AppAbility struct { 138 Gadget *Gadget `json:"gadget,omitempty"` // 小程序能力 139 WebApp *WebApp `json:"web_app,omitempty"` // 网页能力 140 Bot *Bot `json:"bot,omitempty"` // 机器人能力 141 WorkplaceWidgets []*WorkplaceWidget `json:"workplace_widgets,omitempty"` // 小组件能力 142 Navigate *Navigate `json:"navigate,omitempty"` // 主导航小程序 143 CloudDoc *CloudDoc `json:"cloud_doc,omitempty"` // 云文档应用 144 DocsBlocks []*DocsBlock `json:"docs_blocks,omitempty"` // 云文档小组件 145 MessageAction *MessageAction `json:"message_action,omitempty"` // 消息快捷操作 146 PlusMenu *PlusMenu `json:"plus_menu,omitempty"` // 加号菜单 147 } 148 149 type AppAbilityBuilder struct { 150 gadget *Gadget // 小程序能力 151 gadgetFlag bool 152 webApp *WebApp // 网页能力 153 webAppFlag bool 154 bot *Bot // 机器人能力 155 botFlag bool 156 workplaceWidgets []*WorkplaceWidget // 小组件能力 157 workplaceWidgetsFlag bool 158 navigate *Navigate // 主导航小程序 159 navigateFlag bool 160 cloudDoc *CloudDoc // 云文档应用 161 cloudDocFlag bool 162 docsBlocks []*DocsBlock // 云文档小组件 163 docsBlocksFlag bool 164 messageAction *MessageAction // 消息快捷操作 165 messageActionFlag bool 166 plusMenu *PlusMenu // 加号菜单 167 plusMenuFlag bool 168 } 169 170 func NewAppAbilityBuilder() *AppAbilityBuilder { 171 builder := &AppAbilityBuilder{} 172 return builder 173 } 174 175 // 小程序能力 176 // 177 // 示例值: 178 func (builder *AppAbilityBuilder) Gadget(gadget *Gadget) *AppAbilityBuilder { 179 builder.gadget = gadget 180 builder.gadgetFlag = true 181 return builder 182 } 183 184 // 网页能力 185 // 186 // 示例值: 187 func (builder *AppAbilityBuilder) WebApp(webApp *WebApp) *AppAbilityBuilder { 188 builder.webApp = webApp 189 builder.webAppFlag = true 190 return builder 191 } 192 193 // 机器人能力 194 // 195 // 示例值: 196 func (builder *AppAbilityBuilder) Bot(bot *Bot) *AppAbilityBuilder { 197 builder.bot = bot 198 builder.botFlag = true 199 return builder 200 } 201 202 // 小组件能力 203 // 204 // 示例值: 205 func (builder *AppAbilityBuilder) WorkplaceWidgets(workplaceWidgets []*WorkplaceWidget) *AppAbilityBuilder { 206 builder.workplaceWidgets = workplaceWidgets 207 builder.workplaceWidgetsFlag = true 208 return builder 209 } 210 211 // 主导航小程序 212 // 213 // 示例值: 214 func (builder *AppAbilityBuilder) Navigate(navigate *Navigate) *AppAbilityBuilder { 215 builder.navigate = navigate 216 builder.navigateFlag = true 217 return builder 218 } 219 220 // 云文档应用 221 // 222 // 示例值: 223 func (builder *AppAbilityBuilder) CloudDoc(cloudDoc *CloudDoc) *AppAbilityBuilder { 224 builder.cloudDoc = cloudDoc 225 builder.cloudDocFlag = true 226 return builder 227 } 228 229 // 云文档小组件 230 // 231 // 示例值: 232 func (builder *AppAbilityBuilder) DocsBlocks(docsBlocks []*DocsBlock) *AppAbilityBuilder { 233 builder.docsBlocks = docsBlocks 234 builder.docsBlocksFlag = true 235 return builder 236 } 237 238 // 消息快捷操作 239 // 240 // 示例值: 241 func (builder *AppAbilityBuilder) MessageAction(messageAction *MessageAction) *AppAbilityBuilder { 242 builder.messageAction = messageAction 243 builder.messageActionFlag = true 244 return builder 245 } 246 247 // 加号菜单 248 // 249 // 示例值: 250 func (builder *AppAbilityBuilder) PlusMenu(plusMenu *PlusMenu) *AppAbilityBuilder { 251 builder.plusMenu = plusMenu 252 builder.plusMenuFlag = true 253 return builder 254 } 255 256 func (builder *AppAbilityBuilder) Build() *AppAbility { 257 req := &AppAbility{} 258 if builder.gadgetFlag { 259 req.Gadget = builder.gadget 260 } 261 if builder.webAppFlag { 262 req.WebApp = builder.webApp 263 } 264 if builder.botFlag { 265 req.Bot = builder.bot 266 } 267 if builder.workplaceWidgetsFlag { 268 req.WorkplaceWidgets = builder.workplaceWidgets 269 } 270 if builder.navigateFlag { 271 req.Navigate = builder.navigate 272 } 273 if builder.cloudDocFlag { 274 req.CloudDoc = builder.cloudDoc 275 } 276 if builder.docsBlocksFlag { 277 req.DocsBlocks = builder.docsBlocks 278 } 279 if builder.messageActionFlag { 280 req.MessageAction = builder.messageAction 281 } 282 if builder.plusMenuFlag { 283 req.PlusMenu = builder.plusMenu 284 } 285 return req 286 } 287 288 type AppAdminUser struct { 289 AdminType []string `json:"admin_type,omitempty"` // 管理员类型列表,如果该管理员同时是超级管理员 又是管理员,则同时返回两个角色。 ""super_admin"":超级管理员 ""admin"":管理员 返回示例:[""super_admin"",""admin""]" 290 UserId *string `json:"user_id,omitempty"` // 反馈用户id,租户内用户的唯一标识 ,ID值与查询参数中的user_id_type对应 291 } 292 293 type AppAdminUserBuilder struct { 294 adminType []string // 管理员类型列表,如果该管理员同时是超级管理员 又是管理员,则同时返回两个角色。 ""super_admin"":超级管理员 ""admin"":管理员 返回示例:[""super_admin"",""admin""]" 295 adminTypeFlag bool 296 userId string // 反馈用户id,租户内用户的唯一标识 ,ID值与查询参数中的user_id_type对应 297 userIdFlag bool 298 } 299 300 func NewAppAdminUserBuilder() *AppAdminUserBuilder { 301 builder := &AppAdminUserBuilder{} 302 return builder 303 } 304 305 // 管理员类型列表,如果该管理员同时是超级管理员 又是管理员,则同时返回两个角色。 ""super_admin"":超级管理员 ""admin"":管理员 返回示例:[""super_admin"",""admin""]" 306 // 307 // 示例值:["admin","super_admin"] 308 func (builder *AppAdminUserBuilder) AdminType(adminType []string) *AppAdminUserBuilder { 309 builder.adminType = adminType 310 builder.adminTypeFlag = true 311 return builder 312 } 313 314 // 反馈用户id,租户内用户的唯一标识 ,ID值与查询参数中的user_id_type对应 315 // 316 // 示例值:6865121785549946899 317 func (builder *AppAdminUserBuilder) UserId(userId string) *AppAdminUserBuilder { 318 builder.userId = userId 319 builder.userIdFlag = true 320 return builder 321 } 322 323 func (builder *AppAdminUserBuilder) Build() *AppAdminUser { 324 req := &AppAdminUser{} 325 if builder.adminTypeFlag { 326 req.AdminType = builder.adminType 327 } 328 if builder.userIdFlag { 329 req.UserId = &builder.userId 330 331 } 332 return req 333 } 334 335 type AppBadge struct { 336 UserId *string `json:"user_id,omitempty"` // 用户ID 337 Version *string `json:"version,omitempty"` // badge数据版本号 338 Extra *string `json:"extra,omitempty"` // badge extra 信息 339 Pc *ClientBadgeNum `json:"pc,omitempty"` // pc端badge数量 340 Mobile *ClientBadgeNum `json:"mobile,omitempty"` // 移动端badge数量 341 } 342 343 type AppBadgeBuilder struct { 344 userId string // 用户ID 345 userIdFlag bool 346 version string // badge数据版本号 347 versionFlag bool 348 extra string // badge extra 信息 349 extraFlag bool 350 pc *ClientBadgeNum // pc端badge数量 351 pcFlag bool 352 mobile *ClientBadgeNum // 移动端badge数量 353 mobileFlag bool 354 } 355 356 func NewAppBadgeBuilder() *AppBadgeBuilder { 357 builder := &AppBadgeBuilder{} 358 return builder 359 } 360 361 // 用户ID 362 // 363 // 示例值: 364 func (builder *AppBadgeBuilder) UserId(userId string) *AppBadgeBuilder { 365 builder.userId = userId 366 builder.userIdFlag = true 367 return builder 368 } 369 370 // badge数据版本号 371 // 372 // 示例值: 373 func (builder *AppBadgeBuilder) Version(version string) *AppBadgeBuilder { 374 builder.version = version 375 builder.versionFlag = true 376 return builder 377 } 378 379 // badge extra 信息 380 // 381 // 示例值: 382 func (builder *AppBadgeBuilder) Extra(extra string) *AppBadgeBuilder { 383 builder.extra = extra 384 builder.extraFlag = true 385 return builder 386 } 387 388 // pc端badge数量 389 // 390 // 示例值: 391 func (builder *AppBadgeBuilder) Pc(pc *ClientBadgeNum) *AppBadgeBuilder { 392 builder.pc = pc 393 builder.pcFlag = true 394 return builder 395 } 396 397 // 移动端badge数量 398 // 399 // 示例值: 400 func (builder *AppBadgeBuilder) Mobile(mobile *ClientBadgeNum) *AppBadgeBuilder { 401 builder.mobile = mobile 402 builder.mobileFlag = true 403 return builder 404 } 405 406 func (builder *AppBadgeBuilder) Build() *AppBadge { 407 req := &AppBadge{} 408 if builder.userIdFlag { 409 req.UserId = &builder.userId 410 411 } 412 if builder.versionFlag { 413 req.Version = &builder.version 414 415 } 416 if builder.extraFlag { 417 req.Extra = &builder.extra 418 419 } 420 if builder.pcFlag { 421 req.Pc = builder.pc 422 } 423 if builder.mobileFlag { 424 req.Mobile = builder.mobile 425 } 426 return req 427 } 428 429 type AppCommonCategory struct { 430 I18nKey *string `json:"i18n_key,omitempty"` // 国际化语言的 key 431 Category *string `json:"category,omitempty"` // 应用分类 432 } 433 434 type AppCommonCategoryBuilder struct { 435 i18nKey string // 国际化语言的 key 436 i18nKeyFlag bool 437 category string // 应用分类 438 categoryFlag bool 439 } 440 441 func NewAppCommonCategoryBuilder() *AppCommonCategoryBuilder { 442 builder := &AppCommonCategoryBuilder{} 443 return builder 444 } 445 446 // 国际化语言的 key 447 // 448 // 示例值:zh_cn 449 func (builder *AppCommonCategoryBuilder) I18nKey(i18nKey string) *AppCommonCategoryBuilder { 450 builder.i18nKey = i18nKey 451 builder.i18nKeyFlag = true 452 return builder 453 } 454 455 // 应用分类 456 // 457 // 示例值:分析工具 458 func (builder *AppCommonCategoryBuilder) Category(category string) *AppCommonCategoryBuilder { 459 builder.category = category 460 builder.categoryFlag = true 461 return builder 462 } 463 464 func (builder *AppCommonCategoryBuilder) Build() *AppCommonCategory { 465 req := &AppCommonCategory{} 466 if builder.i18nKeyFlag { 467 req.I18nKey = &builder.i18nKey 468 469 } 470 if builder.categoryFlag { 471 req.Category = &builder.category 472 473 } 474 return req 475 } 476 477 type AppCustomCategory struct { 478 I18nKey *string `json:"i18n_key,omitempty"` // 国际化语言的 key 479 Description *string `json:"description,omitempty"` // 应用权限的国际化描述 480 AppIds []string `json:"app_ids,omitempty"` // 在该分组下的应用 id 列表 481 } 482 483 type AppCustomCategoryBuilder struct { 484 i18nKey string // 国际化语言的 key 485 i18nKeyFlag bool 486 description string // 应用权限的国际化描述 487 descriptionFlag bool 488 appIds []string // 在该分组下的应用 id 列表 489 appIdsFlag bool 490 } 491 492 func NewAppCustomCategoryBuilder() *AppCustomCategoryBuilder { 493 builder := &AppCustomCategoryBuilder{} 494 return builder 495 } 496 497 // 国际化语言的 key 498 // 499 // 示例值:zh_cn 500 func (builder *AppCustomCategoryBuilder) I18nKey(i18nKey string) *AppCustomCategoryBuilder { 501 builder.i18nKey = i18nKey 502 builder.i18nKeyFlag = true 503 return builder 504 } 505 506 // 应用权限的国际化描述 507 // 508 // 示例值:获取应用信息 509 func (builder *AppCustomCategoryBuilder) Description(description string) *AppCustomCategoryBuilder { 510 builder.description = description 511 builder.descriptionFlag = true 512 return builder 513 } 514 515 // 在该分组下的应用 id 列表 516 // 517 // 示例值: 518 func (builder *AppCustomCategoryBuilder) AppIds(appIds []string) *AppCustomCategoryBuilder { 519 builder.appIds = appIds 520 builder.appIdsFlag = true 521 return builder 522 } 523 524 func (builder *AppCustomCategoryBuilder) Build() *AppCustomCategory { 525 req := &AppCustomCategory{} 526 if builder.i18nKeyFlag { 527 req.I18nKey = &builder.i18nKey 528 529 } 530 if builder.descriptionFlag { 531 req.Description = &builder.description 532 533 } 534 if builder.appIdsFlag { 535 req.AppIds = builder.appIds 536 } 537 return req 538 } 539 540 type AppCustomCategoryI18nInfo struct { 541 I18nKey *string `json:"i18n_key,omitempty"` // 国际化语言的 key 542 Name *string `json:"name,omitempty"` // 自定义分组的国际化名称 543 } 544 545 type AppCustomCategoryI18nInfoBuilder struct { 546 i18nKey string // 国际化语言的 key 547 i18nKeyFlag bool 548 name string // 自定义分组的国际化名称 549 nameFlag bool 550 } 551 552 func NewAppCustomCategoryI18nInfoBuilder() *AppCustomCategoryI18nInfoBuilder { 553 builder := &AppCustomCategoryI18nInfoBuilder{} 554 return builder 555 } 556 557 // 国际化语言的 key 558 // 559 // 示例值:zh_cn 560 func (builder *AppCustomCategoryI18nInfoBuilder) I18nKey(i18nKey string) *AppCustomCategoryI18nInfoBuilder { 561 builder.i18nKey = i18nKey 562 builder.i18nKeyFlag = true 563 return builder 564 } 565 566 // 自定义分组的国际化名称 567 // 568 // 示例值:名称 569 func (builder *AppCustomCategoryI18nInfoBuilder) Name(name string) *AppCustomCategoryI18nInfoBuilder { 570 builder.name = name 571 builder.nameFlag = true 572 return builder 573 } 574 575 func (builder *AppCustomCategoryI18nInfoBuilder) Build() *AppCustomCategoryI18nInfo { 576 req := &AppCustomCategoryI18nInfo{} 577 if builder.i18nKeyFlag { 578 req.I18nKey = &builder.i18nKey 579 580 } 581 if builder.nameFlag { 582 req.Name = &builder.name 583 584 } 585 return req 586 } 587 588 type AppI18nInfo struct { 589 I18nKey *string `json:"i18n_key,omitempty"` // 国际化语言的 key 590 Name *string `json:"name,omitempty"` // 应用国际化名称 591 Description *string `json:"description,omitempty"` // 应用国际化描述(副标题) 592 HelpUse *string `json:"help_use,omitempty"` // 帮助国际化文档链接 593 } 594 595 type AppI18nInfoBuilder struct { 596 i18nKey string // 国际化语言的 key 597 i18nKeyFlag bool 598 name string // 应用国际化名称 599 nameFlag bool 600 description string // 应用国际化描述(副标题) 601 descriptionFlag bool 602 helpUse string // 帮助国际化文档链接 603 helpUseFlag bool 604 } 605 606 func NewAppI18nInfoBuilder() *AppI18nInfoBuilder { 607 builder := &AppI18nInfoBuilder{} 608 return builder 609 } 610 611 // 国际化语言的 key 612 // 613 // 示例值:zh_cn 614 func (builder *AppI18nInfoBuilder) I18nKey(i18nKey string) *AppI18nInfoBuilder { 615 builder.i18nKey = i18nKey 616 builder.i18nKeyFlag = true 617 return builder 618 } 619 620 // 应用国际化名称 621 // 622 // 示例值:应用名称 623 func (builder *AppI18nInfoBuilder) Name(name string) *AppI18nInfoBuilder { 624 builder.name = name 625 builder.nameFlag = true 626 return builder 627 } 628 629 // 应用国际化描述(副标题) 630 // 631 // 示例值:应用描述 632 func (builder *AppI18nInfoBuilder) Description(description string) *AppI18nInfoBuilder { 633 builder.description = description 634 builder.descriptionFlag = true 635 return builder 636 } 637 638 // 帮助国际化文档链接 639 // 640 // 示例值:https://www.example.com 641 func (builder *AppI18nInfoBuilder) HelpUse(helpUse string) *AppI18nInfoBuilder { 642 builder.helpUse = helpUse 643 builder.helpUseFlag = true 644 return builder 645 } 646 647 func (builder *AppI18nInfoBuilder) Build() *AppI18nInfo { 648 req := &AppI18nInfo{} 649 if builder.i18nKeyFlag { 650 req.I18nKey = &builder.i18nKey 651 652 } 653 if builder.nameFlag { 654 req.Name = &builder.name 655 656 } 657 if builder.descriptionFlag { 658 req.Description = &builder.description 659 660 } 661 if builder.helpUseFlag { 662 req.HelpUse = &builder.helpUse 663 664 } 665 return req 666 } 667 668 type AppMessageTrendItem struct { 669 ChatType *string `json:"chat_type,omitempty"` // 聊天类型,private:私聊;group:群聊 670 EventType *string `json:"event_type,omitempty"` // 消息事件类型,message_send:已发送消息;bot_notify_get_message:bot 通知收到消息;message_read:消息已读 671 MessageType *string `json:"message_type,omitempty"` // 消息类型,大小写不敏感,text:文本消息;image:图片消息;interactive:卡片消息;post:富文本消息;share_chat:群名片 672 Trend []*UsageTrendItem `json:"trend,omitempty"` // 673 } 674 675 type AppMessageTrendItemBuilder struct { 676 chatType string // 聊天类型,private:私聊;group:群聊 677 chatTypeFlag bool 678 eventType string // 消息事件类型,message_send:已发送消息;bot_notify_get_message:bot 通知收到消息;message_read:消息已读 679 eventTypeFlag bool 680 messageType string // 消息类型,大小写不敏感,text:文本消息;image:图片消息;interactive:卡片消息;post:富文本消息;share_chat:群名片 681 messageTypeFlag bool 682 trend []*UsageTrendItem // 683 trendFlag bool 684 } 685 686 func NewAppMessageTrendItemBuilder() *AppMessageTrendItemBuilder { 687 builder := &AppMessageTrendItemBuilder{} 688 return builder 689 } 690 691 // 聊天类型,private:私聊;group:群聊 692 // 693 // 示例值: 694 func (builder *AppMessageTrendItemBuilder) ChatType(chatType string) *AppMessageTrendItemBuilder { 695 builder.chatType = chatType 696 builder.chatTypeFlag = true 697 return builder 698 } 699 700 // 消息事件类型,message_send:已发送消息;bot_notify_get_message:bot 通知收到消息;message_read:消息已读 701 // 702 // 示例值: 703 func (builder *AppMessageTrendItemBuilder) EventType(eventType string) *AppMessageTrendItemBuilder { 704 builder.eventType = eventType 705 builder.eventTypeFlag = true 706 return builder 707 } 708 709 // 消息类型,大小写不敏感,text:文本消息;image:图片消息;interactive:卡片消息;post:富文本消息;share_chat:群名片 710 // 711 // 示例值: 712 func (builder *AppMessageTrendItemBuilder) MessageType(messageType string) *AppMessageTrendItemBuilder { 713 builder.messageType = messageType 714 builder.messageTypeFlag = true 715 return builder 716 } 717 718 // 719 // 720 // 示例值: 721 func (builder *AppMessageTrendItemBuilder) Trend(trend []*UsageTrendItem) *AppMessageTrendItemBuilder { 722 builder.trend = trend 723 builder.trendFlag = true 724 return builder 725 } 726 727 func (builder *AppMessageTrendItemBuilder) Build() *AppMessageTrendItem { 728 req := &AppMessageTrendItem{} 729 if builder.chatTypeFlag { 730 req.ChatType = &builder.chatType 731 732 } 733 if builder.eventTypeFlag { 734 req.EventType = &builder.eventType 735 736 } 737 if builder.messageTypeFlag { 738 req.MessageType = &builder.messageType 739 740 } 741 if builder.trendFlag { 742 req.Trend = builder.trend 743 } 744 return req 745 } 746 747 type AppScope struct { 748 Scope *string `json:"scope,omitempty"` // 应用权限 749 Description *string `json:"description,omitempty"` // 应用权限的国际化描述 750 Level *int `json:"level,omitempty"` // 权限等级描述 751 } 752 753 type AppScopeBuilder struct { 754 scope string // 应用权限 755 scopeFlag bool 756 description string // 应用权限的国际化描述 757 descriptionFlag bool 758 level int // 权限等级描述 759 levelFlag bool 760 } 761 762 func NewAppScopeBuilder() *AppScopeBuilder { 763 builder := &AppScopeBuilder{} 764 return builder 765 } 766 767 // 应用权限 768 // 769 // 示例值:contact:user.base 770 func (builder *AppScopeBuilder) Scope(scope string) *AppScopeBuilder { 771 builder.scope = scope 772 builder.scopeFlag = true 773 return builder 774 } 775 776 // 应用权限的国际化描述 777 // 778 // 示例值:获取应用信息 779 func (builder *AppScopeBuilder) Description(description string) *AppScopeBuilder { 780 builder.description = description 781 builder.descriptionFlag = true 782 return builder 783 } 784 785 // 权限等级描述 786 // 787 // 示例值:1 788 func (builder *AppScopeBuilder) Level(level int) *AppScopeBuilder { 789 builder.level = level 790 builder.levelFlag = true 791 return builder 792 } 793 794 func (builder *AppScopeBuilder) Build() *AppScope { 795 req := &AppScope{} 796 if builder.scopeFlag { 797 req.Scope = &builder.scope 798 799 } 800 if builder.descriptionFlag { 801 req.Description = &builder.description 802 803 } 804 if builder.levelFlag { 805 req.Level = &builder.level 806 807 } 808 return req 809 } 810 811 type AppScopeI18nInfo struct { 812 I18nKey *string `json:"i18n_key,omitempty"` // 国际化语言的 key 813 Description *string `json:"description,omitempty"` // 应用权限的国际化描述 814 } 815 816 type AppScopeI18nInfoBuilder struct { 817 i18nKey string // 国际化语言的 key 818 i18nKeyFlag bool 819 description string // 应用权限的国际化描述 820 descriptionFlag bool 821 } 822 823 func NewAppScopeI18nInfoBuilder() *AppScopeI18nInfoBuilder { 824 builder := &AppScopeI18nInfoBuilder{} 825 return builder 826 } 827 828 // 国际化语言的 key 829 // 830 // 示例值:zh_cn 831 func (builder *AppScopeI18nInfoBuilder) I18nKey(i18nKey string) *AppScopeI18nInfoBuilder { 832 builder.i18nKey = i18nKey 833 builder.i18nKeyFlag = true 834 return builder 835 } 836 837 // 应用权限的国际化描述 838 // 839 // 示例值:获取应用信息 840 func (builder *AppScopeI18nInfoBuilder) Description(description string) *AppScopeI18nInfoBuilder { 841 builder.description = description 842 builder.descriptionFlag = true 843 return builder 844 } 845 846 func (builder *AppScopeI18nInfoBuilder) Build() *AppScopeI18nInfo { 847 req := &AppScopeI18nInfo{} 848 if builder.i18nKeyFlag { 849 req.I18nKey = &builder.i18nKey 850 851 } 852 if builder.descriptionFlag { 853 req.Description = &builder.description 854 855 } 856 return req 857 } 858 859 type AppScopes struct { 860 HighLevelScopes []string `json:"high_level_scopes,omitempty"` // 应用高级权限列表 861 LowLevelScopes []string `json:"low_level_scopes,omitempty"` // 应用低级权限列表 862 } 863 864 type AppScopesBuilder struct { 865 highLevelScopes []string // 应用高级权限列表 866 highLevelScopesFlag bool 867 lowLevelScopes []string // 应用低级权限列表 868 lowLevelScopesFlag bool 869 } 870 871 func NewAppScopesBuilder() *AppScopesBuilder { 872 builder := &AppScopesBuilder{} 873 return builder 874 } 875 876 // 应用高级权限列表 877 // 878 // 示例值: 879 func (builder *AppScopesBuilder) HighLevelScopes(highLevelScopes []string) *AppScopesBuilder { 880 builder.highLevelScopes = highLevelScopes 881 builder.highLevelScopesFlag = true 882 return builder 883 } 884 885 // 应用低级权限列表 886 // 887 // 示例值: 888 func (builder *AppScopesBuilder) LowLevelScopes(lowLevelScopes []string) *AppScopesBuilder { 889 builder.lowLevelScopes = lowLevelScopes 890 builder.lowLevelScopesFlag = true 891 return builder 892 } 893 894 func (builder *AppScopesBuilder) Build() *AppScopes { 895 req := &AppScopes{} 896 if builder.highLevelScopesFlag { 897 req.HighLevelScopes = builder.highLevelScopes 898 } 899 if builder.lowLevelScopesFlag { 900 req.LowLevelScopes = builder.lowLevelScopes 901 } 902 return req 903 } 904 905 type AppUsageTrendItems struct { 906 Id *string `json:"id,omitempty"` // 部门号 907 Trend []*UsageTrendItem `json:"trend,omitempty"` // 趋势统计 908 } 909 910 type AppUsageTrendItemsBuilder struct { 911 id string // 部门号 912 idFlag bool 913 trend []*UsageTrendItem // 趋势统计 914 trendFlag bool 915 } 916 917 func NewAppUsageTrendItemsBuilder() *AppUsageTrendItemsBuilder { 918 builder := &AppUsageTrendItemsBuilder{} 919 return builder 920 } 921 922 // 部门号 923 // 924 // 示例值: 925 func (builder *AppUsageTrendItemsBuilder) Id(id string) *AppUsageTrendItemsBuilder { 926 builder.id = id 927 builder.idFlag = true 928 return builder 929 } 930 931 // 趋势统计 932 // 933 // 示例值: 934 func (builder *AppUsageTrendItemsBuilder) Trend(trend []*UsageTrendItem) *AppUsageTrendItemsBuilder { 935 builder.trend = trend 936 builder.trendFlag = true 937 return builder 938 } 939 940 func (builder *AppUsageTrendItemsBuilder) Build() *AppUsageTrendItems { 941 req := &AppUsageTrendItems{} 942 if builder.idFlag { 943 req.Id = &builder.id 944 945 } 946 if builder.trendFlag { 947 req.Trend = builder.trend 948 } 949 return req 950 } 951 952 type AppVersionId struct { 953 Version *string `json:"version,omitempty"` // 开发者填入的应用版本 ID 954 VersionId *string `json:"version_id,omitempty"` // 唯一标识应用版本的 ID 955 } 956 957 type AppVersionIdBuilder struct { 958 version string // 开发者填入的应用版本 ID 959 versionFlag bool 960 versionId string // 唯一标识应用版本的 ID 961 versionIdFlag bool 962 } 963 964 func NewAppVersionIdBuilder() *AppVersionIdBuilder { 965 builder := &AppVersionIdBuilder{} 966 return builder 967 } 968 969 // 开发者填入的应用版本 ID 970 // 971 // 示例值:1.0.0 972 func (builder *AppVersionIdBuilder) Version(version string) *AppVersionIdBuilder { 973 builder.version = version 974 builder.versionFlag = true 975 return builder 976 } 977 978 // 唯一标识应用版本的 ID 979 // 980 // 示例值:oav_d317f090b7258ad0372aa53963cda70d 981 func (builder *AppVersionIdBuilder) VersionId(versionId string) *AppVersionIdBuilder { 982 builder.versionId = versionId 983 builder.versionIdFlag = true 984 return builder 985 } 986 987 func (builder *AppVersionIdBuilder) Build() *AppVersionId { 988 req := &AppVersionId{} 989 if builder.versionFlag { 990 req.Version = &builder.version 991 992 } 993 if builder.versionIdFlag { 994 req.VersionId = &builder.versionId 995 996 } 997 return req 998 } 999 1000 type AppVersionRemark struct { 1001 Remark *string `json:"remark,omitempty"` // 备注说明 1002 UpdateRemark *string `json:"update_remark,omitempty"` // 更新说明 1003 Visibility *AppVisibility `json:"visibility,omitempty"` // 应用当前版本开发者编辑的可见性建议,若开发者未编辑可见性建议,则该字段无内容 1004 } 1005 1006 type AppVersionRemarkBuilder struct { 1007 remark string // 备注说明 1008 remarkFlag bool 1009 updateRemark string // 更新说明 1010 updateRemarkFlag bool 1011 visibility *AppVisibility // 应用当前版本开发者编辑的可见性建议,若开发者未编辑可见性建议,则该字段无内容 1012 visibilityFlag bool 1013 } 1014 1015 func NewAppVersionRemarkBuilder() *AppVersionRemarkBuilder { 1016 builder := &AppVersionRemarkBuilder{} 1017 return builder 1018 } 1019 1020 // 备注说明 1021 // 1022 // 示例值:备注说明 1023 func (builder *AppVersionRemarkBuilder) Remark(remark string) *AppVersionRemarkBuilder { 1024 builder.remark = remark 1025 builder.remarkFlag = true 1026 return builder 1027 } 1028 1029 // 更新说明 1030 // 1031 // 示例值:更新说明 1032 func (builder *AppVersionRemarkBuilder) UpdateRemark(updateRemark string) *AppVersionRemarkBuilder { 1033 builder.updateRemark = updateRemark 1034 builder.updateRemarkFlag = true 1035 return builder 1036 } 1037 1038 // 应用当前版本开发者编辑的可见性建议,若开发者未编辑可见性建议,则该字段无内容 1039 // 1040 // 示例值: 1041 func (builder *AppVersionRemarkBuilder) Visibility(visibility *AppVisibility) *AppVersionRemarkBuilder { 1042 builder.visibility = visibility 1043 builder.visibilityFlag = true 1044 return builder 1045 } 1046 1047 func (builder *AppVersionRemarkBuilder) Build() *AppVersionRemark { 1048 req := &AppVersionRemark{} 1049 if builder.remarkFlag { 1050 req.Remark = &builder.remark 1051 1052 } 1053 if builder.updateRemarkFlag { 1054 req.UpdateRemark = &builder.updateRemark 1055 1056 } 1057 if builder.visibilityFlag { 1058 req.Visibility = builder.visibility 1059 } 1060 return req 1061 } 1062 1063 type AppVersionRemarkEvent struct { 1064 Remark *string `json:"remark,omitempty"` // 备注说明 1065 UpdateRemark *string `json:"update_remark,omitempty"` // 更新说明 1066 Visibility *AppVisibilityEvent `json:"visibility,omitempty"` // 可见性名单 1067 } 1068 1069 type AppVersionRemarkEventBuilder struct { 1070 remark string // 备注说明 1071 remarkFlag bool 1072 updateRemark string // 更新说明 1073 updateRemarkFlag bool 1074 visibility *AppVisibilityEvent // 可见性名单 1075 visibilityFlag bool 1076 } 1077 1078 func NewAppVersionRemarkEventBuilder() *AppVersionRemarkEventBuilder { 1079 builder := &AppVersionRemarkEventBuilder{} 1080 return builder 1081 } 1082 1083 // 备注说明 1084 // 1085 // 示例值:备注说明 1086 func (builder *AppVersionRemarkEventBuilder) Remark(remark string) *AppVersionRemarkEventBuilder { 1087 builder.remark = remark 1088 builder.remarkFlag = true 1089 return builder 1090 } 1091 1092 // 更新说明 1093 // 1094 // 示例值:更新说明 1095 func (builder *AppVersionRemarkEventBuilder) UpdateRemark(updateRemark string) *AppVersionRemarkEventBuilder { 1096 builder.updateRemark = updateRemark 1097 builder.updateRemarkFlag = true 1098 return builder 1099 } 1100 1101 // 可见性名单 1102 // 1103 // 示例值: 1104 func (builder *AppVersionRemarkEventBuilder) Visibility(visibility *AppVisibilityEvent) *AppVersionRemarkEventBuilder { 1105 builder.visibility = visibility 1106 builder.visibilityFlag = true 1107 return builder 1108 } 1109 1110 func (builder *AppVersionRemarkEventBuilder) Build() *AppVersionRemarkEvent { 1111 req := &AppVersionRemarkEvent{} 1112 if builder.remarkFlag { 1113 req.Remark = &builder.remark 1114 1115 } 1116 if builder.updateRemarkFlag { 1117 req.UpdateRemark = &builder.updateRemark 1118 1119 } 1120 if builder.visibilityFlag { 1121 req.Visibility = builder.visibility 1122 } 1123 return req 1124 } 1125 1126 type AppVisibility struct { 1127 IsAll *bool `json:"is_all,omitempty"` // 是否全员可见 1128 VisibleList *AppVisibleList `json:"visible_list,omitempty"` // 可见名单 1129 InvisibleList *AppVisibleList `json:"invisible_list,omitempty"` // 不可见名单 1130 } 1131 1132 type AppVisibilityBuilder struct { 1133 isAll bool // 是否全员可见 1134 isAllFlag bool 1135 visibleList *AppVisibleList // 可见名单 1136 visibleListFlag bool 1137 invisibleList *AppVisibleList // 不可见名单 1138 invisibleListFlag bool 1139 } 1140 1141 func NewAppVisibilityBuilder() *AppVisibilityBuilder { 1142 builder := &AppVisibilityBuilder{} 1143 return builder 1144 } 1145 1146 // 是否全员可见 1147 // 1148 // 示例值:false 1149 func (builder *AppVisibilityBuilder) IsAll(isAll bool) *AppVisibilityBuilder { 1150 builder.isAll = isAll 1151 builder.isAllFlag = true 1152 return builder 1153 } 1154 1155 // 可见名单 1156 // 1157 // 示例值: 1158 func (builder *AppVisibilityBuilder) VisibleList(visibleList *AppVisibleList) *AppVisibilityBuilder { 1159 builder.visibleList = visibleList 1160 builder.visibleListFlag = true 1161 return builder 1162 } 1163 1164 // 不可见名单 1165 // 1166 // 示例值: 1167 func (builder *AppVisibilityBuilder) InvisibleList(invisibleList *AppVisibleList) *AppVisibilityBuilder { 1168 builder.invisibleList = invisibleList 1169 builder.invisibleListFlag = true 1170 return builder 1171 } 1172 1173 func (builder *AppVisibilityBuilder) Build() *AppVisibility { 1174 req := &AppVisibility{} 1175 if builder.isAllFlag { 1176 req.IsAll = &builder.isAll 1177 1178 } 1179 if builder.visibleListFlag { 1180 req.VisibleList = builder.visibleList 1181 } 1182 if builder.invisibleListFlag { 1183 req.InvisibleList = builder.invisibleList 1184 } 1185 return req 1186 } 1187 1188 type AppVisibilityEvent struct { 1189 IsAll *bool `json:"is_all,omitempty"` // 是否全员可见 1190 VisibleList *AppVisibleListEvent `json:"visible_list,omitempty"` // 可见名单 1191 InvisibleList *AppVisibleListEvent `json:"invisible_list,omitempty"` // 不可见名单 1192 } 1193 1194 type AppVisibilityEventBuilder struct { 1195 isAll bool // 是否全员可见 1196 isAllFlag bool 1197 visibleList *AppVisibleListEvent // 可见名单 1198 visibleListFlag bool 1199 invisibleList *AppVisibleListEvent // 不可见名单 1200 invisibleListFlag bool 1201 } 1202 1203 func NewAppVisibilityEventBuilder() *AppVisibilityEventBuilder { 1204 builder := &AppVisibilityEventBuilder{} 1205 return builder 1206 } 1207 1208 // 是否全员可见 1209 // 1210 // 示例值:false 1211 func (builder *AppVisibilityEventBuilder) IsAll(isAll bool) *AppVisibilityEventBuilder { 1212 builder.isAll = isAll 1213 builder.isAllFlag = true 1214 return builder 1215 } 1216 1217 // 可见名单 1218 // 1219 // 示例值: 1220 func (builder *AppVisibilityEventBuilder) VisibleList(visibleList *AppVisibleListEvent) *AppVisibilityEventBuilder { 1221 builder.visibleList = visibleList 1222 builder.visibleListFlag = true 1223 return builder 1224 } 1225 1226 // 不可见名单 1227 // 1228 // 示例值: 1229 func (builder *AppVisibilityEventBuilder) InvisibleList(invisibleList *AppVisibleListEvent) *AppVisibilityEventBuilder { 1230 builder.invisibleList = invisibleList 1231 builder.invisibleListFlag = true 1232 return builder 1233 } 1234 1235 func (builder *AppVisibilityEventBuilder) Build() *AppVisibilityEvent { 1236 req := &AppVisibilityEvent{} 1237 if builder.isAllFlag { 1238 req.IsAll = &builder.isAll 1239 1240 } 1241 if builder.visibleListFlag { 1242 req.VisibleList = builder.visibleList 1243 } 1244 if builder.invisibleListFlag { 1245 req.InvisibleList = builder.invisibleList 1246 } 1247 return req 1248 } 1249 1250 type AppVisibilityItem struct { 1251 UserId *string `json:"user_id,omitempty"` // 租户内用户的唯一标识,ID值与查询参数中的user_id_type 对应 1252 DepartmentId *string `json:"department_id,omitempty"` // 用户所属部门的ID,ID值与查询参数中的department_id_type 对应 1253 GroupId *string `json:"group_id,omitempty"` // 用户组 ID group_id 用来标识租户内一个唯一的用户组 1254 } 1255 1256 type AppVisibilityItemBuilder struct { 1257 userId string // 租户内用户的唯一标识,ID值与查询参数中的user_id_type 对应 1258 userIdFlag bool 1259 departmentId string // 用户所属部门的ID,ID值与查询参数中的department_id_type 对应 1260 departmentIdFlag bool 1261 groupId string // 用户组 ID group_id 用来标识租户内一个唯一的用户组 1262 groupIdFlag bool 1263 } 1264 1265 func NewAppVisibilityItemBuilder() *AppVisibilityItemBuilder { 1266 builder := &AppVisibilityItemBuilder{} 1267 return builder 1268 } 1269 1270 // 租户内用户的唯一标识,ID值与查询参数中的user_id_type 对应 1271 // 1272 // 示例值:ou_d317f090b7258ad0372aa53963cda70d 1273 func (builder *AppVisibilityItemBuilder) UserId(userId string) *AppVisibilityItemBuilder { 1274 builder.userId = userId 1275 builder.userIdFlag = true 1276 return builder 1277 } 1278 1279 // 用户所属部门的ID,ID值与查询参数中的department_id_type 对应 1280 // 1281 // 示例值:od-aa2c50a04769feefededb7a05b7525a8 1282 func (builder *AppVisibilityItemBuilder) DepartmentId(departmentId string) *AppVisibilityItemBuilder { 1283 builder.departmentId = departmentId 1284 builder.departmentIdFlag = true 1285 return builder 1286 } 1287 1288 // 用户组 ID group_id 用来标识租户内一个唯一的用户组 1289 // 1290 // 示例值: 1291 func (builder *AppVisibilityItemBuilder) GroupId(groupId string) *AppVisibilityItemBuilder { 1292 builder.groupId = groupId 1293 builder.groupIdFlag = true 1294 return builder 1295 } 1296 1297 func (builder *AppVisibilityItemBuilder) Build() *AppVisibilityItem { 1298 req := &AppVisibilityItem{} 1299 if builder.userIdFlag { 1300 req.UserId = &builder.userId 1301 1302 } 1303 if builder.departmentIdFlag { 1304 req.DepartmentId = &builder.departmentId 1305 1306 } 1307 if builder.groupIdFlag { 1308 req.GroupId = &builder.groupId 1309 1310 } 1311 return req 1312 } 1313 1314 type AppVisibleList struct { 1315 OpenIds []string `json:"open_ids,omitempty"` // 可见性成员 open_id 列表 1316 DepartmentIds []string `json:"department_ids,omitempty"` // 可见性部门的 id 列表 1317 } 1318 1319 type AppVisibleListBuilder struct { 1320 openIds []string // 可见性成员 open_id 列表 1321 openIdsFlag bool 1322 departmentIds []string // 可见性部门的 id 列表 1323 departmentIdsFlag bool 1324 } 1325 1326 func NewAppVisibleListBuilder() *AppVisibleListBuilder { 1327 builder := &AppVisibleListBuilder{} 1328 return builder 1329 } 1330 1331 // 可见性成员 open_id 列表 1332 // 1333 // 示例值: 1334 func (builder *AppVisibleListBuilder) OpenIds(openIds []string) *AppVisibleListBuilder { 1335 builder.openIds = openIds 1336 builder.openIdsFlag = true 1337 return builder 1338 } 1339 1340 // 可见性部门的 id 列表 1341 // 1342 // 示例值: 1343 func (builder *AppVisibleListBuilder) DepartmentIds(departmentIds []string) *AppVisibleListBuilder { 1344 builder.departmentIds = departmentIds 1345 builder.departmentIdsFlag = true 1346 return builder 1347 } 1348 1349 func (builder *AppVisibleListBuilder) Build() *AppVisibleList { 1350 req := &AppVisibleList{} 1351 if builder.openIdsFlag { 1352 req.OpenIds = builder.openIds 1353 } 1354 if builder.departmentIdsFlag { 1355 req.DepartmentIds = builder.departmentIds 1356 } 1357 return req 1358 } 1359 1360 type AppVisibleListEvent struct { 1361 OpenIds []*UserId `json:"open_ids,omitempty"` // 可见性成员 id 列表 1362 DepartmentIds []string `json:"department_ids,omitempty"` // 可见性部门的 id 列表 1363 } 1364 1365 type AppVisibleListEventBuilder struct { 1366 openIds []*UserId // 可见性成员 id 列表 1367 openIdsFlag bool 1368 departmentIds []string // 可见性部门的 id 列表 1369 departmentIdsFlag bool 1370 } 1371 1372 func NewAppVisibleListEventBuilder() *AppVisibleListEventBuilder { 1373 builder := &AppVisibleListEventBuilder{} 1374 return builder 1375 } 1376 1377 // 可见性成员 id 列表 1378 // 1379 // 示例值: 1380 func (builder *AppVisibleListEventBuilder) OpenIds(openIds []*UserId) *AppVisibleListEventBuilder { 1381 builder.openIds = openIds 1382 builder.openIdsFlag = true 1383 return builder 1384 } 1385 1386 // 可见性部门的 id 列表 1387 // 1388 // 示例值: 1389 func (builder *AppVisibleListEventBuilder) DepartmentIds(departmentIds []string) *AppVisibleListEventBuilder { 1390 builder.departmentIds = departmentIds 1391 builder.departmentIdsFlag = true 1392 return builder 1393 } 1394 1395 func (builder *AppVisibleListEventBuilder) Build() *AppVisibleListEvent { 1396 req := &AppVisibleListEvent{} 1397 if builder.openIdsFlag { 1398 req.OpenIds = builder.openIds 1399 } 1400 if builder.departmentIdsFlag { 1401 req.DepartmentIds = builder.departmentIds 1402 } 1403 return req 1404 } 1405 1406 type Application struct { 1407 AppId *string `json:"app_id,omitempty"` // 应用的 app_id 1408 CreatorId *string `json:"creator_id,omitempty"` // 应用创建者(所有者) 1409 Status *int `json:"status,omitempty"` // 应用状态 1410 SceneType *int `json:"scene_type,omitempty"` // 应用类型 1411 PaymentType *int `json:"payment_type,omitempty"` // 付费类型 1412 RedirectUrls []string `json:"redirect_urls,omitempty"` // 安全设置中的重定向 URL 1413 OnlineVersionId *string `json:"online_version_id,omitempty"` // 发布在线上的应用版本 ID,若没有则为空 1414 UnauditVersionId *string `json:"unaudit_version_id,omitempty"` // 在审核中的版本 ID,若没有则为空 1415 AppName *string `json:"app_name,omitempty"` // 应用名称 1416 AvatarUrl *string `json:"avatar_url,omitempty"` // 应用图标 url 1417 Description *string `json:"description,omitempty"` // 应用默认描述 1418 Scopes []*AppScope `json:"scopes,omitempty"` // 应用权限列表 1419 BackHomeUrl *string `json:"back_home_url,omitempty"` // 后台主页地址 1420 I18n []*AppI18nInfo `json:"i18n,omitempty"` // 应用的国际化信息列表 1421 PrimaryLanguage *string `json:"primary_language,omitempty"` // 应用主语言 1422 CommonCategories []string `json:"common_categories,omitempty"` // 应用分类的国际化描述 1423 Owner *ApplicationOwner `json:"owner,omitempty"` // 应用的所有者信息 1424 } 1425 1426 type ApplicationBuilder struct { 1427 appId string // 应用的 app_id 1428 appIdFlag bool 1429 creatorId string // 应用创建者(所有者) 1430 creatorIdFlag bool 1431 status int // 应用状态 1432 statusFlag bool 1433 sceneType int // 应用类型 1434 sceneTypeFlag bool 1435 paymentType int // 付费类型 1436 paymentTypeFlag bool 1437 redirectUrls []string // 安全设置中的重定向 URL 1438 redirectUrlsFlag bool 1439 onlineVersionId string // 发布在线上的应用版本 ID,若没有则为空 1440 onlineVersionIdFlag bool 1441 unauditVersionId string // 在审核中的版本 ID,若没有则为空 1442 unauditVersionIdFlag bool 1443 appName string // 应用名称 1444 appNameFlag bool 1445 avatarUrl string // 应用图标 url 1446 avatarUrlFlag bool 1447 description string // 应用默认描述 1448 descriptionFlag bool 1449 scopes []*AppScope // 应用权限列表 1450 scopesFlag bool 1451 backHomeUrl string // 后台主页地址 1452 backHomeUrlFlag bool 1453 i18n []*AppI18nInfo // 应用的国际化信息列表 1454 i18nFlag bool 1455 primaryLanguage string // 应用主语言 1456 primaryLanguageFlag bool 1457 commonCategories []string // 应用分类的国际化描述 1458 commonCategoriesFlag bool 1459 owner *ApplicationOwner // 应用的所有者信息 1460 ownerFlag bool 1461 } 1462 1463 func NewApplicationBuilder() *ApplicationBuilder { 1464 builder := &ApplicationBuilder{} 1465 return builder 1466 } 1467 1468 // 应用的 app_id 1469 // 1470 // 示例值:cli_9b445f5258795107 1471 func (builder *ApplicationBuilder) AppId(appId string) *ApplicationBuilder { 1472 builder.appId = appId 1473 builder.appIdFlag = true 1474 return builder 1475 } 1476 1477 // 应用创建者(所有者) 1478 // 1479 // 示例值:ou_d317f090b7258ad0372aa53963cda70d 1480 func (builder *ApplicationBuilder) CreatorId(creatorId string) *ApplicationBuilder { 1481 builder.creatorId = creatorId 1482 builder.creatorIdFlag = true 1483 return builder 1484 } 1485 1486 // 应用状态 1487 // 1488 // 示例值:1 1489 func (builder *ApplicationBuilder) Status(status int) *ApplicationBuilder { 1490 builder.status = status 1491 builder.statusFlag = true 1492 return builder 1493 } 1494 1495 // 应用类型 1496 // 1497 // 示例值:0 1498 func (builder *ApplicationBuilder) SceneType(sceneType int) *ApplicationBuilder { 1499 builder.sceneType = sceneType 1500 builder.sceneTypeFlag = true 1501 return builder 1502 } 1503 1504 // 付费类型 1505 // 1506 // 示例值:0 1507 func (builder *ApplicationBuilder) PaymentType(paymentType int) *ApplicationBuilder { 1508 builder.paymentType = paymentType 1509 builder.paymentTypeFlag = true 1510 return builder 1511 } 1512 1513 // 安全设置中的重定向 URL 1514 // 1515 // 示例值: 1516 func (builder *ApplicationBuilder) RedirectUrls(redirectUrls []string) *ApplicationBuilder { 1517 builder.redirectUrls = redirectUrls 1518 builder.redirectUrlsFlag = true 1519 return builder 1520 } 1521 1522 // 发布在线上的应用版本 ID,若没有则为空 1523 // 1524 // 示例值:oav_d317f090b7258ad0372aa53963cda70d 1525 func (builder *ApplicationBuilder) OnlineVersionId(onlineVersionId string) *ApplicationBuilder { 1526 builder.onlineVersionId = onlineVersionId 1527 builder.onlineVersionIdFlag = true 1528 return builder 1529 } 1530 1531 // 在审核中的版本 ID,若没有则为空 1532 // 1533 // 示例值:oav_d317f090b7258ad0372aa53963cda70d 1534 func (builder *ApplicationBuilder) UnauditVersionId(unauditVersionId string) *ApplicationBuilder { 1535 builder.unauditVersionId = unauditVersionId 1536 builder.unauditVersionIdFlag = true 1537 return builder 1538 } 1539 1540 // 应用名称 1541 // 1542 // 示例值:应用名称 1543 func (builder *ApplicationBuilder) AppName(appName string) *ApplicationBuilder { 1544 builder.appName = appName 1545 builder.appNameFlag = true 1546 return builder 1547 } 1548 1549 // 应用图标 url 1550 // 1551 // 示例值:https://sf1-ttcdn-tos.pstatp.com/img/avatar/d279000ca4d3f7f6aaff~72x72.jpg 1552 func (builder *ApplicationBuilder) AvatarUrl(avatarUrl string) *ApplicationBuilder { 1553 builder.avatarUrl = avatarUrl 1554 builder.avatarUrlFlag = true 1555 return builder 1556 } 1557 1558 // 应用默认描述 1559 // 1560 // 示例值:应用描述 1561 func (builder *ApplicationBuilder) Description(description string) *ApplicationBuilder { 1562 builder.description = description 1563 builder.descriptionFlag = true 1564 return builder 1565 } 1566 1567 // 应用权限列表 1568 // 1569 // 示例值: 1570 func (builder *ApplicationBuilder) Scopes(scopes []*AppScope) *ApplicationBuilder { 1571 builder.scopes = scopes 1572 builder.scopesFlag = true 1573 return builder 1574 } 1575 1576 // 后台主页地址 1577 // 1578 // 示例值:https://www.example.com 1579 func (builder *ApplicationBuilder) BackHomeUrl(backHomeUrl string) *ApplicationBuilder { 1580 builder.backHomeUrl = backHomeUrl 1581 builder.backHomeUrlFlag = true 1582 return builder 1583 } 1584 1585 // 应用的国际化信息列表 1586 // 1587 // 示例值: 1588 func (builder *ApplicationBuilder) I18n(i18n []*AppI18nInfo) *ApplicationBuilder { 1589 builder.i18n = i18n 1590 builder.i18nFlag = true 1591 return builder 1592 } 1593 1594 // 应用主语言 1595 // 1596 // 示例值:zh_cn 1597 func (builder *ApplicationBuilder) PrimaryLanguage(primaryLanguage string) *ApplicationBuilder { 1598 builder.primaryLanguage = primaryLanguage 1599 builder.primaryLanguageFlag = true 1600 return builder 1601 } 1602 1603 // 应用分类的国际化描述 1604 // 1605 // 示例值: 1606 func (builder *ApplicationBuilder) CommonCategories(commonCategories []string) *ApplicationBuilder { 1607 builder.commonCategories = commonCategories 1608 builder.commonCategoriesFlag = true 1609 return builder 1610 } 1611 1612 // 应用的所有者信息 1613 // 1614 // 示例值: 1615 func (builder *ApplicationBuilder) Owner(owner *ApplicationOwner) *ApplicationBuilder { 1616 builder.owner = owner 1617 builder.ownerFlag = true 1618 return builder 1619 } 1620 1621 func (builder *ApplicationBuilder) Build() *Application { 1622 req := &Application{} 1623 if builder.appIdFlag { 1624 req.AppId = &builder.appId 1625 1626 } 1627 if builder.creatorIdFlag { 1628 req.CreatorId = &builder.creatorId 1629 1630 } 1631 if builder.statusFlag { 1632 req.Status = &builder.status 1633 1634 } 1635 if builder.sceneTypeFlag { 1636 req.SceneType = &builder.sceneType 1637 1638 } 1639 if builder.paymentTypeFlag { 1640 req.PaymentType = &builder.paymentType 1641 1642 } 1643 if builder.redirectUrlsFlag { 1644 req.RedirectUrls = builder.redirectUrls 1645 } 1646 if builder.onlineVersionIdFlag { 1647 req.OnlineVersionId = &builder.onlineVersionId 1648 1649 } 1650 if builder.unauditVersionIdFlag { 1651 req.UnauditVersionId = &builder.unauditVersionId 1652 1653 } 1654 if builder.appNameFlag { 1655 req.AppName = &builder.appName 1656 1657 } 1658 if builder.avatarUrlFlag { 1659 req.AvatarUrl = &builder.avatarUrl 1660 1661 } 1662 if builder.descriptionFlag { 1663 req.Description = &builder.description 1664 1665 } 1666 if builder.scopesFlag { 1667 req.Scopes = builder.scopes 1668 } 1669 if builder.backHomeUrlFlag { 1670 req.BackHomeUrl = &builder.backHomeUrl 1671 1672 } 1673 if builder.i18nFlag { 1674 req.I18n = builder.i18n 1675 } 1676 if builder.primaryLanguageFlag { 1677 req.PrimaryLanguage = &builder.primaryLanguage 1678 1679 } 1680 if builder.commonCategoriesFlag { 1681 req.CommonCategories = builder.commonCategories 1682 } 1683 if builder.ownerFlag { 1684 req.Owner = builder.owner 1685 } 1686 return req 1687 } 1688 1689 type ApplicationAppUsage struct { 1690 MetricName *string `json:"metric_name,omitempty"` // 指标名称 1691 MetricValue *int `json:"metric_value,omitempty"` // 指标值 1692 } 1693 1694 type ApplicationAppUsageBuilder struct { 1695 metricName string // 指标名称 1696 metricNameFlag bool 1697 metricValue int // 指标值 1698 metricValueFlag bool 1699 } 1700 1701 func NewApplicationAppUsageBuilder() *ApplicationAppUsageBuilder { 1702 builder := &ApplicationAppUsageBuilder{} 1703 return builder 1704 } 1705 1706 // 指标名称 1707 // 1708 // 示例值:pv 1709 func (builder *ApplicationAppUsageBuilder) MetricName(metricName string) *ApplicationAppUsageBuilder { 1710 builder.metricName = metricName 1711 builder.metricNameFlag = true 1712 return builder 1713 } 1714 1715 // 指标值 1716 // 1717 // 示例值:100 1718 func (builder *ApplicationAppUsageBuilder) MetricValue(metricValue int) *ApplicationAppUsageBuilder { 1719 builder.metricValue = metricValue 1720 builder.metricValueFlag = true 1721 return builder 1722 } 1723 1724 func (builder *ApplicationAppUsageBuilder) Build() *ApplicationAppUsage { 1725 req := &ApplicationAppUsage{} 1726 if builder.metricNameFlag { 1727 req.MetricName = &builder.metricName 1728 1729 } 1730 if builder.metricValueFlag { 1731 req.MetricValue = &builder.metricValue 1732 1733 } 1734 return req 1735 } 1736 1737 type ApplicationAppVersion struct { 1738 AppId *string `json:"app_id,omitempty"` // 应用 id 1739 Version *string `json:"version,omitempty"` // 在开发者后台填入的应用版本号 1740 VersionId *string `json:"version_id,omitempty"` // 唯一标识应用版本的 ID 1741 AppName *string `json:"app_name,omitempty"` // 应用默认名称 1742 AvatarUrl *string `json:"avatar_url,omitempty"` // 应用头像 url 1743 Description *string `json:"description,omitempty"` // 应用默认描述 1744 Scopes []*AppScope `json:"scopes,omitempty"` // 应用权限列表 1745 BackHomeUrl *string `json:"back_home_url,omitempty"` // 后台主页地址 1746 I18n []*AppI18nInfo `json:"i18n,omitempty"` // 应用的国际化信息列表 1747 CommonCategories []string `json:"common_categories,omitempty"` // 应用分类的国际化描述 1748 Events []string `json:"events,omitempty"` // 应用已订阅开放平台事件列表 1749 Status *int `json:"status,omitempty"` // 版本状态 1750 CreateTime *string `json:"create_time,omitempty"` // 版本创建时间(单位:s) 1751 PublishTime *string `json:"publish_time,omitempty"` // 版本发布时间(单位:s) 1752 Ability *AppAbility `json:"ability,omitempty"` // 当前版本下应用开启的能力 1753 Remark *AppVersionRemark `json:"remark,omitempty"` // 跟随应用版本的信息 1754 } 1755 1756 type ApplicationAppVersionBuilder struct { 1757 appId string // 应用 id 1758 appIdFlag bool 1759 version string // 在开发者后台填入的应用版本号 1760 versionFlag bool 1761 versionId string // 唯一标识应用版本的 ID 1762 versionIdFlag bool 1763 appName string // 应用默认名称 1764 appNameFlag bool 1765 avatarUrl string // 应用头像 url 1766 avatarUrlFlag bool 1767 description string // 应用默认描述 1768 descriptionFlag bool 1769 scopes []*AppScope // 应用权限列表 1770 scopesFlag bool 1771 backHomeUrl string // 后台主页地址 1772 backHomeUrlFlag bool 1773 i18n []*AppI18nInfo // 应用的国际化信息列表 1774 i18nFlag bool 1775 commonCategories []string // 应用分类的国际化描述 1776 commonCategoriesFlag bool 1777 events []string // 应用已订阅开放平台事件列表 1778 eventsFlag bool 1779 status int // 版本状态 1780 statusFlag bool 1781 createTime string // 版本创建时间(单位:s) 1782 createTimeFlag bool 1783 publishTime string // 版本发布时间(单位:s) 1784 publishTimeFlag bool 1785 ability *AppAbility // 当前版本下应用开启的能力 1786 abilityFlag bool 1787 remark *AppVersionRemark // 跟随应用版本的信息 1788 remarkFlag bool 1789 } 1790 1791 func NewApplicationAppVersionBuilder() *ApplicationAppVersionBuilder { 1792 builder := &ApplicationAppVersionBuilder{} 1793 return builder 1794 } 1795 1796 // 应用 id 1797 // 1798 // 示例值:cli_9f3ca975326b501b 1799 func (builder *ApplicationAppVersionBuilder) AppId(appId string) *ApplicationAppVersionBuilder { 1800 builder.appId = appId 1801 builder.appIdFlag = true 1802 return builder 1803 } 1804 1805 // 在开发者后台填入的应用版本号 1806 // 1807 // 示例值:1.0.0 1808 func (builder *ApplicationAppVersionBuilder) Version(version string) *ApplicationAppVersionBuilder { 1809 builder.version = version 1810 builder.versionFlag = true 1811 return builder 1812 } 1813 1814 // 唯一标识应用版本的 ID 1815 // 1816 // 示例值:oav_d317f090b7258ad0372aa53963cda70d 1817 func (builder *ApplicationAppVersionBuilder) VersionId(versionId string) *ApplicationAppVersionBuilder { 1818 builder.versionId = versionId 1819 builder.versionIdFlag = true 1820 return builder 1821 } 1822 1823 // 应用默认名称 1824 // 1825 // 示例值:应用名称 1826 func (builder *ApplicationAppVersionBuilder) AppName(appName string) *ApplicationAppVersionBuilder { 1827 builder.appName = appName 1828 builder.appNameFlag = true 1829 return builder 1830 } 1831 1832 // 应用头像 url 1833 // 1834 // 示例值:https://www.example.com 1835 func (builder *ApplicationAppVersionBuilder) AvatarUrl(avatarUrl string) *ApplicationAppVersionBuilder { 1836 builder.avatarUrl = avatarUrl 1837 builder.avatarUrlFlag = true 1838 return builder 1839 } 1840 1841 // 应用默认描述 1842 // 1843 // 示例值:应用描述 1844 func (builder *ApplicationAppVersionBuilder) Description(description string) *ApplicationAppVersionBuilder { 1845 builder.description = description 1846 builder.descriptionFlag = true 1847 return builder 1848 } 1849 1850 // 应用权限列表 1851 // 1852 // 示例值: 1853 func (builder *ApplicationAppVersionBuilder) Scopes(scopes []*AppScope) *ApplicationAppVersionBuilder { 1854 builder.scopes = scopes 1855 builder.scopesFlag = true 1856 return builder 1857 } 1858 1859 // 后台主页地址 1860 // 1861 // 示例值:https://www.example.com 1862 func (builder *ApplicationAppVersionBuilder) BackHomeUrl(backHomeUrl string) *ApplicationAppVersionBuilder { 1863 builder.backHomeUrl = backHomeUrl 1864 builder.backHomeUrlFlag = true 1865 return builder 1866 } 1867 1868 // 应用的国际化信息列表 1869 // 1870 // 示例值: 1871 func (builder *ApplicationAppVersionBuilder) I18n(i18n []*AppI18nInfo) *ApplicationAppVersionBuilder { 1872 builder.i18n = i18n 1873 builder.i18nFlag = true 1874 return builder 1875 } 1876 1877 // 应用分类的国际化描述 1878 // 1879 // 示例值: 1880 func (builder *ApplicationAppVersionBuilder) CommonCategories(commonCategories []string) *ApplicationAppVersionBuilder { 1881 builder.commonCategories = commonCategories 1882 builder.commonCategoriesFlag = true 1883 return builder 1884 } 1885 1886 // 应用已订阅开放平台事件列表 1887 // 1888 // 示例值: 1889 func (builder *ApplicationAppVersionBuilder) Events(events []string) *ApplicationAppVersionBuilder { 1890 builder.events = events 1891 builder.eventsFlag = true 1892 return builder 1893 } 1894 1895 // 版本状态 1896 // 1897 // 示例值:1 1898 func (builder *ApplicationAppVersionBuilder) Status(status int) *ApplicationAppVersionBuilder { 1899 builder.status = status 1900 builder.statusFlag = true 1901 return builder 1902 } 1903 1904 // 版本创建时间(单位:s) 1905 // 1906 // 示例值:1610462759 1907 func (builder *ApplicationAppVersionBuilder) CreateTime(createTime string) *ApplicationAppVersionBuilder { 1908 builder.createTime = createTime 1909 builder.createTimeFlag = true 1910 return builder 1911 } 1912 1913 // 版本发布时间(单位:s) 1914 // 1915 // 示例值:1610462759 1916 func (builder *ApplicationAppVersionBuilder) PublishTime(publishTime string) *ApplicationAppVersionBuilder { 1917 builder.publishTime = publishTime 1918 builder.publishTimeFlag = true 1919 return builder 1920 } 1921 1922 // 当前版本下应用开启的能力 1923 // 1924 // 示例值: 1925 func (builder *ApplicationAppVersionBuilder) Ability(ability *AppAbility) *ApplicationAppVersionBuilder { 1926 builder.ability = ability 1927 builder.abilityFlag = true 1928 return builder 1929 } 1930 1931 // 跟随应用版本的信息 1932 // 1933 // 示例值: 1934 func (builder *ApplicationAppVersionBuilder) Remark(remark *AppVersionRemark) *ApplicationAppVersionBuilder { 1935 builder.remark = remark 1936 builder.remarkFlag = true 1937 return builder 1938 } 1939 1940 func (builder *ApplicationAppVersionBuilder) Build() *ApplicationAppVersion { 1941 req := &ApplicationAppVersion{} 1942 if builder.appIdFlag { 1943 req.AppId = &builder.appId 1944 1945 } 1946 if builder.versionFlag { 1947 req.Version = &builder.version 1948 1949 } 1950 if builder.versionIdFlag { 1951 req.VersionId = &builder.versionId 1952 1953 } 1954 if builder.appNameFlag { 1955 req.AppName = &builder.appName 1956 1957 } 1958 if builder.avatarUrlFlag { 1959 req.AvatarUrl = &builder.avatarUrl 1960 1961 } 1962 if builder.descriptionFlag { 1963 req.Description = &builder.description 1964 1965 } 1966 if builder.scopesFlag { 1967 req.Scopes = builder.scopes 1968 } 1969 if builder.backHomeUrlFlag { 1970 req.BackHomeUrl = &builder.backHomeUrl 1971 1972 } 1973 if builder.i18nFlag { 1974 req.I18n = builder.i18n 1975 } 1976 if builder.commonCategoriesFlag { 1977 req.CommonCategories = builder.commonCategories 1978 } 1979 if builder.eventsFlag { 1980 req.Events = builder.events 1981 } 1982 if builder.statusFlag { 1983 req.Status = &builder.status 1984 1985 } 1986 if builder.createTimeFlag { 1987 req.CreateTime = &builder.createTime 1988 1989 } 1990 if builder.publishTimeFlag { 1991 req.PublishTime = &builder.publishTime 1992 1993 } 1994 if builder.abilityFlag { 1995 req.Ability = builder.ability 1996 } 1997 if builder.remarkFlag { 1998 req.Remark = builder.remark 1999 } 2000 return req 2001 } 2002 2003 type ApplicationAppVersionEvent struct { 2004 AppId *string `json:"app_id,omitempty"` // 应用 id 2005 Version *string `json:"version,omitempty"` // 开发者填入的应用版本 ID 2006 VersionId *string `json:"version_id,omitempty"` // 唯一标识应用版本的 ID 2007 AppName *string `json:"app_name,omitempty"` // 应用默认名称 2008 AvatarUrl *string `json:"avatar_url,omitempty"` // 应用头像 url 2009 Description *string `json:"description,omitempty"` // 应用默认描述 2010 Scopes []*AppScope `json:"scopes,omitempty"` // 应用权限列表 2011 BackHomeUrl *string `json:"back_home_url,omitempty"` // 后台主页地址 2012 I18n []*AppI18nInfo `json:"i18n,omitempty"` // 应用的国际化信息列表 2013 CommonCategories []string `json:"common_categories,omitempty"` // 应用分类的国际化描述 2014 Events []string `json:"events,omitempty"` // 应用已订阅开放平台事件列表 2015 Status *int `json:"status,omitempty"` // 版本状态 2016 CreateTime *string `json:"create_time,omitempty"` // 版本创建时间(单位:s) 2017 PublishTime *string `json:"publish_time,omitempty"` // 版本发布时间(单位:s) 2018 Ability *AppAbility `json:"ability,omitempty"` // 当前版本下应用开启的能力 2019 Remark *AppVersionRemarkEvent `json:"remark,omitempty"` // 跟随应用版本的信息 2020 } 2021 2022 type ApplicationAppVersionEventBuilder struct { 2023 appId string // 应用 id 2024 appIdFlag bool 2025 version string // 开发者填入的应用版本 ID 2026 versionFlag bool 2027 versionId string // 唯一标识应用版本的 ID 2028 versionIdFlag bool 2029 appName string // 应用默认名称 2030 appNameFlag bool 2031 avatarUrl string // 应用头像 url 2032 avatarUrlFlag bool 2033 description string // 应用默认描述 2034 descriptionFlag bool 2035 scopes []*AppScope // 应用权限列表 2036 scopesFlag bool 2037 backHomeUrl string // 后台主页地址 2038 backHomeUrlFlag bool 2039 i18n []*AppI18nInfo // 应用的国际化信息列表 2040 i18nFlag bool 2041 commonCategories []string // 应用分类的国际化描述 2042 commonCategoriesFlag bool 2043 events []string // 应用已订阅开放平台事件列表 2044 eventsFlag bool 2045 status int // 版本状态 2046 statusFlag bool 2047 createTime string // 版本创建时间(单位:s) 2048 createTimeFlag bool 2049 publishTime string // 版本发布时间(单位:s) 2050 publishTimeFlag bool 2051 ability *AppAbility // 当前版本下应用开启的能力 2052 abilityFlag bool 2053 remark *AppVersionRemarkEvent // 跟随应用版本的信息 2054 remarkFlag bool 2055 } 2056 2057 func NewApplicationAppVersionEventBuilder() *ApplicationAppVersionEventBuilder { 2058 builder := &ApplicationAppVersionEventBuilder{} 2059 return builder 2060 } 2061 2062 // 应用 id 2063 // 2064 // 示例值:cli_9f3ca975326b501b 2065 func (builder *ApplicationAppVersionEventBuilder) AppId(appId string) *ApplicationAppVersionEventBuilder { 2066 builder.appId = appId 2067 builder.appIdFlag = true 2068 return builder 2069 } 2070 2071 // 开发者填入的应用版本 ID 2072 // 2073 // 示例值:1.0.0 2074 func (builder *ApplicationAppVersionEventBuilder) Version(version string) *ApplicationAppVersionEventBuilder { 2075 builder.version = version 2076 builder.versionFlag = true 2077 return builder 2078 } 2079 2080 // 唯一标识应用版本的 ID 2081 // 2082 // 示例值:oav_d317f090b7258ad0372aa53963cda70d 2083 func (builder *ApplicationAppVersionEventBuilder) VersionId(versionId string) *ApplicationAppVersionEventBuilder { 2084 builder.versionId = versionId 2085 builder.versionIdFlag = true 2086 return builder 2087 } 2088 2089 // 应用默认名称 2090 // 2091 // 示例值:应用名称 2092 func (builder *ApplicationAppVersionEventBuilder) AppName(appName string) *ApplicationAppVersionEventBuilder { 2093 builder.appName = appName 2094 builder.appNameFlag = true 2095 return builder 2096 } 2097 2098 // 应用头像 url 2099 // 2100 // 示例值:https://www.example.com 2101 func (builder *ApplicationAppVersionEventBuilder) AvatarUrl(avatarUrl string) *ApplicationAppVersionEventBuilder { 2102 builder.avatarUrl = avatarUrl 2103 builder.avatarUrlFlag = true 2104 return builder 2105 } 2106 2107 // 应用默认描述 2108 // 2109 // 示例值:应用描述 2110 func (builder *ApplicationAppVersionEventBuilder) Description(description string) *ApplicationAppVersionEventBuilder { 2111 builder.description = description 2112 builder.descriptionFlag = true 2113 return builder 2114 } 2115 2116 // 应用权限列表 2117 // 2118 // 示例值: 2119 func (builder *ApplicationAppVersionEventBuilder) Scopes(scopes []*AppScope) *ApplicationAppVersionEventBuilder { 2120 builder.scopes = scopes 2121 builder.scopesFlag = true 2122 return builder 2123 } 2124 2125 // 后台主页地址 2126 // 2127 // 示例值:https://www.example.com 2128 func (builder *ApplicationAppVersionEventBuilder) BackHomeUrl(backHomeUrl string) *ApplicationAppVersionEventBuilder { 2129 builder.backHomeUrl = backHomeUrl 2130 builder.backHomeUrlFlag = true 2131 return builder 2132 } 2133 2134 // 应用的国际化信息列表 2135 // 2136 // 示例值: 2137 func (builder *ApplicationAppVersionEventBuilder) I18n(i18n []*AppI18nInfo) *ApplicationAppVersionEventBuilder { 2138 builder.i18n = i18n 2139 builder.i18nFlag = true 2140 return builder 2141 } 2142 2143 // 应用分类的国际化描述 2144 // 2145 // 示例值: 2146 func (builder *ApplicationAppVersionEventBuilder) CommonCategories(commonCategories []string) *ApplicationAppVersionEventBuilder { 2147 builder.commonCategories = commonCategories 2148 builder.commonCategoriesFlag = true 2149 return builder 2150 } 2151 2152 // 应用已订阅开放平台事件列表 2153 // 2154 // 示例值: 2155 func (builder *ApplicationAppVersionEventBuilder) Events(events []string) *ApplicationAppVersionEventBuilder { 2156 builder.events = events 2157 builder.eventsFlag = true 2158 return builder 2159 } 2160 2161 // 版本状态 2162 // 2163 // 示例值:1 2164 func (builder *ApplicationAppVersionEventBuilder) Status(status int) *ApplicationAppVersionEventBuilder { 2165 builder.status = status 2166 builder.statusFlag = true 2167 return builder 2168 } 2169 2170 // 版本创建时间(单位:s) 2171 // 2172 // 示例值:1610462759 2173 func (builder *ApplicationAppVersionEventBuilder) CreateTime(createTime string) *ApplicationAppVersionEventBuilder { 2174 builder.createTime = createTime 2175 builder.createTimeFlag = true 2176 return builder 2177 } 2178 2179 // 版本发布时间(单位:s) 2180 // 2181 // 示例值:1610462759 2182 func (builder *ApplicationAppVersionEventBuilder) PublishTime(publishTime string) *ApplicationAppVersionEventBuilder { 2183 builder.publishTime = publishTime 2184 builder.publishTimeFlag = true 2185 return builder 2186 } 2187 2188 // 当前版本下应用开启的能力 2189 // 2190 // 示例值: 2191 func (builder *ApplicationAppVersionEventBuilder) Ability(ability *AppAbility) *ApplicationAppVersionEventBuilder { 2192 builder.ability = ability 2193 builder.abilityFlag = true 2194 return builder 2195 } 2196 2197 // 跟随应用版本的信息 2198 // 2199 // 示例值: 2200 func (builder *ApplicationAppVersionEventBuilder) Remark(remark *AppVersionRemarkEvent) *ApplicationAppVersionEventBuilder { 2201 builder.remark = remark 2202 builder.remarkFlag = true 2203 return builder 2204 } 2205 2206 func (builder *ApplicationAppVersionEventBuilder) Build() *ApplicationAppVersionEvent { 2207 req := &ApplicationAppVersionEvent{} 2208 if builder.appIdFlag { 2209 req.AppId = &builder.appId 2210 2211 } 2212 if builder.versionFlag { 2213 req.Version = &builder.version 2214 2215 } 2216 if builder.versionIdFlag { 2217 req.VersionId = &builder.versionId 2218 2219 } 2220 if builder.appNameFlag { 2221 req.AppName = &builder.appName 2222 2223 } 2224 if builder.avatarUrlFlag { 2225 req.AvatarUrl = &builder.avatarUrl 2226 2227 } 2228 if builder.descriptionFlag { 2229 req.Description = &builder.description 2230 2231 } 2232 if builder.scopesFlag { 2233 req.Scopes = builder.scopes 2234 } 2235 if builder.backHomeUrlFlag { 2236 req.BackHomeUrl = &builder.backHomeUrl 2237 2238 } 2239 if builder.i18nFlag { 2240 req.I18n = builder.i18n 2241 } 2242 if builder.commonCategoriesFlag { 2243 req.CommonCategories = builder.commonCategories 2244 } 2245 if builder.eventsFlag { 2246 req.Events = builder.events 2247 } 2248 if builder.statusFlag { 2249 req.Status = &builder.status 2250 2251 } 2252 if builder.createTimeFlag { 2253 req.CreateTime = &builder.createTime 2254 2255 } 2256 if builder.publishTimeFlag { 2257 req.PublishTime = &builder.publishTime 2258 2259 } 2260 if builder.abilityFlag { 2261 req.Ability = builder.ability 2262 } 2263 if builder.remarkFlag { 2264 req.Remark = builder.remark 2265 } 2266 return req 2267 } 2268 2269 type ApplicationDepartmentAppUsage struct { 2270 DepartmentId *string `json:"department_id,omitempty"` // 租户内部门的唯一标识,ID值与查询参数中的department_id_type 对应。 2271 App []*ApplicationAppUsage `json:"app,omitempty"` // 应用整体使用情况,指标值包括:uv:活跃用户数,total_users:累计用户数,new_users:新增用户数,pv:在应用(小程序或网页)中访问的页面数,lifecycle:打开应用(小程序或网页)的次数 2272 Gadget []*ApplicationAppUsage `json:"gadget,omitempty"` // 小程序使用情况,没有小程序形态时为null,指标值包括:uv(小程序活跃用户数)、pv(用户在小程序中的访问页面数)、lifecycle(小程序的打开次数) 2273 Webapp []*ApplicationAppUsage `json:"webapp,omitempty"` // 网页应用使用情况,没有网页应用形态时为null,指标值包括:uv(网页应用活跃用户数)、pv(用户在网页应用中的访问页面数)、lifecycle(网页应用的打开次数) 2274 Bot []*ApplicationAppUsage `json:"bot,omitempty"` // 机器人使用情况,没有机器人形态时为null,;指标值包括:uv(机器人的活跃用户数) 2275 } 2276 2277 type ApplicationDepartmentAppUsageBuilder struct { 2278 departmentId string // 租户内部门的唯一标识,ID值与查询参数中的department_id_type 对应。 2279 departmentIdFlag bool 2280 app []*ApplicationAppUsage // 应用整体使用情况,指标值包括:uv:活跃用户数,total_users:累计用户数,new_users:新增用户数,pv:在应用(小程序或网页)中访问的页面数,lifecycle:打开应用(小程序或网页)的次数 2281 appFlag bool 2282 gadget []*ApplicationAppUsage // 小程序使用情况,没有小程序形态时为null,指标值包括:uv(小程序活跃用户数)、pv(用户在小程序中的访问页面数)、lifecycle(小程序的打开次数) 2283 gadgetFlag bool 2284 webapp []*ApplicationAppUsage // 网页应用使用情况,没有网页应用形态时为null,指标值包括:uv(网页应用活跃用户数)、pv(用户在网页应用中的访问页面数)、lifecycle(网页应用的打开次数) 2285 webappFlag bool 2286 bot []*ApplicationAppUsage // 机器人使用情况,没有机器人形态时为null,;指标值包括:uv(机器人的活跃用户数) 2287 botFlag bool 2288 } 2289 2290 func NewApplicationDepartmentAppUsageBuilder() *ApplicationDepartmentAppUsageBuilder { 2291 builder := &ApplicationDepartmentAppUsageBuilder{} 2292 return builder 2293 } 2294 2295 // 租户内部门的唯一标识,ID值与查询参数中的department_id_type 对应。 2296 // 2297 // 示例值: 2298 func (builder *ApplicationDepartmentAppUsageBuilder) DepartmentId(departmentId string) *ApplicationDepartmentAppUsageBuilder { 2299 builder.departmentId = departmentId 2300 builder.departmentIdFlag = true 2301 return builder 2302 } 2303 2304 // 应用整体使用情况,指标值包括:uv:活跃用户数,total_users:累计用户数,new_users:新增用户数,pv:在应用(小程序或网页)中访问的页面数,lifecycle:打开应用(小程序或网页)的次数 2305 // 2306 // 示例值: 2307 func (builder *ApplicationDepartmentAppUsageBuilder) App(app []*ApplicationAppUsage) *ApplicationDepartmentAppUsageBuilder { 2308 builder.app = app 2309 builder.appFlag = true 2310 return builder 2311 } 2312 2313 // 小程序使用情况,没有小程序形态时为null,指标值包括:uv(小程序活跃用户数)、pv(用户在小程序中的访问页面数)、lifecycle(小程序的打开次数) 2314 // 2315 // 示例值: 2316 func (builder *ApplicationDepartmentAppUsageBuilder) Gadget(gadget []*ApplicationAppUsage) *ApplicationDepartmentAppUsageBuilder { 2317 builder.gadget = gadget 2318 builder.gadgetFlag = true 2319 return builder 2320 } 2321 2322 // 网页应用使用情况,没有网页应用形态时为null,指标值包括:uv(网页应用活跃用户数)、pv(用户在网页应用中的访问页面数)、lifecycle(网页应用的打开次数) 2323 // 2324 // 示例值: 2325 func (builder *ApplicationDepartmentAppUsageBuilder) Webapp(webapp []*ApplicationAppUsage) *ApplicationDepartmentAppUsageBuilder { 2326 builder.webapp = webapp 2327 builder.webappFlag = true 2328 return builder 2329 } 2330 2331 // 机器人使用情况,没有机器人形态时为null,;指标值包括:uv(机器人的活跃用户数) 2332 // 2333 // 示例值: 2334 func (builder *ApplicationDepartmentAppUsageBuilder) Bot(bot []*ApplicationAppUsage) *ApplicationDepartmentAppUsageBuilder { 2335 builder.bot = bot 2336 builder.botFlag = true 2337 return builder 2338 } 2339 2340 func (builder *ApplicationDepartmentAppUsageBuilder) Build() *ApplicationDepartmentAppUsage { 2341 req := &ApplicationDepartmentAppUsage{} 2342 if builder.departmentIdFlag { 2343 req.DepartmentId = &builder.departmentId 2344 2345 } 2346 if builder.appFlag { 2347 req.App = builder.app 2348 } 2349 if builder.gadgetFlag { 2350 req.Gadget = builder.gadget 2351 } 2352 if builder.webappFlag { 2353 req.Webapp = builder.webapp 2354 } 2355 if builder.botFlag { 2356 req.Bot = builder.bot 2357 } 2358 return req 2359 } 2360 2361 type ApplicationEventOwner struct { 2362 Type *int `json:"type,omitempty"` // 应用所有者类型,可选值有:0:飞书科技(海外是另个名字企业),1:飞书合作伙伴,2:企业内成员 2363 Name *string `json:"name,omitempty"` // 应用开发商名称,仅商店应用返回 2364 HelpDesk *string `json:"help_desk,omitempty"` // 应用开发商的服务台链接,进商店应用返回。仅当应用商店配置了这种联系方式时才会返回 2365 Email *string `json:"email,omitempty"` // 应用开发商的邮箱,仅商店应用返回。仅当应用商店配置了这种联系方式时才会返回 2366 Phone *string `json:"phone,omitempty"` // 应用开发商的手机号,进商店应用返回。仅当应用商店配置了这种联系方式时才会返回 2367 } 2368 2369 type ApplicationEventOwnerBuilder struct { 2370 type_ int // 应用所有者类型,可选值有:0:飞书科技(海外是另个名字企业),1:飞书合作伙伴,2:企业内成员 2371 typeFlag bool 2372 name string // 应用开发商名称,仅商店应用返回 2373 nameFlag bool 2374 helpDesk string // 应用开发商的服务台链接,进商店应用返回。仅当应用商店配置了这种联系方式时才会返回 2375 helpDeskFlag bool 2376 email string // 应用开发商的邮箱,仅商店应用返回。仅当应用商店配置了这种联系方式时才会返回 2377 emailFlag bool 2378 phone string // 应用开发商的手机号,进商店应用返回。仅当应用商店配置了这种联系方式时才会返回 2379 phoneFlag bool 2380 } 2381 2382 func NewApplicationEventOwnerBuilder() *ApplicationEventOwnerBuilder { 2383 builder := &ApplicationEventOwnerBuilder{} 2384 return builder 2385 } 2386 2387 // 应用所有者类型,可选值有:0:飞书科技(海外是另个名字企业),1:飞书合作伙伴,2:企业内成员 2388 // 2389 // 示例值:0 2390 func (builder *ApplicationEventOwnerBuilder) Type(type_ int) *ApplicationEventOwnerBuilder { 2391 builder.type_ = type_ 2392 builder.typeFlag = true 2393 return builder 2394 } 2395 2396 // 应用开发商名称,仅商店应用返回 2397 // 2398 // 示例值:应用名称 2399 func (builder *ApplicationEventOwnerBuilder) Name(name string) *ApplicationEventOwnerBuilder { 2400 builder.name = name 2401 builder.nameFlag = true 2402 return builder 2403 } 2404 2405 // 应用开发商的服务台链接,进商店应用返回。仅当应用商店配置了这种联系方式时才会返回 2406 // 2407 // 示例值: 2408 func (builder *ApplicationEventOwnerBuilder) HelpDesk(helpDesk string) *ApplicationEventOwnerBuilder { 2409 builder.helpDesk = helpDesk 2410 builder.helpDeskFlag = true 2411 return builder 2412 } 2413 2414 // 应用开发商的邮箱,仅商店应用返回。仅当应用商店配置了这种联系方式时才会返回 2415 // 2416 // 示例值: 2417 func (builder *ApplicationEventOwnerBuilder) Email(email string) *ApplicationEventOwnerBuilder { 2418 builder.email = email 2419 builder.emailFlag = true 2420 return builder 2421 } 2422 2423 // 应用开发商的手机号,进商店应用返回。仅当应用商店配置了这种联系方式时才会返回 2424 // 2425 // 示例值: 2426 func (builder *ApplicationEventOwnerBuilder) Phone(phone string) *ApplicationEventOwnerBuilder { 2427 builder.phone = phone 2428 builder.phoneFlag = true 2429 return builder 2430 } 2431 2432 func (builder *ApplicationEventOwnerBuilder) Build() *ApplicationEventOwner { 2433 req := &ApplicationEventOwner{} 2434 if builder.typeFlag { 2435 req.Type = &builder.type_ 2436 2437 } 2438 if builder.nameFlag { 2439 req.Name = &builder.name 2440 2441 } 2442 if builder.helpDeskFlag { 2443 req.HelpDesk = &builder.helpDesk 2444 2445 } 2446 if builder.emailFlag { 2447 req.Email = &builder.email 2448 2449 } 2450 if builder.phoneFlag { 2451 req.Phone = &builder.phone 2452 2453 } 2454 return req 2455 } 2456 2457 type ApplicationFeedback struct { 2458 FeedbackId *string `json:"feedback_id,omitempty"` // 应用反馈 ID,应用反馈记录唯一标识 2459 AppId *string `json:"app_id,omitempty"` // 被反馈应用ID 2460 FeedbackTime *string `json:"feedback_time,omitempty"` // 反馈提交时间,格式为yyyy-mm-dd hh:mm:ss 2461 TenantName *string `json:"tenant_name,omitempty"` // 反馈用户的租户名, 查询 isv 应用时返回 2462 FeedbackType *int `json:"feedback_type,omitempty"` // 反馈类型 2463 Status *int `json:"status,omitempty"` // 反馈处理状态 2464 FaultType []int `json:"fault_type,omitempty"` // 故障类型列表:1: 黑屏 2: 白屏 3: 无法打开小程序 4: 卡顿 5: 小程序闪退 6: 页面加载慢 7: 死机 8: 其他异常 2465 FaultTime *string `json:"fault_time,omitempty"` // 故障时间,格式为yyyy-mm-dd hh:mm:ss 2466 Source *int `json:"source,omitempty"` // 反馈来源:1: 小程序 2:网页应用 3:机器人 4:webSDK 2467 Contact *string `json:"contact,omitempty"` // 用户联系方式,只有用户填写联系方式后返回 2468 UpdateTime *string `json:"update_time,omitempty"` // 反馈处理时间,格式为yyyy-mm-dd hh:mm:ss 2469 Description *string `json:"description,omitempty"` // 反馈问题描述 2470 UserId *string `json:"user_id,omitempty"` // 反馈用户id,租户内用户的唯一标识 ,ID值与查询参数中的user_id_type对应 2471 OperatorId *string `json:"operator_id,omitempty"` // 操作者id,租户内用户的唯一标识, ID值与查询参数中的user_id_type 对应 2472 Images []string `json:"images,omitempty"` // 反馈图片url列表,url 过期时间三天 2473 FeedbackPath *string `json:"feedback_path,omitempty"` // 反馈页面路径;- 如触发反馈的应用类型为小程序,则上报小程序当前页面的path信息;- 如触发反馈的应用类型为网页或网页应用,则上报当前网页的url信息;- 如为其他应用类型,则字段返回值为空 2474 } 2475 2476 type ApplicationFeedbackBuilder struct { 2477 feedbackId string // 应用反馈 ID,应用反馈记录唯一标识 2478 feedbackIdFlag bool 2479 appId string // 被反馈应用ID 2480 appIdFlag bool 2481 feedbackTime string // 反馈提交时间,格式为yyyy-mm-dd hh:mm:ss 2482 feedbackTimeFlag bool 2483 tenantName string // 反馈用户的租户名, 查询 isv 应用时返回 2484 tenantNameFlag bool 2485 feedbackType int // 反馈类型 2486 feedbackTypeFlag bool 2487 status int // 反馈处理状态 2488 statusFlag bool 2489 faultType []int // 故障类型列表:1: 黑屏 2: 白屏 3: 无法打开小程序 4: 卡顿 5: 小程序闪退 6: 页面加载慢 7: 死机 8: 其他异常 2490 faultTypeFlag bool 2491 faultTime string // 故障时间,格式为yyyy-mm-dd hh:mm:ss 2492 faultTimeFlag bool 2493 source int // 反馈来源:1: 小程序 2:网页应用 3:机器人 4:webSDK 2494 sourceFlag bool 2495 contact string // 用户联系方式,只有用户填写联系方式后返回 2496 contactFlag bool 2497 updateTime string // 反馈处理时间,格式为yyyy-mm-dd hh:mm:ss 2498 updateTimeFlag bool 2499 description string // 反馈问题描述 2500 descriptionFlag bool 2501 userId string // 反馈用户id,租户内用户的唯一标识 ,ID值与查询参数中的user_id_type对应 2502 userIdFlag bool 2503 operatorId string // 操作者id,租户内用户的唯一标识, ID值与查询参数中的user_id_type 对应 2504 operatorIdFlag bool 2505 images []string // 反馈图片url列表,url 过期时间三天 2506 imagesFlag bool 2507 feedbackPath string // 反馈页面路径;- 如触发反馈的应用类型为小程序,则上报小程序当前页面的path信息;- 如触发反馈的应用类型为网页或网页应用,则上报当前网页的url信息;- 如为其他应用类型,则字段返回值为空 2508 feedbackPathFlag bool 2509 } 2510 2511 func NewApplicationFeedbackBuilder() *ApplicationFeedbackBuilder { 2512 builder := &ApplicationFeedbackBuilder{} 2513 return builder 2514 } 2515 2516 // 应用反馈 ID,应用反馈记录唯一标识 2517 // 2518 // 示例值:7057888018203574291 2519 func (builder *ApplicationFeedbackBuilder) FeedbackId(feedbackId string) *ApplicationFeedbackBuilder { 2520 builder.feedbackId = feedbackId 2521 builder.feedbackIdFlag = true 2522 return builder 2523 } 2524 2525 // 被反馈应用ID 2526 // 2527 // 示例值:cli_9b445f5258795107 2528 func (builder *ApplicationFeedbackBuilder) AppId(appId string) *ApplicationFeedbackBuilder { 2529 builder.appId = appId 2530 builder.appIdFlag = true 2531 return builder 2532 } 2533 2534 // 反馈提交时间,格式为yyyy-mm-dd hh:mm:ss 2535 // 2536 // 示例值:2022-01-30 11:30:12 2537 func (builder *ApplicationFeedbackBuilder) FeedbackTime(feedbackTime string) *ApplicationFeedbackBuilder { 2538 builder.feedbackTime = feedbackTime 2539 builder.feedbackTimeFlag = true 2540 return builder 2541 } 2542 2543 // 反馈用户的租户名, 查询 isv 应用时返回 2544 // 2545 // 示例值:字节跳动 2546 func (builder *ApplicationFeedbackBuilder) TenantName(tenantName string) *ApplicationFeedbackBuilder { 2547 builder.tenantName = tenantName 2548 builder.tenantNameFlag = true 2549 return builder 2550 } 2551 2552 // 反馈类型 2553 // 2554 // 示例值:1 2555 func (builder *ApplicationFeedbackBuilder) FeedbackType(feedbackType int) *ApplicationFeedbackBuilder { 2556 builder.feedbackType = feedbackType 2557 builder.feedbackTypeFlag = true 2558 return builder 2559 } 2560 2561 // 反馈处理状态 2562 // 2563 // 示例值:0 2564 func (builder *ApplicationFeedbackBuilder) Status(status int) *ApplicationFeedbackBuilder { 2565 builder.status = status 2566 builder.statusFlag = true 2567 return builder 2568 } 2569 2570 // 故障类型列表:1: 黑屏 2: 白屏 3: 无法打开小程序 4: 卡顿 5: 小程序闪退 6: 页面加载慢 7: 死机 8: 其他异常 2571 // 2572 // 示例值:[1,2,3] 2573 func (builder *ApplicationFeedbackBuilder) FaultType(faultType []int) *ApplicationFeedbackBuilder { 2574 builder.faultType = faultType 2575 builder.faultTypeFlag = true 2576 return builder 2577 } 2578 2579 // 故障时间,格式为yyyy-mm-dd hh:mm:ss 2580 // 2581 // 示例值:2022-01-30 11:30:12 2582 func (builder *ApplicationFeedbackBuilder) FaultTime(faultTime string) *ApplicationFeedbackBuilder { 2583 builder.faultTime = faultTime 2584 builder.faultTimeFlag = true 2585 return builder 2586 } 2587 2588 // 反馈来源:1: 小程序 2:网页应用 3:机器人 4:webSDK 2589 // 2590 // 示例值:1 2591 func (builder *ApplicationFeedbackBuilder) Source(source int) *ApplicationFeedbackBuilder { 2592 builder.source = source 2593 builder.sourceFlag = true 2594 return builder 2595 } 2596 2597 // 用户联系方式,只有用户填写联系方式后返回 2598 // 2599 // 示例值:wang@bytedance.com 2600 func (builder *ApplicationFeedbackBuilder) Contact(contact string) *ApplicationFeedbackBuilder { 2601 builder.contact = contact 2602 builder.contactFlag = true 2603 return builder 2604 } 2605 2606 // 反馈处理时间,格式为yyyy-mm-dd hh:mm:ss 2607 // 2608 // 示例值:2022-01-30 11:30:12 2609 func (builder *ApplicationFeedbackBuilder) UpdateTime(updateTime string) *ApplicationFeedbackBuilder { 2610 builder.updateTime = updateTime 2611 builder.updateTimeFlag = true 2612 return builder 2613 } 2614 2615 // 反馈问题描述 2616 // 2617 // 示例值:反馈描述 2618 func (builder *ApplicationFeedbackBuilder) Description(description string) *ApplicationFeedbackBuilder { 2619 builder.description = description 2620 builder.descriptionFlag = true 2621 return builder 2622 } 2623 2624 // 反馈用户id,租户内用户的唯一标识 ,ID值与查询参数中的user_id_type对应 2625 // 2626 // 示例值:ou_9565b69967831233761cc2f11b4c089f 2627 func (builder *ApplicationFeedbackBuilder) UserId(userId string) *ApplicationFeedbackBuilder { 2628 builder.userId = userId 2629 builder.userIdFlag = true 2630 return builder 2631 } 2632 2633 // 操作者id,租户内用户的唯一标识, ID值与查询参数中的user_id_type 对应 2634 // 2635 // 示例值:ou_9565b69967831233761cc2f11b4c089f 2636 func (builder *ApplicationFeedbackBuilder) OperatorId(operatorId string) *ApplicationFeedbackBuilder { 2637 builder.operatorId = operatorId 2638 builder.operatorIdFlag = true 2639 return builder 2640 } 2641 2642 // 反馈图片url列表,url 过期时间三天 2643 // 2644 // 示例值: 2645 func (builder *ApplicationFeedbackBuilder) Images(images []string) *ApplicationFeedbackBuilder { 2646 builder.images = images 2647 builder.imagesFlag = true 2648 return builder 2649 } 2650 2651 // 反馈页面路径;- 如触发反馈的应用类型为小程序,则上报小程序当前页面的path信息;- 如触发反馈的应用类型为网页或网页应用,则上报当前网页的url信息;- 如为其他应用类型,则字段返回值为空 2652 // 2653 // 示例值:index/page 2654 func (builder *ApplicationFeedbackBuilder) FeedbackPath(feedbackPath string) *ApplicationFeedbackBuilder { 2655 builder.feedbackPath = feedbackPath 2656 builder.feedbackPathFlag = true 2657 return builder 2658 } 2659 2660 func (builder *ApplicationFeedbackBuilder) Build() *ApplicationFeedback { 2661 req := &ApplicationFeedback{} 2662 if builder.feedbackIdFlag { 2663 req.FeedbackId = &builder.feedbackId 2664 2665 } 2666 if builder.appIdFlag { 2667 req.AppId = &builder.appId 2668 2669 } 2670 if builder.feedbackTimeFlag { 2671 req.FeedbackTime = &builder.feedbackTime 2672 2673 } 2674 if builder.tenantNameFlag { 2675 req.TenantName = &builder.tenantName 2676 2677 } 2678 if builder.feedbackTypeFlag { 2679 req.FeedbackType = &builder.feedbackType 2680 2681 } 2682 if builder.statusFlag { 2683 req.Status = &builder.status 2684 2685 } 2686 if builder.faultTypeFlag { 2687 req.FaultType = builder.faultType 2688 } 2689 if builder.faultTimeFlag { 2690 req.FaultTime = &builder.faultTime 2691 2692 } 2693 if builder.sourceFlag { 2694 req.Source = &builder.source 2695 2696 } 2697 if builder.contactFlag { 2698 req.Contact = &builder.contact 2699 2700 } 2701 if builder.updateTimeFlag { 2702 req.UpdateTime = &builder.updateTime 2703 2704 } 2705 if builder.descriptionFlag { 2706 req.Description = &builder.description 2707 2708 } 2709 if builder.userIdFlag { 2710 req.UserId = &builder.userId 2711 2712 } 2713 if builder.operatorIdFlag { 2714 req.OperatorId = &builder.operatorId 2715 2716 } 2717 if builder.imagesFlag { 2718 req.Images = builder.images 2719 } 2720 if builder.feedbackPathFlag { 2721 req.FeedbackPath = &builder.feedbackPath 2722 2723 } 2724 return req 2725 } 2726 2727 type ApplicationOwner struct { 2728 Type *int `json:"type,omitempty"` // 应用所有者类型 2729 OwnerId *string `json:"owner_id,omitempty"` // 应用所有者ID 2730 Name *string `json:"name,omitempty"` // 应用开发商名称(仅商店应用返回) 2731 HelpDesk *string `json:"help_desk,omitempty"` // 应用开发商服务台链接(仅商店应用返回) 2732 Email *string `json:"email,omitempty"` // 应用开发商的邮箱(仅商店应用返回) 2733 Phone *string `json:"phone,omitempty"` // 应用开发商的手机号(仅商店应用返回) 2734 } 2735 2736 type ApplicationOwnerBuilder struct { 2737 type_ int // 应用所有者类型 2738 typeFlag bool 2739 ownerId string // 应用所有者ID 2740 ownerIdFlag bool 2741 name string // 应用开发商名称(仅商店应用返回) 2742 nameFlag bool 2743 helpDesk string // 应用开发商服务台链接(仅商店应用返回) 2744 helpDeskFlag bool 2745 email string // 应用开发商的邮箱(仅商店应用返回) 2746 emailFlag bool 2747 phone string // 应用开发商的手机号(仅商店应用返回) 2748 phoneFlag bool 2749 } 2750 2751 func NewApplicationOwnerBuilder() *ApplicationOwnerBuilder { 2752 builder := &ApplicationOwnerBuilder{} 2753 return builder 2754 } 2755 2756 // 应用所有者类型 2757 // 2758 // 示例值:0 2759 func (builder *ApplicationOwnerBuilder) Type(type_ int) *ApplicationOwnerBuilder { 2760 builder.type_ = type_ 2761 builder.typeFlag = true 2762 return builder 2763 } 2764 2765 // 应用所有者ID 2766 // 2767 // 示例值:ou_d317f090b7258ad0372aa53963cda70d 2768 func (builder *ApplicationOwnerBuilder) OwnerId(ownerId string) *ApplicationOwnerBuilder { 2769 builder.ownerId = ownerId 2770 builder.ownerIdFlag = true 2771 return builder 2772 } 2773 2774 // 应用开发商名称(仅商店应用返回) 2775 // 2776 // 示例值: 2777 func (builder *ApplicationOwnerBuilder) Name(name string) *ApplicationOwnerBuilder { 2778 builder.name = name 2779 builder.nameFlag = true 2780 return builder 2781 } 2782 2783 // 应用开发商服务台链接(仅商店应用返回) 2784 // 2785 // 示例值: 2786 func (builder *ApplicationOwnerBuilder) HelpDesk(helpDesk string) *ApplicationOwnerBuilder { 2787 builder.helpDesk = helpDesk 2788 builder.helpDeskFlag = true 2789 return builder 2790 } 2791 2792 // 应用开发商的邮箱(仅商店应用返回) 2793 // 2794 // 示例值: 2795 func (builder *ApplicationOwnerBuilder) Email(email string) *ApplicationOwnerBuilder { 2796 builder.email = email 2797 builder.emailFlag = true 2798 return builder 2799 } 2800 2801 // 应用开发商的手机号(仅商店应用返回) 2802 // 2803 // 示例值: 2804 func (builder *ApplicationOwnerBuilder) Phone(phone string) *ApplicationOwnerBuilder { 2805 builder.phone = phone 2806 builder.phoneFlag = true 2807 return builder 2808 } 2809 2810 func (builder *ApplicationOwnerBuilder) Build() *ApplicationOwner { 2811 req := &ApplicationOwner{} 2812 if builder.typeFlag { 2813 req.Type = &builder.type_ 2814 2815 } 2816 if builder.ownerIdFlag { 2817 req.OwnerId = &builder.ownerId 2818 2819 } 2820 if builder.nameFlag { 2821 req.Name = &builder.name 2822 2823 } 2824 if builder.helpDeskFlag { 2825 req.HelpDesk = &builder.helpDesk 2826 2827 } 2828 if builder.emailFlag { 2829 req.Email = &builder.email 2830 2831 } 2832 if builder.phoneFlag { 2833 req.Phone = &builder.phone 2834 2835 } 2836 return req 2837 } 2838 2839 type ApplicationVisibility struct { 2840 IsAll *bool `json:"is_all,omitempty"` // 是否全员可见 2841 VisibleList *AppVisibleList `json:"visible_list,omitempty"` // 可见名单 2842 InvisibleList *AppVisibleList `json:"invisible_list,omitempty"` // 不可见名单 2843 } 2844 2845 type ApplicationVisibilityBuilder struct { 2846 isAll bool // 是否全员可见 2847 isAllFlag bool 2848 visibleList *AppVisibleList // 可见名单 2849 visibleListFlag bool 2850 invisibleList *AppVisibleList // 不可见名单 2851 invisibleListFlag bool 2852 } 2853 2854 func NewApplicationVisibilityBuilder() *ApplicationVisibilityBuilder { 2855 builder := &ApplicationVisibilityBuilder{} 2856 return builder 2857 } 2858 2859 // 是否全员可见 2860 // 2861 // 示例值:false 2862 func (builder *ApplicationVisibilityBuilder) IsAll(isAll bool) *ApplicationVisibilityBuilder { 2863 builder.isAll = isAll 2864 builder.isAllFlag = true 2865 return builder 2866 } 2867 2868 // 可见名单 2869 // 2870 // 示例值: 2871 func (builder *ApplicationVisibilityBuilder) VisibleList(visibleList *AppVisibleList) *ApplicationVisibilityBuilder { 2872 builder.visibleList = visibleList 2873 builder.visibleListFlag = true 2874 return builder 2875 } 2876 2877 // 不可见名单 2878 // 2879 // 示例值: 2880 func (builder *ApplicationVisibilityBuilder) InvisibleList(invisibleList *AppVisibleList) *ApplicationVisibilityBuilder { 2881 builder.invisibleList = invisibleList 2882 builder.invisibleListFlag = true 2883 return builder 2884 } 2885 2886 func (builder *ApplicationVisibilityBuilder) Build() *ApplicationVisibility { 2887 req := &ApplicationVisibility{} 2888 if builder.isAllFlag { 2889 req.IsAll = &builder.isAll 2890 2891 } 2892 if builder.visibleListFlag { 2893 req.VisibleList = builder.visibleList 2894 } 2895 if builder.invisibleListFlag { 2896 req.InvisibleList = builder.invisibleList 2897 } 2898 return req 2899 } 2900 2901 type ApplicationV2 struct { 2902 AppId *string `json:"app_id,omitempty"` // 应用的 id 2903 CreatorId *string `json:"creator_id,omitempty"` // 应用创建者(所有者) 2904 Status *int `json:"status,omitempty"` // 应用状态 2905 SceneType *int `json:"scene_type,omitempty"` // 应用类型 2906 PaymentType *int `json:"payment_type,omitempty"` // 付费类型 2907 RedirectUrls []string `json:"redirect_urls,omitempty"` // 安全设置中的重定向 URL 2908 OnlineVersionId *string `json:"online_version_id,omitempty"` // 发布在线上的应用版本 2909 UnauditVersionId *string `json:"unaudit_version_id,omitempty"` // 在审核中的版本号信息,若没有则为空 2910 AppName *string `json:"app_name,omitempty"` // 应用默认名称,如果没有对应语言下的名称,则返回默认语言下的名称 2911 AvatarUrl *string `json:"avatar_url,omitempty"` // 应用图标链接 2912 Description *string `json:"description,omitempty"` // 应用默认描述 2913 Scopes []*AppScope `json:"scopes,omitempty"` // 应用权限列表 2914 BackHomeUrl *string `json:"back_home_url,omitempty"` // 后台主页地址 2915 I18n []*AppI18nInfo `json:"i18n,omitempty"` // 应用的国际化信息列表 2916 PrimaryLanguage *string `json:"primary_language,omitempty"` // 应用主语言 2917 CommonCategories []string `json:"common_categories,omitempty"` // 应用分类的国际化描述 2918 Owner *ApplicationOwner `json:"owner,omitempty"` // 应用的所有者信息 2919 } 2920 2921 type ApplicationV2Builder struct { 2922 appId string // 应用的 id 2923 appIdFlag bool 2924 creatorId string // 应用创建者(所有者) 2925 creatorIdFlag bool 2926 status int // 应用状态 2927 statusFlag bool 2928 sceneType int // 应用类型 2929 sceneTypeFlag bool 2930 paymentType int // 付费类型 2931 paymentTypeFlag bool 2932 redirectUrls []string // 安全设置中的重定向 URL 2933 redirectUrlsFlag bool 2934 onlineVersionId string // 发布在线上的应用版本 2935 onlineVersionIdFlag bool 2936 unauditVersionId string // 在审核中的版本号信息,若没有则为空 2937 unauditVersionIdFlag bool 2938 appName string // 应用默认名称,如果没有对应语言下的名称,则返回默认语言下的名称 2939 appNameFlag bool 2940 avatarUrl string // 应用图标链接 2941 avatarUrlFlag bool 2942 description string // 应用默认描述 2943 descriptionFlag bool 2944 scopes []*AppScope // 应用权限列表 2945 scopesFlag bool 2946 backHomeUrl string // 后台主页地址 2947 backHomeUrlFlag bool 2948 i18n []*AppI18nInfo // 应用的国际化信息列表 2949 i18nFlag bool 2950 primaryLanguage string // 应用主语言 2951 primaryLanguageFlag bool 2952 commonCategories []string // 应用分类的国际化描述 2953 commonCategoriesFlag bool 2954 owner *ApplicationOwner // 应用的所有者信息 2955 ownerFlag bool 2956 } 2957 2958 func NewApplicationV2Builder() *ApplicationV2Builder { 2959 builder := &ApplicationV2Builder{} 2960 return builder 2961 } 2962 2963 // 应用的 id 2964 // 2965 // 示例值:cli_9b445f5258795107 2966 func (builder *ApplicationV2Builder) AppId(appId string) *ApplicationV2Builder { 2967 builder.appId = appId 2968 builder.appIdFlag = true 2969 return builder 2970 } 2971 2972 // 应用创建者(所有者) 2973 // 2974 // 示例值:ou_d317f090b7258ad0372aa53963cda70d 2975 func (builder *ApplicationV2Builder) CreatorId(creatorId string) *ApplicationV2Builder { 2976 builder.creatorId = creatorId 2977 builder.creatorIdFlag = true 2978 return builder 2979 } 2980 2981 // 应用状态 2982 // 2983 // 示例值:1 2984 func (builder *ApplicationV2Builder) Status(status int) *ApplicationV2Builder { 2985 builder.status = status 2986 builder.statusFlag = true 2987 return builder 2988 } 2989 2990 // 应用类型 2991 // 2992 // 示例值:0 2993 func (builder *ApplicationV2Builder) SceneType(sceneType int) *ApplicationV2Builder { 2994 builder.sceneType = sceneType 2995 builder.sceneTypeFlag = true 2996 return builder 2997 } 2998 2999 // 付费类型 3000 // 3001 // 示例值:0 3002 func (builder *ApplicationV2Builder) PaymentType(paymentType int) *ApplicationV2Builder { 3003 builder.paymentType = paymentType 3004 builder.paymentTypeFlag = true 3005 return builder 3006 } 3007 3008 // 安全设置中的重定向 URL 3009 // 3010 // 示例值: 3011 func (builder *ApplicationV2Builder) RedirectUrls(redirectUrls []string) *ApplicationV2Builder { 3012 builder.redirectUrls = redirectUrls 3013 builder.redirectUrlsFlag = true 3014 return builder 3015 } 3016 3017 // 发布在线上的应用版本 3018 // 3019 // 示例值: 3020 func (builder *ApplicationV2Builder) OnlineVersionId(onlineVersionId string) *ApplicationV2Builder { 3021 builder.onlineVersionId = onlineVersionId 3022 builder.onlineVersionIdFlag = true 3023 return builder 3024 } 3025 3026 // 在审核中的版本号信息,若没有则为空 3027 // 3028 // 示例值: 3029 func (builder *ApplicationV2Builder) UnauditVersionId(unauditVersionId string) *ApplicationV2Builder { 3030 builder.unauditVersionId = unauditVersionId 3031 builder.unauditVersionIdFlag = true 3032 return builder 3033 } 3034 3035 // 应用默认名称,如果没有对应语言下的名称,则返回默认语言下的名称 3036 // 3037 // 示例值:应用名称 3038 func (builder *ApplicationV2Builder) AppName(appName string) *ApplicationV2Builder { 3039 builder.appName = appName 3040 builder.appNameFlag = true 3041 return builder 3042 } 3043 3044 // 应用图标链接 3045 // 3046 // 示例值:https://sf1-ttcdn-tos.pstatp.com/img/avatar/d279000ca4d3f7f6aaff~72x72.jpg 3047 func (builder *ApplicationV2Builder) AvatarUrl(avatarUrl string) *ApplicationV2Builder { 3048 builder.avatarUrl = avatarUrl 3049 builder.avatarUrlFlag = true 3050 return builder 3051 } 3052 3053 // 应用默认描述 3054 // 3055 // 示例值:应用描述 3056 func (builder *ApplicationV2Builder) Description(description string) *ApplicationV2Builder { 3057 builder.description = description 3058 builder.descriptionFlag = true 3059 return builder 3060 } 3061 3062 // 应用权限列表 3063 // 3064 // 示例值: 3065 func (builder *ApplicationV2Builder) Scopes(scopes []*AppScope) *ApplicationV2Builder { 3066 builder.scopes = scopes 3067 builder.scopesFlag = true 3068 return builder 3069 } 3070 3071 // 后台主页地址 3072 // 3073 // 示例值:https://www.example.com 3074 func (builder *ApplicationV2Builder) BackHomeUrl(backHomeUrl string) *ApplicationV2Builder { 3075 builder.backHomeUrl = backHomeUrl 3076 builder.backHomeUrlFlag = true 3077 return builder 3078 } 3079 3080 // 应用的国际化信息列表 3081 // 3082 // 示例值: 3083 func (builder *ApplicationV2Builder) I18n(i18n []*AppI18nInfo) *ApplicationV2Builder { 3084 builder.i18n = i18n 3085 builder.i18nFlag = true 3086 return builder 3087 } 3088 3089 // 应用主语言 3090 // 3091 // 示例值:zh_cn 3092 func (builder *ApplicationV2Builder) PrimaryLanguage(primaryLanguage string) *ApplicationV2Builder { 3093 builder.primaryLanguage = primaryLanguage 3094 builder.primaryLanguageFlag = true 3095 return builder 3096 } 3097 3098 // 应用分类的国际化描述 3099 // 3100 // 示例值: 3101 func (builder *ApplicationV2Builder) CommonCategories(commonCategories []string) *ApplicationV2Builder { 3102 builder.commonCategories = commonCategories 3103 builder.commonCategoriesFlag = true 3104 return builder 3105 } 3106 3107 // 应用的所有者信息 3108 // 3109 // 示例值: 3110 func (builder *ApplicationV2Builder) Owner(owner *ApplicationOwner) *ApplicationV2Builder { 3111 builder.owner = owner 3112 builder.ownerFlag = true 3113 return builder 3114 } 3115 3116 func (builder *ApplicationV2Builder) Build() *ApplicationV2 { 3117 req := &ApplicationV2{} 3118 if builder.appIdFlag { 3119 req.AppId = &builder.appId 3120 3121 } 3122 if builder.creatorIdFlag { 3123 req.CreatorId = &builder.creatorId 3124 3125 } 3126 if builder.statusFlag { 3127 req.Status = &builder.status 3128 3129 } 3130 if builder.sceneTypeFlag { 3131 req.SceneType = &builder.sceneType 3132 3133 } 3134 if builder.paymentTypeFlag { 3135 req.PaymentType = &builder.paymentType 3136 3137 } 3138 if builder.redirectUrlsFlag { 3139 req.RedirectUrls = builder.redirectUrls 3140 } 3141 if builder.onlineVersionIdFlag { 3142 req.OnlineVersionId = &builder.onlineVersionId 3143 3144 } 3145 if builder.unauditVersionIdFlag { 3146 req.UnauditVersionId = &builder.unauditVersionId 3147 3148 } 3149 if builder.appNameFlag { 3150 req.AppName = &builder.appName 3151 3152 } 3153 if builder.avatarUrlFlag { 3154 req.AvatarUrl = &builder.avatarUrl 3155 3156 } 3157 if builder.descriptionFlag { 3158 req.Description = &builder.description 3159 3160 } 3161 if builder.scopesFlag { 3162 req.Scopes = builder.scopes 3163 } 3164 if builder.backHomeUrlFlag { 3165 req.BackHomeUrl = &builder.backHomeUrl 3166 3167 } 3168 if builder.i18nFlag { 3169 req.I18n = builder.i18n 3170 } 3171 if builder.primaryLanguageFlag { 3172 req.PrimaryLanguage = &builder.primaryLanguage 3173 3174 } 3175 if builder.commonCategoriesFlag { 3176 req.CommonCategories = builder.commonCategories 3177 } 3178 if builder.ownerFlag { 3179 req.Owner = builder.owner 3180 } 3181 return req 3182 } 3183 3184 type Block struct { 3185 BlockTypeId *string `json:"block_type_id,omitempty"` // BlockTypeID 3186 VersionId *string `json:"version_id,omitempty"` // 上传 block 小程序的 version id 3187 I18n []*BlockI18nInfo `json:"i18n,omitempty"` // block 的国际化信息 3188 MobileIconUrl *string `json:"mobile_icon_url,omitempty"` // 移动端 icon 链接 3189 PcIconUrl *string `json:"pc_icon_url,omitempty"` // pc 端口 icon 链接 3190 } 3191 3192 type BlockBuilder struct { 3193 blockTypeId string // BlockTypeID 3194 blockTypeIdFlag bool 3195 versionId string // 上传 block 小程序的 version id 3196 versionIdFlag bool 3197 i18n []*BlockI18nInfo // block 的国际化信息 3198 i18nFlag bool 3199 mobileIconUrl string // 移动端 icon 链接 3200 mobileIconUrlFlag bool 3201 pcIconUrl string // pc 端口 icon 链接 3202 pcIconUrlFlag bool 3203 } 3204 3205 func NewBlockBuilder() *BlockBuilder { 3206 builder := &BlockBuilder{} 3207 return builder 3208 } 3209 3210 // BlockTypeID 3211 // 3212 // 示例值:blk_4fb61568435880110854c1d0 3213 func (builder *BlockBuilder) BlockTypeId(blockTypeId string) *BlockBuilder { 3214 builder.blockTypeId = blockTypeId 3215 builder.blockTypeIdFlag = true 3216 return builder 3217 } 3218 3219 // 上传 block 小程序的 version id 3220 // 3221 // 示例值:1.0.0 3222 func (builder *BlockBuilder) VersionId(versionId string) *BlockBuilder { 3223 builder.versionId = versionId 3224 builder.versionIdFlag = true 3225 return builder 3226 } 3227 3228 // block 的国际化信息 3229 // 3230 // 示例值: 3231 func (builder *BlockBuilder) I18n(i18n []*BlockI18nInfo) *BlockBuilder { 3232 builder.i18n = i18n 3233 builder.i18nFlag = true 3234 return builder 3235 } 3236 3237 // 移动端 icon 链接 3238 // 3239 // 示例值:https://www.example.com 3240 func (builder *BlockBuilder) MobileIconUrl(mobileIconUrl string) *BlockBuilder { 3241 builder.mobileIconUrl = mobileIconUrl 3242 builder.mobileIconUrlFlag = true 3243 return builder 3244 } 3245 3246 // pc 端口 icon 链接 3247 // 3248 // 示例值:https://www.example.com 3249 func (builder *BlockBuilder) PcIconUrl(pcIconUrl string) *BlockBuilder { 3250 builder.pcIconUrl = pcIconUrl 3251 builder.pcIconUrlFlag = true 3252 return builder 3253 } 3254 3255 func (builder *BlockBuilder) Build() *Block { 3256 req := &Block{} 3257 if builder.blockTypeIdFlag { 3258 req.BlockTypeId = &builder.blockTypeId 3259 3260 } 3261 if builder.versionIdFlag { 3262 req.VersionId = &builder.versionId 3263 3264 } 3265 if builder.i18nFlag { 3266 req.I18n = builder.i18n 3267 } 3268 if builder.mobileIconUrlFlag { 3269 req.MobileIconUrl = &builder.mobileIconUrl 3270 3271 } 3272 if builder.pcIconUrlFlag { 3273 req.PcIconUrl = &builder.pcIconUrl 3274 3275 } 3276 return req 3277 } 3278 3279 type BlockI18nInfo struct { 3280 I18nKey *string `json:"i18n_key,omitempty"` // 国际化语言的 key 3281 Name *string `json:"name,omitempty"` // 名称 3282 } 3283 3284 type BlockI18nInfoBuilder struct { 3285 i18nKey string // 国际化语言的 key 3286 i18nKeyFlag bool 3287 name string // 名称 3288 nameFlag bool 3289 } 3290 3291 func NewBlockI18nInfoBuilder() *BlockI18nInfoBuilder { 3292 builder := &BlockI18nInfoBuilder{} 3293 return builder 3294 } 3295 3296 // 国际化语言的 key 3297 // 3298 // 示例值:zh_cn 3299 func (builder *BlockI18nInfoBuilder) I18nKey(i18nKey string) *BlockI18nInfoBuilder { 3300 builder.i18nKey = i18nKey 3301 builder.i18nKeyFlag = true 3302 return builder 3303 } 3304 3305 // 名称 3306 // 3307 // 示例值:名称 3308 func (builder *BlockI18nInfoBuilder) Name(name string) *BlockI18nInfoBuilder { 3309 builder.name = name 3310 builder.nameFlag = true 3311 return builder 3312 } 3313 3314 func (builder *BlockI18nInfoBuilder) Build() *BlockI18nInfo { 3315 req := &BlockI18nInfo{} 3316 if builder.i18nKeyFlag { 3317 req.I18nKey = &builder.i18nKey 3318 3319 } 3320 if builder.nameFlag { 3321 req.Name = &builder.name 3322 3323 } 3324 return req 3325 } 3326 3327 type Bot struct { 3328 CardRequestUrl *string `json:"card_request_url,omitempty"` // 消息卡片回调地址 3329 } 3330 3331 type BotBuilder struct { 3332 cardRequestUrl string // 消息卡片回调地址 3333 cardRequestUrlFlag bool 3334 } 3335 3336 func NewBotBuilder() *BotBuilder { 3337 builder := &BotBuilder{} 3338 return builder 3339 } 3340 3341 // 消息卡片回调地址 3342 // 3343 // 示例值:https://www.example.com 3344 func (builder *BotBuilder) CardRequestUrl(cardRequestUrl string) *BotBuilder { 3345 builder.cardRequestUrl = cardRequestUrl 3346 builder.cardRequestUrlFlag = true 3347 return builder 3348 } 3349 3350 func (builder *BotBuilder) Build() *Bot { 3351 req := &Bot{} 3352 if builder.cardRequestUrlFlag { 3353 req.CardRequestUrl = &builder.cardRequestUrl 3354 3355 } 3356 return req 3357 } 3358 3359 type ClientBadgeNum struct { 3360 WebApp *int `json:"web_app,omitempty"` // h5能力的badge数量 3361 Gadget *int `json:"gadget,omitempty"` // 小程序能力的badge数量 3362 } 3363 3364 type ClientBadgeNumBuilder struct { 3365 webApp int // h5能力的badge数量 3366 webAppFlag bool 3367 gadget int // 小程序能力的badge数量 3368 gadgetFlag bool 3369 } 3370 3371 func NewClientBadgeNumBuilder() *ClientBadgeNumBuilder { 3372 builder := &ClientBadgeNumBuilder{} 3373 return builder 3374 } 3375 3376 // h5能力的badge数量 3377 // 3378 // 示例值: 3379 func (builder *ClientBadgeNumBuilder) WebApp(webApp int) *ClientBadgeNumBuilder { 3380 builder.webApp = webApp 3381 builder.webAppFlag = true 3382 return builder 3383 } 3384 3385 // 小程序能力的badge数量 3386 // 3387 // 示例值: 3388 func (builder *ClientBadgeNumBuilder) Gadget(gadget int) *ClientBadgeNumBuilder { 3389 builder.gadget = gadget 3390 builder.gadgetFlag = true 3391 return builder 3392 } 3393 3394 func (builder *ClientBadgeNumBuilder) Build() *ClientBadgeNum { 3395 req := &ClientBadgeNum{} 3396 if builder.webAppFlag { 3397 req.WebApp = &builder.webApp 3398 3399 } 3400 if builder.gadgetFlag { 3401 req.Gadget = &builder.gadget 3402 3403 } 3404 return req 3405 } 3406 3407 type CloudDoc struct { 3408 SpaceUrl *string `json:"space_url,omitempty"` // 云空间重定向 url 3409 I18n []*CloudDocI18nInfo `json:"i18n,omitempty"` // 国际化信息 3410 IconUrl *string `json:"icon_url,omitempty"` // 图标链接 3411 Mode *int `json:"mode,omitempty"` // 云文档支持模式 3412 } 3413 3414 type CloudDocBuilder struct { 3415 spaceUrl string // 云空间重定向 url 3416 spaceUrlFlag bool 3417 i18n []*CloudDocI18nInfo // 国际化信息 3418 i18nFlag bool 3419 iconUrl string // 图标链接 3420 iconUrlFlag bool 3421 mode int // 云文档支持模式 3422 modeFlag bool 3423 } 3424 3425 func NewCloudDocBuilder() *CloudDocBuilder { 3426 builder := &CloudDocBuilder{} 3427 return builder 3428 } 3429 3430 // 云空间重定向 url 3431 // 3432 // 示例值:https://www.example.com 3433 func (builder *CloudDocBuilder) SpaceUrl(spaceUrl string) *CloudDocBuilder { 3434 builder.spaceUrl = spaceUrl 3435 builder.spaceUrlFlag = true 3436 return builder 3437 } 3438 3439 // 国际化信息 3440 // 3441 // 示例值: 3442 func (builder *CloudDocBuilder) I18n(i18n []*CloudDocI18nInfo) *CloudDocBuilder { 3443 builder.i18n = i18n 3444 builder.i18nFlag = true 3445 return builder 3446 } 3447 3448 // 图标链接 3449 // 3450 // 示例值:https://www.example.com 3451 func (builder *CloudDocBuilder) IconUrl(iconUrl string) *CloudDocBuilder { 3452 builder.iconUrl = iconUrl 3453 builder.iconUrlFlag = true 3454 return builder 3455 } 3456 3457 // 云文档支持模式 3458 // 3459 // 示例值:1 3460 func (builder *CloudDocBuilder) Mode(mode int) *CloudDocBuilder { 3461 builder.mode = mode 3462 builder.modeFlag = true 3463 return builder 3464 } 3465 3466 func (builder *CloudDocBuilder) Build() *CloudDoc { 3467 req := &CloudDoc{} 3468 if builder.spaceUrlFlag { 3469 req.SpaceUrl = &builder.spaceUrl 3470 3471 } 3472 if builder.i18nFlag { 3473 req.I18n = builder.i18n 3474 } 3475 if builder.iconUrlFlag { 3476 req.IconUrl = &builder.iconUrl 3477 3478 } 3479 if builder.modeFlag { 3480 req.Mode = &builder.mode 3481 3482 } 3483 return req 3484 } 3485 3486 type CloudDocI18nInfo struct { 3487 I18nKey *string `json:"i18n_key,omitempty"` // 国际化语言的 key 3488 Name *string `json:"name,omitempty"` // 云文档国际化名称 3489 ReadDescription *string `json:"read_description,omitempty"` // 云文档国际化读权限说明 3490 WriteDescription *string `json:"write_description,omitempty"` // 云文档国际化写权限说明 3491 } 3492 3493 type CloudDocI18nInfoBuilder struct { 3494 i18nKey string // 国际化语言的 key 3495 i18nKeyFlag bool 3496 name string // 云文档国际化名称 3497 nameFlag bool 3498 readDescription string // 云文档国际化读权限说明 3499 readDescriptionFlag bool 3500 writeDescription string // 云文档国际化写权限说明 3501 writeDescriptionFlag bool 3502 } 3503 3504 func NewCloudDocI18nInfoBuilder() *CloudDocI18nInfoBuilder { 3505 builder := &CloudDocI18nInfoBuilder{} 3506 return builder 3507 } 3508 3509 // 国际化语言的 key 3510 // 3511 // 示例值:zh_cn 3512 func (builder *CloudDocI18nInfoBuilder) I18nKey(i18nKey string) *CloudDocI18nInfoBuilder { 3513 builder.i18nKey = i18nKey 3514 builder.i18nKeyFlag = true 3515 return builder 3516 } 3517 3518 // 云文档国际化名称 3519 // 3520 // 示例值:名称 3521 func (builder *CloudDocI18nInfoBuilder) Name(name string) *CloudDocI18nInfoBuilder { 3522 builder.name = name 3523 builder.nameFlag = true 3524 return builder 3525 } 3526 3527 // 云文档国际化读权限说明 3528 // 3529 // 示例值:读权限说明 3530 func (builder *CloudDocI18nInfoBuilder) ReadDescription(readDescription string) *CloudDocI18nInfoBuilder { 3531 builder.readDescription = readDescription 3532 builder.readDescriptionFlag = true 3533 return builder 3534 } 3535 3536 // 云文档国际化写权限说明 3537 // 3538 // 示例值:写权限说明 3539 func (builder *CloudDocI18nInfoBuilder) WriteDescription(writeDescription string) *CloudDocI18nInfoBuilder { 3540 builder.writeDescription = writeDescription 3541 builder.writeDescriptionFlag = true 3542 return builder 3543 } 3544 3545 func (builder *CloudDocI18nInfoBuilder) Build() *CloudDocI18nInfo { 3546 req := &CloudDocI18nInfo{} 3547 if builder.i18nKeyFlag { 3548 req.I18nKey = &builder.i18nKey 3549 3550 } 3551 if builder.nameFlag { 3552 req.Name = &builder.name 3553 3554 } 3555 if builder.readDescriptionFlag { 3556 req.ReadDescription = &builder.readDescription 3557 3558 } 3559 if builder.writeDescriptionFlag { 3560 req.WriteDescription = &builder.writeDescription 3561 3562 } 3563 return req 3564 } 3565 3566 type DocsBlock struct { 3567 BlockTypeId *string `json:"block_type_id,omitempty"` // BlockTypeID 3568 I18n []*BlockI18nInfo `json:"i18n,omitempty"` // block 的国际化信息 3569 MobileIconUrl *string `json:"mobile_icon_url,omitempty"` // 移动端 icon 链接 3570 PcIconUrl *string `json:"pc_icon_url,omitempty"` // pc 端口 icon 链接 3571 } 3572 3573 type DocsBlockBuilder struct { 3574 blockTypeId string // BlockTypeID 3575 blockTypeIdFlag bool 3576 i18n []*BlockI18nInfo // block 的国际化信息 3577 i18nFlag bool 3578 mobileIconUrl string // 移动端 icon 链接 3579 mobileIconUrlFlag bool 3580 pcIconUrl string // pc 端口 icon 链接 3581 pcIconUrlFlag bool 3582 } 3583 3584 func NewDocsBlockBuilder() *DocsBlockBuilder { 3585 builder := &DocsBlockBuilder{} 3586 return builder 3587 } 3588 3589 // BlockTypeID 3590 // 3591 // 示例值:blk_4fb61568435880110854c1d0 3592 func (builder *DocsBlockBuilder) BlockTypeId(blockTypeId string) *DocsBlockBuilder { 3593 builder.blockTypeId = blockTypeId 3594 builder.blockTypeIdFlag = true 3595 return builder 3596 } 3597 3598 // block 的国际化信息 3599 // 3600 // 示例值: 3601 func (builder *DocsBlockBuilder) I18n(i18n []*BlockI18nInfo) *DocsBlockBuilder { 3602 builder.i18n = i18n 3603 builder.i18nFlag = true 3604 return builder 3605 } 3606 3607 // 移动端 icon 链接 3608 // 3609 // 示例值:https://www.example.com 3610 func (builder *DocsBlockBuilder) MobileIconUrl(mobileIconUrl string) *DocsBlockBuilder { 3611 builder.mobileIconUrl = mobileIconUrl 3612 builder.mobileIconUrlFlag = true 3613 return builder 3614 } 3615 3616 // pc 端口 icon 链接 3617 // 3618 // 示例值:https://www.example.com 3619 func (builder *DocsBlockBuilder) PcIconUrl(pcIconUrl string) *DocsBlockBuilder { 3620 builder.pcIconUrl = pcIconUrl 3621 builder.pcIconUrlFlag = true 3622 return builder 3623 } 3624 3625 func (builder *DocsBlockBuilder) Build() *DocsBlock { 3626 req := &DocsBlock{} 3627 if builder.blockTypeIdFlag { 3628 req.BlockTypeId = &builder.blockTypeId 3629 3630 } 3631 if builder.i18nFlag { 3632 req.I18n = builder.i18n 3633 } 3634 if builder.mobileIconUrlFlag { 3635 req.MobileIconUrl = &builder.mobileIconUrl 3636 3637 } 3638 if builder.pcIconUrlFlag { 3639 req.PcIconUrl = &builder.pcIconUrl 3640 3641 } 3642 return req 3643 } 3644 3645 type Gadget struct { 3646 EnablePcMode *int `json:"enable_pc_mode,omitempty"` // pc 支持的小程序模式,bit 位表示 3647 SchemaUrls []string `json:"schema_urls,omitempty"` // schema url 列表 3648 PcUseMobilePkg *bool `json:"pc_use_mobile_pkg,omitempty"` // pc 端是否使用小程序版本 3649 PcVersion *string `json:"pc_version,omitempty"` // pc 的小程序版本号 3650 MobileVersion *string `json:"mobile_version,omitempty"` // 移动端小程序版本号 3651 MobileMinLarkVersion *string `json:"mobile_min_lark_version,omitempty"` // 移动端兼容的最低飞书版本 3652 PcMinLarkVersion *string `json:"pc_min_lark_version,omitempty"` // pc 端兼容的最低飞书版本 3653 } 3654 3655 type GadgetBuilder struct { 3656 enablePcMode int // pc 支持的小程序模式,bit 位表示 3657 enablePcModeFlag bool 3658 schemaUrls []string // schema url 列表 3659 schemaUrlsFlag bool 3660 pcUseMobilePkg bool // pc 端是否使用小程序版本 3661 pcUseMobilePkgFlag bool 3662 pcVersion string // pc 的小程序版本号 3663 pcVersionFlag bool 3664 mobileVersion string // 移动端小程序版本号 3665 mobileVersionFlag bool 3666 mobileMinLarkVersion string // 移动端兼容的最低飞书版本 3667 mobileMinLarkVersionFlag bool 3668 pcMinLarkVersion string // pc 端兼容的最低飞书版本 3669 pcMinLarkVersionFlag bool 3670 } 3671 3672 func NewGadgetBuilder() *GadgetBuilder { 3673 builder := &GadgetBuilder{} 3674 return builder 3675 } 3676 3677 // pc 支持的小程序模式,bit 位表示 3678 // 3679 // 示例值:1 3680 func (builder *GadgetBuilder) EnablePcMode(enablePcMode int) *GadgetBuilder { 3681 builder.enablePcMode = enablePcMode 3682 builder.enablePcModeFlag = true 3683 return builder 3684 } 3685 3686 // schema url 列表 3687 // 3688 // 示例值: 3689 func (builder *GadgetBuilder) SchemaUrls(schemaUrls []string) *GadgetBuilder { 3690 builder.schemaUrls = schemaUrls 3691 builder.schemaUrlsFlag = true 3692 return builder 3693 } 3694 3695 // pc 端是否使用小程序版本 3696 // 3697 // 示例值:false 3698 func (builder *GadgetBuilder) PcUseMobilePkg(pcUseMobilePkg bool) *GadgetBuilder { 3699 builder.pcUseMobilePkg = pcUseMobilePkg 3700 builder.pcUseMobilePkgFlag = true 3701 return builder 3702 } 3703 3704 // pc 的小程序版本号 3705 // 3706 // 示例值:1.0.0 3707 func (builder *GadgetBuilder) PcVersion(pcVersion string) *GadgetBuilder { 3708 builder.pcVersion = pcVersion 3709 builder.pcVersionFlag = true 3710 return builder 3711 } 3712 3713 // 移动端小程序版本号 3714 // 3715 // 示例值:1.0.0 3716 func (builder *GadgetBuilder) MobileVersion(mobileVersion string) *GadgetBuilder { 3717 builder.mobileVersion = mobileVersion 3718 builder.mobileVersionFlag = true 3719 return builder 3720 } 3721 3722 // 移动端兼容的最低飞书版本 3723 // 3724 // 示例值:2.0 3725 func (builder *GadgetBuilder) MobileMinLarkVersion(mobileMinLarkVersion string) *GadgetBuilder { 3726 builder.mobileMinLarkVersion = mobileMinLarkVersion 3727 builder.mobileMinLarkVersionFlag = true 3728 return builder 3729 } 3730 3731 // pc 端兼容的最低飞书版本 3732 // 3733 // 示例值:2.0 3734 func (builder *GadgetBuilder) PcMinLarkVersion(pcMinLarkVersion string) *GadgetBuilder { 3735 builder.pcMinLarkVersion = pcMinLarkVersion 3736 builder.pcMinLarkVersionFlag = true 3737 return builder 3738 } 3739 3740 func (builder *GadgetBuilder) Build() *Gadget { 3741 req := &Gadget{} 3742 if builder.enablePcModeFlag { 3743 req.EnablePcMode = &builder.enablePcMode 3744 3745 } 3746 if builder.schemaUrlsFlag { 3747 req.SchemaUrls = builder.schemaUrls 3748 } 3749 if builder.pcUseMobilePkgFlag { 3750 req.PcUseMobilePkg = &builder.pcUseMobilePkg 3751 3752 } 3753 if builder.pcVersionFlag { 3754 req.PcVersion = &builder.pcVersion 3755 3756 } 3757 if builder.mobileVersionFlag { 3758 req.MobileVersion = &builder.mobileVersion 3759 3760 } 3761 if builder.mobileMinLarkVersionFlag { 3762 req.MobileMinLarkVersion = &builder.mobileMinLarkVersion 3763 3764 } 3765 if builder.pcMinLarkVersionFlag { 3766 req.PcMinLarkVersion = &builder.pcMinLarkVersion 3767 3768 } 3769 return req 3770 } 3771 3772 type MessageAction struct { 3773 PcAppLink *string `json:"pc_app_link,omitempty"` // pc 端链接 3774 MobileAppLink *string `json:"mobile_app_link,omitempty"` // 移动端链接 3775 I18n []*MessageActionI18nInfo `json:"i18n,omitempty"` // 国际化信息 3776 } 3777 3778 type MessageActionBuilder struct { 3779 pcAppLink string // pc 端链接 3780 pcAppLinkFlag bool 3781 mobileAppLink string // 移动端链接 3782 mobileAppLinkFlag bool 3783 i18n []*MessageActionI18nInfo // 国际化信息 3784 i18nFlag bool 3785 } 3786 3787 func NewMessageActionBuilder() *MessageActionBuilder { 3788 builder := &MessageActionBuilder{} 3789 return builder 3790 } 3791 3792 // pc 端链接 3793 // 3794 // 示例值:https://www.example.com 3795 func (builder *MessageActionBuilder) PcAppLink(pcAppLink string) *MessageActionBuilder { 3796 builder.pcAppLink = pcAppLink 3797 builder.pcAppLinkFlag = true 3798 return builder 3799 } 3800 3801 // 移动端链接 3802 // 3803 // 示例值:https://www.example.com 3804 func (builder *MessageActionBuilder) MobileAppLink(mobileAppLink string) *MessageActionBuilder { 3805 builder.mobileAppLink = mobileAppLink 3806 builder.mobileAppLinkFlag = true 3807 return builder 3808 } 3809 3810 // 国际化信息 3811 // 3812 // 示例值: 3813 func (builder *MessageActionBuilder) I18n(i18n []*MessageActionI18nInfo) *MessageActionBuilder { 3814 builder.i18n = i18n 3815 builder.i18nFlag = true 3816 return builder 3817 } 3818 3819 func (builder *MessageActionBuilder) Build() *MessageAction { 3820 req := &MessageAction{} 3821 if builder.pcAppLinkFlag { 3822 req.PcAppLink = &builder.pcAppLink 3823 3824 } 3825 if builder.mobileAppLinkFlag { 3826 req.MobileAppLink = &builder.mobileAppLink 3827 3828 } 3829 if builder.i18nFlag { 3830 req.I18n = builder.i18n 3831 } 3832 return req 3833 } 3834 3835 type MessageActionI18nInfo struct { 3836 I18nKey *string `json:"i18n_key,omitempty"` // 国际化语言的 key 3837 Name *string `json:"name,omitempty"` // 国际化名称 3838 } 3839 3840 type MessageActionI18nInfoBuilder struct { 3841 i18nKey string // 国际化语言的 key 3842 i18nKeyFlag bool 3843 name string // 国际化名称 3844 nameFlag bool 3845 } 3846 3847 func NewMessageActionI18nInfoBuilder() *MessageActionI18nInfoBuilder { 3848 builder := &MessageActionI18nInfoBuilder{} 3849 return builder 3850 } 3851 3852 // 国际化语言的 key 3853 // 3854 // 示例值:zh_cn 3855 func (builder *MessageActionI18nInfoBuilder) I18nKey(i18nKey string) *MessageActionI18nInfoBuilder { 3856 builder.i18nKey = i18nKey 3857 builder.i18nKeyFlag = true 3858 return builder 3859 } 3860 3861 // 国际化名称 3862 // 3863 // 示例值:名称 3864 func (builder *MessageActionI18nInfoBuilder) Name(name string) *MessageActionI18nInfoBuilder { 3865 builder.name = name 3866 builder.nameFlag = true 3867 return builder 3868 } 3869 3870 func (builder *MessageActionI18nInfoBuilder) Build() *MessageActionI18nInfo { 3871 req := &MessageActionI18nInfo{} 3872 if builder.i18nKeyFlag { 3873 req.I18nKey = &builder.i18nKey 3874 3875 } 3876 if builder.nameFlag { 3877 req.Name = &builder.name 3878 3879 } 3880 return req 3881 } 3882 3883 type MessageOverviewItem struct { 3884 PageView *string `json:"page_view,omitempty"` // 用户访问量 3885 UniqueVisitor *string `json:"unique_visitor,omitempty"` // unique 访问量 3886 ChatType *string `json:"chat_type,omitempty"` // 聊天类型,大小写不敏感,private:私聊;group:群聊 3887 MessageType *string `json:"message_type,omitempty"` // 消息类型,大小写不敏感,text:文本消息;image:图片消息;interactive:卡片消息;post:富文本消息;share_chat:群名片 3888 EventType *string `json:"event_type,omitempty"` // 事件类型 3889 } 3890 3891 type MessageOverviewItemBuilder struct { 3892 pageView string // 用户访问量 3893 pageViewFlag bool 3894 uniqueVisitor string // unique 访问量 3895 uniqueVisitorFlag bool 3896 chatType string // 聊天类型,大小写不敏感,private:私聊;group:群聊 3897 chatTypeFlag bool 3898 messageType string // 消息类型,大小写不敏感,text:文本消息;image:图片消息;interactive:卡片消息;post:富文本消息;share_chat:群名片 3899 messageTypeFlag bool 3900 eventType string // 事件类型 3901 eventTypeFlag bool 3902 } 3903 3904 func NewMessageOverviewItemBuilder() *MessageOverviewItemBuilder { 3905 builder := &MessageOverviewItemBuilder{} 3906 return builder 3907 } 3908 3909 // 用户访问量 3910 // 3911 // 示例值: 3912 func (builder *MessageOverviewItemBuilder) PageView(pageView string) *MessageOverviewItemBuilder { 3913 builder.pageView = pageView 3914 builder.pageViewFlag = true 3915 return builder 3916 } 3917 3918 // unique 访问量 3919 // 3920 // 示例值: 3921 func (builder *MessageOverviewItemBuilder) UniqueVisitor(uniqueVisitor string) *MessageOverviewItemBuilder { 3922 builder.uniqueVisitor = uniqueVisitor 3923 builder.uniqueVisitorFlag = true 3924 return builder 3925 } 3926 3927 // 聊天类型,大小写不敏感,private:私聊;group:群聊 3928 // 3929 // 示例值: 3930 func (builder *MessageOverviewItemBuilder) ChatType(chatType string) *MessageOverviewItemBuilder { 3931 builder.chatType = chatType 3932 builder.chatTypeFlag = true 3933 return builder 3934 } 3935 3936 // 消息类型,大小写不敏感,text:文本消息;image:图片消息;interactive:卡片消息;post:富文本消息;share_chat:群名片 3937 // 3938 // 示例值: 3939 func (builder *MessageOverviewItemBuilder) MessageType(messageType string) *MessageOverviewItemBuilder { 3940 builder.messageType = messageType 3941 builder.messageTypeFlag = true 3942 return builder 3943 } 3944 3945 // 事件类型 3946 // 3947 // 示例值: 3948 func (builder *MessageOverviewItemBuilder) EventType(eventType string) *MessageOverviewItemBuilder { 3949 builder.eventType = eventType 3950 builder.eventTypeFlag = true 3951 return builder 3952 } 3953 3954 func (builder *MessageOverviewItemBuilder) Build() *MessageOverviewItem { 3955 req := &MessageOverviewItem{} 3956 if builder.pageViewFlag { 3957 req.PageView = &builder.pageView 3958 3959 } 3960 if builder.uniqueVisitorFlag { 3961 req.UniqueVisitor = &builder.uniqueVisitor 3962 3963 } 3964 if builder.chatTypeFlag { 3965 req.ChatType = &builder.chatType 3966 3967 } 3968 if builder.messageTypeFlag { 3969 req.MessageType = &builder.messageType 3970 3971 } 3972 if builder.eventTypeFlag { 3973 req.EventType = &builder.eventType 3974 3975 } 3976 return req 3977 } 3978 3979 type Miniprogram struct { 3980 EnablePcMode *int `json:"enable_pc_mode,omitempty"` // pc 支持的小程序模式,bit 位表示 3981 SchemaUrls []string `json:"schema_urls,omitempty"` // schema url 列表 3982 PcUseMobilePkg *bool `json:"pc_use_mobile_pkg,omitempty"` // pc 端是否使用小程序版本 3983 PcVersionId *string `json:"pc_version_id,omitempty"` // pc 的小程序版本号 3984 MobileVersionId *string `json:"mobile_version_id,omitempty"` // 移动端小程序版本号 3985 MobileMinLarkVersion *string `json:"mobile_min_lark_version,omitempty"` // 移动端兼容的最低飞书版本 3986 PcMinLarkVersion *string `json:"pc_min_lark_version,omitempty"` // pc 端兼容的最低飞书版本 3987 } 3988 3989 type MiniprogramBuilder struct { 3990 enablePcMode int // pc 支持的小程序模式,bit 位表示 3991 enablePcModeFlag bool 3992 schemaUrls []string // schema url 列表 3993 schemaUrlsFlag bool 3994 pcUseMobilePkg bool // pc 端是否使用小程序版本 3995 pcUseMobilePkgFlag bool 3996 pcVersionId string // pc 的小程序版本号 3997 pcVersionIdFlag bool 3998 mobileVersionId string // 移动端小程序版本号 3999 mobileVersionIdFlag bool 4000 mobileMinLarkVersion string // 移动端兼容的最低飞书版本 4001 mobileMinLarkVersionFlag bool 4002 pcMinLarkVersion string // pc 端兼容的最低飞书版本 4003 pcMinLarkVersionFlag bool 4004 } 4005 4006 func NewMiniprogramBuilder() *MiniprogramBuilder { 4007 builder := &MiniprogramBuilder{} 4008 return builder 4009 } 4010 4011 // pc 支持的小程序模式,bit 位表示 4012 // 4013 // 示例值:1 4014 func (builder *MiniprogramBuilder) EnablePcMode(enablePcMode int) *MiniprogramBuilder { 4015 builder.enablePcMode = enablePcMode 4016 builder.enablePcModeFlag = true 4017 return builder 4018 } 4019 4020 // schema url 列表 4021 // 4022 // 示例值: 4023 func (builder *MiniprogramBuilder) SchemaUrls(schemaUrls []string) *MiniprogramBuilder { 4024 builder.schemaUrls = schemaUrls 4025 builder.schemaUrlsFlag = true 4026 return builder 4027 } 4028 4029 // pc 端是否使用小程序版本 4030 // 4031 // 示例值:false 4032 func (builder *MiniprogramBuilder) PcUseMobilePkg(pcUseMobilePkg bool) *MiniprogramBuilder { 4033 builder.pcUseMobilePkg = pcUseMobilePkg 4034 builder.pcUseMobilePkgFlag = true 4035 return builder 4036 } 4037 4038 // pc 的小程序版本号 4039 // 4040 // 示例值:1.0.0 4041 func (builder *MiniprogramBuilder) PcVersionId(pcVersionId string) *MiniprogramBuilder { 4042 builder.pcVersionId = pcVersionId 4043 builder.pcVersionIdFlag = true 4044 return builder 4045 } 4046 4047 // 移动端小程序版本号 4048 // 4049 // 示例值:1.0.0 4050 func (builder *MiniprogramBuilder) MobileVersionId(mobileVersionId string) *MiniprogramBuilder { 4051 builder.mobileVersionId = mobileVersionId 4052 builder.mobileVersionIdFlag = true 4053 return builder 4054 } 4055 4056 // 移动端兼容的最低飞书版本 4057 // 4058 // 示例值:2.0 4059 func (builder *MiniprogramBuilder) MobileMinLarkVersion(mobileMinLarkVersion string) *MiniprogramBuilder { 4060 builder.mobileMinLarkVersion = mobileMinLarkVersion 4061 builder.mobileMinLarkVersionFlag = true 4062 return builder 4063 } 4064 4065 // pc 端兼容的最低飞书版本 4066 // 4067 // 示例值:2.0 4068 func (builder *MiniprogramBuilder) PcMinLarkVersion(pcMinLarkVersion string) *MiniprogramBuilder { 4069 builder.pcMinLarkVersion = pcMinLarkVersion 4070 builder.pcMinLarkVersionFlag = true 4071 return builder 4072 } 4073 4074 func (builder *MiniprogramBuilder) Build() *Miniprogram { 4075 req := &Miniprogram{} 4076 if builder.enablePcModeFlag { 4077 req.EnablePcMode = &builder.enablePcMode 4078 4079 } 4080 if builder.schemaUrlsFlag { 4081 req.SchemaUrls = builder.schemaUrls 4082 } 4083 if builder.pcUseMobilePkgFlag { 4084 req.PcUseMobilePkg = &builder.pcUseMobilePkg 4085 4086 } 4087 if builder.pcVersionIdFlag { 4088 req.PcVersionId = &builder.pcVersionId 4089 4090 } 4091 if builder.mobileVersionIdFlag { 4092 req.MobileVersionId = &builder.mobileVersionId 4093 4094 } 4095 if builder.mobileMinLarkVersionFlag { 4096 req.MobileMinLarkVersion = &builder.mobileMinLarkVersion 4097 4098 } 4099 if builder.pcMinLarkVersionFlag { 4100 req.PcMinLarkVersion = &builder.pcMinLarkVersion 4101 4102 } 4103 return req 4104 } 4105 4106 type MsgAction struct { 4107 PcAppLink *string `json:"pc_app_link,omitempty"` // pc 端链接 4108 MobileAppLink *string `json:"mobile_app_link,omitempty"` // 移动端链接 4109 I18n []*MsgActionI18nInfo `json:"i18n,omitempty"` // 国际化信息 4110 } 4111 4112 type MsgActionBuilder struct { 4113 pcAppLink string // pc 端链接 4114 pcAppLinkFlag bool 4115 mobileAppLink string // 移动端链接 4116 mobileAppLinkFlag bool 4117 i18n []*MsgActionI18nInfo // 国际化信息 4118 i18nFlag bool 4119 } 4120 4121 func NewMsgActionBuilder() *MsgActionBuilder { 4122 builder := &MsgActionBuilder{} 4123 return builder 4124 } 4125 4126 // pc 端链接 4127 // 4128 // 示例值:https://www.example.com 4129 func (builder *MsgActionBuilder) PcAppLink(pcAppLink string) *MsgActionBuilder { 4130 builder.pcAppLink = pcAppLink 4131 builder.pcAppLinkFlag = true 4132 return builder 4133 } 4134 4135 // 移动端链接 4136 // 4137 // 示例值:https://www.example.com 4138 func (builder *MsgActionBuilder) MobileAppLink(mobileAppLink string) *MsgActionBuilder { 4139 builder.mobileAppLink = mobileAppLink 4140 builder.mobileAppLinkFlag = true 4141 return builder 4142 } 4143 4144 // 国际化信息 4145 // 4146 // 示例值: 4147 func (builder *MsgActionBuilder) I18n(i18n []*MsgActionI18nInfo) *MsgActionBuilder { 4148 builder.i18n = i18n 4149 builder.i18nFlag = true 4150 return builder 4151 } 4152 4153 func (builder *MsgActionBuilder) Build() *MsgAction { 4154 req := &MsgAction{} 4155 if builder.pcAppLinkFlag { 4156 req.PcAppLink = &builder.pcAppLink 4157 4158 } 4159 if builder.mobileAppLinkFlag { 4160 req.MobileAppLink = &builder.mobileAppLink 4161 4162 } 4163 if builder.i18nFlag { 4164 req.I18n = builder.i18n 4165 } 4166 return req 4167 } 4168 4169 type MsgActionI18nInfo struct { 4170 I18nKey *string `json:"i18n_key,omitempty"` // 国际化语言的 key 4171 Name *string `json:"name,omitempty"` // 国际化名称 4172 } 4173 4174 type MsgActionI18nInfoBuilder struct { 4175 i18nKey string // 国际化语言的 key 4176 i18nKeyFlag bool 4177 name string // 国际化名称 4178 nameFlag bool 4179 } 4180 4181 func NewMsgActionI18nInfoBuilder() *MsgActionI18nInfoBuilder { 4182 builder := &MsgActionI18nInfoBuilder{} 4183 return builder 4184 } 4185 4186 // 国际化语言的 key 4187 // 4188 // 示例值:zh_cn 4189 func (builder *MsgActionI18nInfoBuilder) I18nKey(i18nKey string) *MsgActionI18nInfoBuilder { 4190 builder.i18nKey = i18nKey 4191 builder.i18nKeyFlag = true 4192 return builder 4193 } 4194 4195 // 国际化名称 4196 // 4197 // 示例值:名称 4198 func (builder *MsgActionI18nInfoBuilder) Name(name string) *MsgActionI18nInfoBuilder { 4199 builder.name = name 4200 builder.nameFlag = true 4201 return builder 4202 } 4203 4204 func (builder *MsgActionI18nInfoBuilder) Build() *MsgActionI18nInfo { 4205 req := &MsgActionI18nInfo{} 4206 if builder.i18nKeyFlag { 4207 req.I18nKey = &builder.i18nKey 4208 4209 } 4210 if builder.nameFlag { 4211 req.Name = &builder.name 4212 4213 } 4214 return req 4215 } 4216 4217 type Navigate struct { 4218 Pc *NavigateMeta `json:"pc,omitempty"` // pc 端主导航信息 4219 Mobile *NavigateMeta `json:"mobile,omitempty"` // 移动端主导航信息 4220 } 4221 4222 type NavigateBuilder struct { 4223 pc *NavigateMeta // pc 端主导航信息 4224 pcFlag bool 4225 mobile *NavigateMeta // 移动端主导航信息 4226 mobileFlag bool 4227 } 4228 4229 func NewNavigateBuilder() *NavigateBuilder { 4230 builder := &NavigateBuilder{} 4231 return builder 4232 } 4233 4234 // pc 端主导航信息 4235 // 4236 // 示例值: 4237 func (builder *NavigateBuilder) Pc(pc *NavigateMeta) *NavigateBuilder { 4238 builder.pc = pc 4239 builder.pcFlag = true 4240 return builder 4241 } 4242 4243 // 移动端主导航信息 4244 // 4245 // 示例值: 4246 func (builder *NavigateBuilder) Mobile(mobile *NavigateMeta) *NavigateBuilder { 4247 builder.mobile = mobile 4248 builder.mobileFlag = true 4249 return builder 4250 } 4251 4252 func (builder *NavigateBuilder) Build() *Navigate { 4253 req := &Navigate{} 4254 if builder.pcFlag { 4255 req.Pc = builder.pc 4256 } 4257 if builder.mobileFlag { 4258 req.Mobile = builder.mobile 4259 } 4260 return req 4261 } 4262 4263 type NavigateMeta struct { 4264 Version *string `json:"version,omitempty"` // 主导航小程序版本号 4265 ImageUrl *string `json:"image_url,omitempty"` // 默认图片 url 4266 HoverImageUrl *string `json:"hover_image_url,omitempty"` // 选中态图片 url 4267 } 4268 4269 type NavigateMetaBuilder struct { 4270 version string // 主导航小程序版本号 4271 versionFlag bool 4272 imageUrl string // 默认图片 url 4273 imageUrlFlag bool 4274 hoverImageUrl string // 选中态图片 url 4275 hoverImageUrlFlag bool 4276 } 4277 4278 func NewNavigateMetaBuilder() *NavigateMetaBuilder { 4279 builder := &NavigateMetaBuilder{} 4280 return builder 4281 } 4282 4283 // 主导航小程序版本号 4284 // 4285 // 示例值:1.0.0 4286 func (builder *NavigateMetaBuilder) Version(version string) *NavigateMetaBuilder { 4287 builder.version = version 4288 builder.versionFlag = true 4289 return builder 4290 } 4291 4292 // 默认图片 url 4293 // 4294 // 示例值:https://www.example.com 4295 func (builder *NavigateMetaBuilder) ImageUrl(imageUrl string) *NavigateMetaBuilder { 4296 builder.imageUrl = imageUrl 4297 builder.imageUrlFlag = true 4298 return builder 4299 } 4300 4301 // 选中态图片 url 4302 // 4303 // 示例值:https://www.example.com 4304 func (builder *NavigateMetaBuilder) HoverImageUrl(hoverImageUrl string) *NavigateMetaBuilder { 4305 builder.hoverImageUrl = hoverImageUrl 4306 builder.hoverImageUrlFlag = true 4307 return builder 4308 } 4309 4310 func (builder *NavigateMetaBuilder) Build() *NavigateMeta { 4311 req := &NavigateMeta{} 4312 if builder.versionFlag { 4313 req.Version = &builder.version 4314 4315 } 4316 if builder.imageUrlFlag { 4317 req.ImageUrl = &builder.imageUrl 4318 4319 } 4320 if builder.hoverImageUrlFlag { 4321 req.HoverImageUrl = &builder.hoverImageUrl 4322 4323 } 4324 return req 4325 } 4326 4327 type PlusMenu struct { 4328 PcAppLink *string `json:"pc_app_link,omitempty"` // pc 端链接 4329 MobileAppLink *string `json:"mobile_app_link,omitempty"` // 移动端链接 4330 } 4331 4332 type PlusMenuBuilder struct { 4333 pcAppLink string // pc 端链接 4334 pcAppLinkFlag bool 4335 mobileAppLink string // 移动端链接 4336 mobileAppLinkFlag bool 4337 } 4338 4339 func NewPlusMenuBuilder() *PlusMenuBuilder { 4340 builder := &PlusMenuBuilder{} 4341 return builder 4342 } 4343 4344 // pc 端链接 4345 // 4346 // 示例值:https://www.example.com 4347 func (builder *PlusMenuBuilder) PcAppLink(pcAppLink string) *PlusMenuBuilder { 4348 builder.pcAppLink = pcAppLink 4349 builder.pcAppLinkFlag = true 4350 return builder 4351 } 4352 4353 // 移动端链接 4354 // 4355 // 示例值:https://www.example.com 4356 func (builder *PlusMenuBuilder) MobileAppLink(mobileAppLink string) *PlusMenuBuilder { 4357 builder.mobileAppLink = mobileAppLink 4358 builder.mobileAppLinkFlag = true 4359 return builder 4360 } 4361 4362 func (builder *PlusMenuBuilder) Build() *PlusMenu { 4363 req := &PlusMenu{} 4364 if builder.pcAppLinkFlag { 4365 req.PcAppLink = &builder.pcAppLink 4366 4367 } 4368 if builder.mobileAppLinkFlag { 4369 req.MobileAppLink = &builder.mobileAppLink 4370 4371 } 4372 return req 4373 } 4374 4375 type Scope struct { 4376 ScopeName *string `json:"scope_name,omitempty"` // 权限名称,形如 user.phone:readonly 4377 GrantStatus *int `json:"grant_status,omitempty"` // 租户应用权限授予状态 4378 } 4379 4380 type ScopeBuilder struct { 4381 scopeName string // 权限名称,形如 user.phone:readonly 4382 scopeNameFlag bool 4383 grantStatus int // 租户应用权限授予状态 4384 grantStatusFlag bool 4385 } 4386 4387 func NewScopeBuilder() *ScopeBuilder { 4388 builder := &ScopeBuilder{} 4389 return builder 4390 } 4391 4392 // 权限名称,形如 user.phone:readonly 4393 // 4394 // 示例值: 4395 func (builder *ScopeBuilder) ScopeName(scopeName string) *ScopeBuilder { 4396 builder.scopeName = scopeName 4397 builder.scopeNameFlag = true 4398 return builder 4399 } 4400 4401 // 租户应用权限授予状态 4402 // 4403 // 示例值: 4404 func (builder *ScopeBuilder) GrantStatus(grantStatus int) *ScopeBuilder { 4405 builder.grantStatus = grantStatus 4406 builder.grantStatusFlag = true 4407 return builder 4408 } 4409 4410 func (builder *ScopeBuilder) Build() *Scope { 4411 req := &Scope{} 4412 if builder.scopeNameFlag { 4413 req.ScopeName = &builder.scopeName 4414 4415 } 4416 if builder.grantStatusFlag { 4417 req.GrantStatus = &builder.grantStatus 4418 4419 } 4420 return req 4421 } 4422 4423 type UsageOverviewItem struct { 4424 PageView *string `json:"page_view,omitempty"` // 应用使用pv 4425 UniqueVisitor *string `json:"unique_visitor,omitempty"` // 应用使用uv 4426 DepartmentId *string `json:"department_id,omitempty"` // 部门号 4427 } 4428 4429 type UsageOverviewItemBuilder struct { 4430 pageView string // 应用使用pv 4431 pageViewFlag bool 4432 uniqueVisitor string // 应用使用uv 4433 uniqueVisitorFlag bool 4434 departmentId string // 部门号 4435 departmentIdFlag bool 4436 } 4437 4438 func NewUsageOverviewItemBuilder() *UsageOverviewItemBuilder { 4439 builder := &UsageOverviewItemBuilder{} 4440 return builder 4441 } 4442 4443 // 应用使用pv 4444 // 4445 // 示例值: 4446 func (builder *UsageOverviewItemBuilder) PageView(pageView string) *UsageOverviewItemBuilder { 4447 builder.pageView = pageView 4448 builder.pageViewFlag = true 4449 return builder 4450 } 4451 4452 // 应用使用uv 4453 // 4454 // 示例值: 4455 func (builder *UsageOverviewItemBuilder) UniqueVisitor(uniqueVisitor string) *UsageOverviewItemBuilder { 4456 builder.uniqueVisitor = uniqueVisitor 4457 builder.uniqueVisitorFlag = true 4458 return builder 4459 } 4460 4461 // 部门号 4462 // 4463 // 示例值: 4464 func (builder *UsageOverviewItemBuilder) DepartmentId(departmentId string) *UsageOverviewItemBuilder { 4465 builder.departmentId = departmentId 4466 builder.departmentIdFlag = true 4467 return builder 4468 } 4469 4470 func (builder *UsageOverviewItemBuilder) Build() *UsageOverviewItem { 4471 req := &UsageOverviewItem{} 4472 if builder.pageViewFlag { 4473 req.PageView = &builder.pageView 4474 4475 } 4476 if builder.uniqueVisitorFlag { 4477 req.UniqueVisitor = &builder.uniqueVisitor 4478 4479 } 4480 if builder.departmentIdFlag { 4481 req.DepartmentId = &builder.departmentId 4482 4483 } 4484 return req 4485 } 4486 4487 type UsageTrendItem struct { 4488 Timestamp *string `json:"timestamp,omitempty"` // 时间戳 4489 PageView *string `json:"page_view,omitempty"` // 应用使用pv 4490 UniqueVisitor *string `json:"unique_visitor,omitempty"` // 应用使用uv 4491 } 4492 4493 type UsageTrendItemBuilder struct { 4494 timestamp string // 时间戳 4495 timestampFlag bool 4496 pageView string // 应用使用pv 4497 pageViewFlag bool 4498 uniqueVisitor string // 应用使用uv 4499 uniqueVisitorFlag bool 4500 } 4501 4502 func NewUsageTrendItemBuilder() *UsageTrendItemBuilder { 4503 builder := &UsageTrendItemBuilder{} 4504 return builder 4505 } 4506 4507 // 时间戳 4508 // 4509 // 示例值: 4510 func (builder *UsageTrendItemBuilder) Timestamp(timestamp string) *UsageTrendItemBuilder { 4511 builder.timestamp = timestamp 4512 builder.timestampFlag = true 4513 return builder 4514 } 4515 4516 // 应用使用pv 4517 // 4518 // 示例值: 4519 func (builder *UsageTrendItemBuilder) PageView(pageView string) *UsageTrendItemBuilder { 4520 builder.pageView = pageView 4521 builder.pageViewFlag = true 4522 return builder 4523 } 4524 4525 // 应用使用uv 4526 // 4527 // 示例值: 4528 func (builder *UsageTrendItemBuilder) UniqueVisitor(uniqueVisitor string) *UsageTrendItemBuilder { 4529 builder.uniqueVisitor = uniqueVisitor 4530 builder.uniqueVisitorFlag = true 4531 return builder 4532 } 4533 4534 func (builder *UsageTrendItemBuilder) Build() *UsageTrendItem { 4535 req := &UsageTrendItem{} 4536 if builder.timestampFlag { 4537 req.Timestamp = &builder.timestamp 4538 4539 } 4540 if builder.pageViewFlag { 4541 req.PageView = &builder.pageView 4542 4543 } 4544 if builder.uniqueVisitorFlag { 4545 req.UniqueVisitor = &builder.uniqueVisitor 4546 4547 } 4548 return req 4549 } 4550 4551 type UsageUser struct { 4552 UserId *string `json:"user_id,omitempty"` // 用户id 4553 } 4554 4555 type UsageUserBuilder struct { 4556 userId string // 用户id 4557 userIdFlag bool 4558 } 4559 4560 func NewUsageUserBuilder() *UsageUserBuilder { 4561 builder := &UsageUserBuilder{} 4562 return builder 4563 } 4564 4565 // 用户id 4566 // 4567 // 示例值: 4568 func (builder *UsageUserBuilder) UserId(userId string) *UsageUserBuilder { 4569 builder.userId = userId 4570 builder.userIdFlag = true 4571 return builder 4572 } 4573 4574 func (builder *UsageUserBuilder) Build() *UsageUser { 4575 req := &UsageUser{} 4576 if builder.userIdFlag { 4577 req.UserId = &builder.userId 4578 4579 } 4580 return req 4581 } 4582 4583 type User struct { 4584 UserId *UserId `json:"user_id,omitempty"` // user_id 4585 } 4586 4587 type UserBuilder struct { 4588 userId *UserId // user_id 4589 userIdFlag bool 4590 } 4591 4592 func NewUserBuilder() *UserBuilder { 4593 builder := &UserBuilder{} 4594 return builder 4595 } 4596 4597 // user_id 4598 // 4599 // 示例值: 4600 func (builder *UserBuilder) UserId(userId *UserId) *UserBuilder { 4601 builder.userId = userId 4602 builder.userIdFlag = true 4603 return builder 4604 } 4605 4606 func (builder *UserBuilder) Build() *User { 4607 req := &User{} 4608 if builder.userIdFlag { 4609 req.UserId = builder.userId 4610 } 4611 return req 4612 } 4613 4614 type UserId struct { 4615 UserId *string `json:"user_id,omitempty"` // 4616 OpenId *string `json:"open_id,omitempty"` // 4617 UnionId *string `json:"union_id,omitempty"` // 4618 } 4619 4620 type UserIdBuilder struct { 4621 userId string // 4622 userIdFlag bool 4623 openId string // 4624 openIdFlag bool 4625 unionId string // 4626 unionIdFlag bool 4627 } 4628 4629 func NewUserIdBuilder() *UserIdBuilder { 4630 builder := &UserIdBuilder{} 4631 return builder 4632 } 4633 4634 // 4635 // 4636 // 示例值: 4637 func (builder *UserIdBuilder) UserId(userId string) *UserIdBuilder { 4638 builder.userId = userId 4639 builder.userIdFlag = true 4640 return builder 4641 } 4642 4643 // 4644 // 4645 // 示例值: 4646 func (builder *UserIdBuilder) OpenId(openId string) *UserIdBuilder { 4647 builder.openId = openId 4648 builder.openIdFlag = true 4649 return builder 4650 } 4651 4652 // 4653 // 4654 // 示例值: 4655 func (builder *UserIdBuilder) UnionId(unionId string) *UserIdBuilder { 4656 builder.unionId = unionId 4657 builder.unionIdFlag = true 4658 return builder 4659 } 4660 4661 func (builder *UserIdBuilder) Build() *UserId { 4662 req := &UserId{} 4663 if builder.userIdFlag { 4664 req.UserId = &builder.userId 4665 4666 } 4667 if builder.openIdFlag { 4668 req.OpenId = &builder.openId 4669 4670 } 4671 if builder.unionIdFlag { 4672 req.UnionId = &builder.unionId 4673 4674 } 4675 return req 4676 } 4677 4678 type WebApp struct { 4679 PcUrl *string `json:"pc_url,omitempty"` // pc 端 url 4680 MobileUrl *string `json:"mobile_url,omitempty"` // 移动端 url 4681 } 4682 4683 type WebAppBuilder struct { 4684 pcUrl string // pc 端 url 4685 pcUrlFlag bool 4686 mobileUrl string // 移动端 url 4687 mobileUrlFlag bool 4688 } 4689 4690 func NewWebAppBuilder() *WebAppBuilder { 4691 builder := &WebAppBuilder{} 4692 return builder 4693 } 4694 4695 // pc 端 url 4696 // 4697 // 示例值:https://www.example.com 4698 func (builder *WebAppBuilder) PcUrl(pcUrl string) *WebAppBuilder { 4699 builder.pcUrl = pcUrl 4700 builder.pcUrlFlag = true 4701 return builder 4702 } 4703 4704 // 移动端 url 4705 // 4706 // 示例值:https://www.example.com 4707 func (builder *WebAppBuilder) MobileUrl(mobileUrl string) *WebAppBuilder { 4708 builder.mobileUrl = mobileUrl 4709 builder.mobileUrlFlag = true 4710 return builder 4711 } 4712 4713 func (builder *WebAppBuilder) Build() *WebApp { 4714 req := &WebApp{} 4715 if builder.pcUrlFlag { 4716 req.PcUrl = &builder.pcUrl 4717 4718 } 4719 if builder.mobileUrlFlag { 4720 req.MobileUrl = &builder.mobileUrl 4721 4722 } 4723 return req 4724 } 4725 4726 type Widget struct { 4727 } 4728 4729 type WorkplaceWidget struct { 4730 MinLarkVersion *string `json:"min_lark_version,omitempty"` // 最低兼容 lark 版本号 4731 } 4732 4733 type WorkplaceWidgetBuilder struct { 4734 minLarkVersion string // 最低兼容 lark 版本号 4735 minLarkVersionFlag bool 4736 } 4737 4738 func NewWorkplaceWidgetBuilder() *WorkplaceWidgetBuilder { 4739 builder := &WorkplaceWidgetBuilder{} 4740 return builder 4741 } 4742 4743 // 最低兼容 lark 版本号 4744 // 4745 // 示例值:1.0.0 4746 func (builder *WorkplaceWidgetBuilder) MinLarkVersion(minLarkVersion string) *WorkplaceWidgetBuilder { 4747 builder.minLarkVersion = minLarkVersion 4748 builder.minLarkVersionFlag = true 4749 return builder 4750 } 4751 4752 func (builder *WorkplaceWidgetBuilder) Build() *WorkplaceWidget { 4753 req := &WorkplaceWidget{} 4754 if builder.minLarkVersionFlag { 4755 req.MinLarkVersion = &builder.minLarkVersion 4756 4757 } 4758 return req 4759 } 4760 4761 type GetApplicationReqBuilder struct { 4762 apiReq *larkcore.ApiReq 4763 } 4764 4765 func NewGetApplicationReqBuilder() *GetApplicationReqBuilder { 4766 builder := &GetApplicationReqBuilder{} 4767 builder.apiReq = &larkcore.ApiReq{ 4768 PathParams: larkcore.PathParams{}, 4769 QueryParams: larkcore.QueryParams{}, 4770 } 4771 return builder 4772 } 4773 4774 // 应用的 app_id,需要查询其他应用信息时,必须申请[获取应用信息](/ssl:ttdoc/ukTMukTMukTM/uQjN3QjL0YzN04CN2cDN)权限,仅查询本应用信息时,可填入 "me" 或者应用自身 app_id 4775 // 4776 // 示例值:cli_9b445f5258795107 4777 func (builder *GetApplicationReqBuilder) AppId(appId string) *GetApplicationReqBuilder { 4778 builder.apiReq.PathParams.Set("app_id", fmt.Sprint(appId)) 4779 return builder 4780 } 4781 4782 // 指定获取应用在该语言下的信息 4783 // 4784 // 示例值:zh_cn 4785 func (builder *GetApplicationReqBuilder) Lang(lang string) *GetApplicationReqBuilder { 4786 builder.apiReq.QueryParams.Set("lang", fmt.Sprint(lang)) 4787 return builder 4788 } 4789 4790 // 此次调用中使用的用户ID的类型 4791 // 4792 // 示例值: 4793 func (builder *GetApplicationReqBuilder) UserIdType(userIdType string) *GetApplicationReqBuilder { 4794 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 4795 return builder 4796 } 4797 4798 func (builder *GetApplicationReqBuilder) Build() *GetApplicationReq { 4799 req := &GetApplicationReq{} 4800 req.apiReq = &larkcore.ApiReq{} 4801 req.apiReq.PathParams = builder.apiReq.PathParams 4802 req.apiReq.QueryParams = builder.apiReq.QueryParams 4803 return req 4804 } 4805 4806 type GetApplicationReq struct { 4807 apiReq *larkcore.ApiReq 4808 } 4809 4810 type GetApplicationRespData struct { 4811 App *Application `json:"app,omitempty"` // 应用数据 4812 } 4813 4814 type GetApplicationResp struct { 4815 *larkcore.ApiResp `json:"-"` 4816 larkcore.CodeError 4817 Data *GetApplicationRespData `json:"data"` // 业务数据 4818 } 4819 4820 func (resp *GetApplicationResp) Success() bool { 4821 return resp.Code == 0 4822 } 4823 4824 type PatchApplicationReqBuilder struct { 4825 apiReq *larkcore.ApiReq 4826 application *Application 4827 } 4828 4829 func NewPatchApplicationReqBuilder() *PatchApplicationReqBuilder { 4830 builder := &PatchApplicationReqBuilder{} 4831 builder.apiReq = &larkcore.ApiReq{ 4832 PathParams: larkcore.PathParams{}, 4833 QueryParams: larkcore.QueryParams{}, 4834 } 4835 return builder 4836 } 4837 4838 // 应用的 id 4839 // 4840 // 示例值:cli_9b445f5258795107 4841 func (builder *PatchApplicationReqBuilder) AppId(appId string) *PatchApplicationReqBuilder { 4842 builder.apiReq.PathParams.Set("app_id", fmt.Sprint(appId)) 4843 return builder 4844 } 4845 4846 // 指定返回的语言 4847 // 4848 // 示例值:zh_cn 4849 func (builder *PatchApplicationReqBuilder) Lang(lang string) *PatchApplicationReqBuilder { 4850 builder.apiReq.QueryParams.Set("lang", fmt.Sprint(lang)) 4851 return builder 4852 } 4853 4854 // 更新应用的分组信息(分组会影响应用在工作台中的分类情况,请谨慎更新) 4855 func (builder *PatchApplicationReqBuilder) Application(application *Application) *PatchApplicationReqBuilder { 4856 builder.application = application 4857 return builder 4858 } 4859 4860 func (builder *PatchApplicationReqBuilder) Build() *PatchApplicationReq { 4861 req := &PatchApplicationReq{} 4862 req.apiReq = &larkcore.ApiReq{} 4863 req.apiReq.PathParams = builder.apiReq.PathParams 4864 req.apiReq.QueryParams = builder.apiReq.QueryParams 4865 req.apiReq.Body = builder.application 4866 return req 4867 } 4868 4869 type PatchApplicationReq struct { 4870 apiReq *larkcore.ApiReq 4871 Application *Application `body:""` 4872 } 4873 4874 type PatchApplicationResp struct { 4875 *larkcore.ApiResp `json:"-"` 4876 larkcore.CodeError 4877 } 4878 4879 func (resp *PatchApplicationResp) Success() bool { 4880 return resp.Code == 0 4881 } 4882 4883 type UnderauditlistApplicationReqBuilder struct { 4884 apiReq *larkcore.ApiReq 4885 limit int // 最大返回多少记录,当使用迭代器访问时才有效 4886 } 4887 4888 func NewUnderauditlistApplicationReqBuilder() *UnderauditlistApplicationReqBuilder { 4889 builder := &UnderauditlistApplicationReqBuilder{} 4890 builder.apiReq = &larkcore.ApiReq{ 4891 PathParams: larkcore.PathParams{}, 4892 QueryParams: larkcore.QueryParams{}, 4893 } 4894 return builder 4895 } 4896 4897 // 最大返回多少记录,当使用迭代器访问时才有效 4898 func (builder *UnderauditlistApplicationReqBuilder) Limit(limit int) *UnderauditlistApplicationReqBuilder { 4899 builder.limit = limit 4900 return builder 4901 } 4902 4903 // 指定返回的语言 4904 // 4905 // 示例值:zh_cn 4906 func (builder *UnderauditlistApplicationReqBuilder) Lang(lang string) *UnderauditlistApplicationReqBuilder { 4907 builder.apiReq.QueryParams.Set("lang", fmt.Sprint(lang)) 4908 return builder 4909 } 4910 4911 // 4912 // 4913 // 示例值:new-e3c5a0627cdf0c2e057da7257b90376a 4914 func (builder *UnderauditlistApplicationReqBuilder) PageToken(pageToken string) *UnderauditlistApplicationReqBuilder { 4915 builder.apiReq.QueryParams.Set("page_token", fmt.Sprint(pageToken)) 4916 return builder 4917 } 4918 4919 // 4920 // 4921 // 示例值:10 4922 func (builder *UnderauditlistApplicationReqBuilder) PageSize(pageSize int) *UnderauditlistApplicationReqBuilder { 4923 builder.apiReq.QueryParams.Set("page_size", fmt.Sprint(pageSize)) 4924 return builder 4925 } 4926 4927 // 此次调用中使用的用户ID的类型 4928 // 4929 // 示例值: 4930 func (builder *UnderauditlistApplicationReqBuilder) UserIdType(userIdType string) *UnderauditlistApplicationReqBuilder { 4931 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 4932 return builder 4933 } 4934 4935 func (builder *UnderauditlistApplicationReqBuilder) Build() *UnderauditlistApplicationReq { 4936 req := &UnderauditlistApplicationReq{} 4937 req.apiReq = &larkcore.ApiReq{} 4938 req.Limit = builder.limit 4939 req.apiReq.QueryParams = builder.apiReq.QueryParams 4940 return req 4941 } 4942 4943 type UnderauditlistApplicationReq struct { 4944 apiReq *larkcore.ApiReq 4945 Limit int // 最多返回多少记录,只有在使用迭代器访问时,才有效 4946 4947 } 4948 4949 type UnderauditlistApplicationRespData struct { 4950 Items []*Application `json:"items,omitempty"` // 待审核应用列表 4951 HasMore *bool `json:"has_more,omitempty"` // 是否有下一页数据 4952 PageToken *string `json:"page_token,omitempty"` // 下一页分页的token 4953 } 4954 4955 type UnderauditlistApplicationResp struct { 4956 *larkcore.ApiResp `json:"-"` 4957 larkcore.CodeError 4958 Data *UnderauditlistApplicationRespData `json:"data"` // 业务数据 4959 } 4960 4961 func (resp *UnderauditlistApplicationResp) Success() bool { 4962 return resp.Code == 0 4963 } 4964 4965 type OverviewApplicationAppUsageReqBodyBuilder struct { 4966 date string // 查询日期,格式为yyyy-mm-dd,若cycle_type为1,date可以为任何自然日;若cycle_type为2,则输入的date必须为周一; 若cycle_type为3,则输入的date必须为每月1号 4967 dateFlag bool 4968 cycleType int // 活跃周期的统计类型 4969 cycleTypeFlag bool 4970 departmentId string // 查询的部门id,获取方法可参考[部门ID概述](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/contact-v3/department/field-overview);- 若部门id为空,则返回当前租户的使用数据;若填写部门id,则返回当前部门的使用数据(包含子部门的用户); ;- 若路径参数中department_id_type为空或者为open_department_id,则此处应该填写部门的 open_department_id;若路径参数中department_id_type为department_id,则此处应该填写部门的 department_id。 4971 departmentIdFlag bool 4972 ability string // 能力类型,按能力类型进行筛选,返回对应能力的活跃数据 4973 abilityFlag bool 4974 } 4975 4976 func NewOverviewApplicationAppUsageReqBodyBuilder() *OverviewApplicationAppUsageReqBodyBuilder { 4977 builder := &OverviewApplicationAppUsageReqBodyBuilder{} 4978 return builder 4979 } 4980 4981 // 查询日期,格式为yyyy-mm-dd,若cycle_type为1,date可以为任何自然日;若cycle_type为2,则输入的date必须为周一; 若cycle_type为3,则输入的date必须为每月1号 4982 // 4983 //示例值:2021-07-08 4984 func (builder *OverviewApplicationAppUsageReqBodyBuilder) Date(date string) *OverviewApplicationAppUsageReqBodyBuilder { 4985 builder.date = date 4986 builder.dateFlag = true 4987 return builder 4988 } 4989 4990 // 活跃周期的统计类型 4991 // 4992 //示例值:1 4993 func (builder *OverviewApplicationAppUsageReqBodyBuilder) CycleType(cycleType int) *OverviewApplicationAppUsageReqBodyBuilder { 4994 builder.cycleType = cycleType 4995 builder.cycleTypeFlag = true 4996 return builder 4997 } 4998 4999 // 查询的部门id,获取方法可参考[部门ID概述](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/contact-v3/department/field-overview);- 若部门id为空,则返回当前租户的使用数据;若填写部门id,则返回当前部门的使用数据(包含子部门的用户); ;- 若路径参数中department_id_type为空或者为open_department_id,则此处应该填写部门的 open_department_id;若路径参数中department_id_type为department_id,则此处应该填写部门的 department_id。 5000 // 5001 //示例值:od-4e6ac4d14bcd5071a37a39de902c7141 5002 func (builder *OverviewApplicationAppUsageReqBodyBuilder) DepartmentId(departmentId string) *OverviewApplicationAppUsageReqBodyBuilder { 5003 builder.departmentId = departmentId 5004 builder.departmentIdFlag = true 5005 return builder 5006 } 5007 5008 // 能力类型,按能力类型进行筛选,返回对应能力的活跃数据 5009 // 5010 //示例值:app 5011 func (builder *OverviewApplicationAppUsageReqBodyBuilder) Ability(ability string) *OverviewApplicationAppUsageReqBodyBuilder { 5012 builder.ability = ability 5013 builder.abilityFlag = true 5014 return builder 5015 } 5016 5017 func (builder *OverviewApplicationAppUsageReqBodyBuilder) Build() *OverviewApplicationAppUsageReqBody { 5018 req := &OverviewApplicationAppUsageReqBody{} 5019 if builder.dateFlag { 5020 req.Date = &builder.date 5021 } 5022 if builder.cycleTypeFlag { 5023 req.CycleType = &builder.cycleType 5024 } 5025 if builder.departmentIdFlag { 5026 req.DepartmentId = &builder.departmentId 5027 } 5028 if builder.abilityFlag { 5029 req.Ability = &builder.ability 5030 } 5031 return req 5032 } 5033 5034 type OverviewApplicationAppUsagePathReqBodyBuilder struct { 5035 date string // 查询日期,格式为yyyy-mm-dd,若cycle_type为1,date可以为任何自然日;若cycle_type为2,则输入的date必须为周一; 若cycle_type为3,则输入的date必须为每月1号 5036 dateFlag bool 5037 cycleType int // 活跃周期的统计类型 5038 cycleTypeFlag bool 5039 departmentId string // 查询的部门id,获取方法可参考[部门ID概述](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/contact-v3/department/field-overview);- 若部门id为空,则返回当前租户的使用数据;若填写部门id,则返回当前部门的使用数据(包含子部门的用户); ;- 若路径参数中department_id_type为空或者为open_department_id,则此处应该填写部门的 open_department_id;若路径参数中department_id_type为department_id,则此处应该填写部门的 department_id。 5040 departmentIdFlag bool 5041 ability string // 能力类型,按能力类型进行筛选,返回对应能力的活跃数据 5042 abilityFlag bool 5043 } 5044 5045 func NewOverviewApplicationAppUsagePathReqBodyBuilder() *OverviewApplicationAppUsagePathReqBodyBuilder { 5046 builder := &OverviewApplicationAppUsagePathReqBodyBuilder{} 5047 return builder 5048 } 5049 5050 // 查询日期,格式为yyyy-mm-dd,若cycle_type为1,date可以为任何自然日;若cycle_type为2,则输入的date必须为周一; 若cycle_type为3,则输入的date必须为每月1号 5051 // 5052 // 示例值:2021-07-08 5053 func (builder *OverviewApplicationAppUsagePathReqBodyBuilder) Date(date string) *OverviewApplicationAppUsagePathReqBodyBuilder { 5054 builder.date = date 5055 builder.dateFlag = true 5056 return builder 5057 } 5058 5059 // 活跃周期的统计类型 5060 // 5061 // 示例值:1 5062 func (builder *OverviewApplicationAppUsagePathReqBodyBuilder) CycleType(cycleType int) *OverviewApplicationAppUsagePathReqBodyBuilder { 5063 builder.cycleType = cycleType 5064 builder.cycleTypeFlag = true 5065 return builder 5066 } 5067 5068 // 查询的部门id,获取方法可参考[部门ID概述](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/contact-v3/department/field-overview);- 若部门id为空,则返回当前租户的使用数据;若填写部门id,则返回当前部门的使用数据(包含子部门的用户); ;- 若路径参数中department_id_type为空或者为open_department_id,则此处应该填写部门的 open_department_id;若路径参数中department_id_type为department_id,则此处应该填写部门的 department_id。 5069 // 5070 // 示例值:od-4e6ac4d14bcd5071a37a39de902c7141 5071 func (builder *OverviewApplicationAppUsagePathReqBodyBuilder) DepartmentId(departmentId string) *OverviewApplicationAppUsagePathReqBodyBuilder { 5072 builder.departmentId = departmentId 5073 builder.departmentIdFlag = true 5074 return builder 5075 } 5076 5077 // 能力类型,按能力类型进行筛选,返回对应能力的活跃数据 5078 // 5079 // 示例值:app 5080 func (builder *OverviewApplicationAppUsagePathReqBodyBuilder) Ability(ability string) *OverviewApplicationAppUsagePathReqBodyBuilder { 5081 builder.ability = ability 5082 builder.abilityFlag = true 5083 return builder 5084 } 5085 5086 func (builder *OverviewApplicationAppUsagePathReqBodyBuilder) Build() (*OverviewApplicationAppUsageReqBody, error) { 5087 req := &OverviewApplicationAppUsageReqBody{} 5088 if builder.dateFlag { 5089 req.Date = &builder.date 5090 } 5091 if builder.cycleTypeFlag { 5092 req.CycleType = &builder.cycleType 5093 } 5094 if builder.departmentIdFlag { 5095 req.DepartmentId = &builder.departmentId 5096 } 5097 if builder.abilityFlag { 5098 req.Ability = &builder.ability 5099 } 5100 return req, nil 5101 } 5102 5103 type OverviewApplicationAppUsageReqBuilder struct { 5104 apiReq *larkcore.ApiReq 5105 body *OverviewApplicationAppUsageReqBody 5106 } 5107 5108 func NewOverviewApplicationAppUsageReqBuilder() *OverviewApplicationAppUsageReqBuilder { 5109 builder := &OverviewApplicationAppUsageReqBuilder{} 5110 builder.apiReq = &larkcore.ApiReq{ 5111 PathParams: larkcore.PathParams{}, 5112 QueryParams: larkcore.QueryParams{}, 5113 } 5114 return builder 5115 } 5116 5117 // 目标应用 ID 5118 // 5119 // 示例值:cli_9f115af860f7901b 5120 func (builder *OverviewApplicationAppUsageReqBuilder) AppId(appId string) *OverviewApplicationAppUsageReqBuilder { 5121 builder.apiReq.PathParams.Set("app_id", fmt.Sprint(appId)) 5122 return builder 5123 } 5124 5125 // 调用中使用的部门ID的类型 5126 // 5127 // 示例值:open_department_id 5128 func (builder *OverviewApplicationAppUsageReqBuilder) DepartmentIdType(departmentIdType string) *OverviewApplicationAppUsageReqBuilder { 5129 builder.apiReq.QueryParams.Set("department_id_type", fmt.Sprint(departmentIdType)) 5130 return builder 5131 } 5132 5133 // 查看应用在某一天/某一周/某一个月的使用数据,可以查看租户整体对应用的使用情况,也可以分部门查看。 5134 func (builder *OverviewApplicationAppUsageReqBuilder) Body(body *OverviewApplicationAppUsageReqBody) *OverviewApplicationAppUsageReqBuilder { 5135 builder.body = body 5136 return builder 5137 } 5138 5139 func (builder *OverviewApplicationAppUsageReqBuilder) Build() *OverviewApplicationAppUsageReq { 5140 req := &OverviewApplicationAppUsageReq{} 5141 req.apiReq = &larkcore.ApiReq{} 5142 req.apiReq.PathParams = builder.apiReq.PathParams 5143 req.apiReq.QueryParams = builder.apiReq.QueryParams 5144 req.apiReq.Body = builder.body 5145 return req 5146 } 5147 5148 type OverviewApplicationAppUsageReqBody struct { 5149 Date *string `json:"date,omitempty"` // 查询日期,格式为yyyy-mm-dd,若cycle_type为1,date可以为任何自然日;若cycle_type为2,则输入的date必须为周一; 若cycle_type为3,则输入的date必须为每月1号 5150 CycleType *int `json:"cycle_type,omitempty"` // 活跃周期的统计类型 5151 DepartmentId *string `json:"department_id,omitempty"` // 查询的部门id,获取方法可参考[部门ID概述](/ssl:ttdoc/uAjLw4CM/ukTMukTMukTM/reference/contact-v3/department/field-overview);- 若部门id为空,则返回当前租户的使用数据;若填写部门id,则返回当前部门的使用数据(包含子部门的用户); ;- 若路径参数中department_id_type为空或者为open_department_id,则此处应该填写部门的 open_department_id;若路径参数中department_id_type为department_id,则此处应该填写部门的 department_id。 5152 Ability *string `json:"ability,omitempty"` // 能力类型,按能力类型进行筛选,返回对应能力的活跃数据 5153 } 5154 5155 type OverviewApplicationAppUsageReq struct { 5156 apiReq *larkcore.ApiReq 5157 Body *OverviewApplicationAppUsageReqBody `body:""` 5158 } 5159 5160 type OverviewApplicationAppUsageRespData struct { 5161 Items []*ApplicationAppUsage `json:"items,omitempty"` // 员工使用应用概览数据 5162 } 5163 5164 type OverviewApplicationAppUsageResp struct { 5165 *larkcore.ApiResp `json:"-"` 5166 larkcore.CodeError 5167 Data *OverviewApplicationAppUsageRespData `json:"data"` // 业务数据 5168 } 5169 5170 func (resp *OverviewApplicationAppUsageResp) Success() bool { 5171 return resp.Code == 0 5172 } 5173 5174 type GetApplicationAppVersionReqBuilder struct { 5175 apiReq *larkcore.ApiReq 5176 } 5177 5178 func NewGetApplicationAppVersionReqBuilder() *GetApplicationAppVersionReqBuilder { 5179 builder := &GetApplicationAppVersionReqBuilder{} 5180 builder.apiReq = &larkcore.ApiReq{ 5181 PathParams: larkcore.PathParams{}, 5182 QueryParams: larkcore.QueryParams{}, 5183 } 5184 return builder 5185 } 5186 5187 // 应用的 app_id,需要查询其他应用版本信息时,必须申请[获取应用版本信息](/ssl:ttdoc/ukTMukTMukTM/uQjN3QjL0YzN04CN2cDN)权限,仅查询本应用版本信息时,可填入 "me" 或者应用自身 app_id 5188 // 5189 // 示例值:cli_9f3ca975326b501b 5190 func (builder *GetApplicationAppVersionReqBuilder) AppId(appId string) *GetApplicationAppVersionReqBuilder { 5191 builder.apiReq.PathParams.Set("app_id", fmt.Sprint(appId)) 5192 return builder 5193 } 5194 5195 // 唯一标识应用版本的 ID 5196 // 5197 // 示例值:oav_d317f090b7258ad0372aa53963cda70d 5198 func (builder *GetApplicationAppVersionReqBuilder) VersionId(versionId string) *GetApplicationAppVersionReqBuilder { 5199 builder.apiReq.PathParams.Set("version_id", fmt.Sprint(versionId)) 5200 return builder 5201 } 5202 5203 // 应用信息的语言版本 5204 // 5205 // 示例值:zh_cn 5206 func (builder *GetApplicationAppVersionReqBuilder) Lang(lang string) *GetApplicationAppVersionReqBuilder { 5207 builder.apiReq.QueryParams.Set("lang", fmt.Sprint(lang)) 5208 return builder 5209 } 5210 5211 // 此次调用中使用的用户ID的类型 5212 // 5213 // 示例值: 5214 func (builder *GetApplicationAppVersionReqBuilder) UserIdType(userIdType string) *GetApplicationAppVersionReqBuilder { 5215 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 5216 return builder 5217 } 5218 5219 func (builder *GetApplicationAppVersionReqBuilder) Build() *GetApplicationAppVersionReq { 5220 req := &GetApplicationAppVersionReq{} 5221 req.apiReq = &larkcore.ApiReq{} 5222 req.apiReq.PathParams = builder.apiReq.PathParams 5223 req.apiReq.QueryParams = builder.apiReq.QueryParams 5224 return req 5225 } 5226 5227 type GetApplicationAppVersionReq struct { 5228 apiReq *larkcore.ApiReq 5229 } 5230 5231 type GetApplicationAppVersionRespData struct { 5232 AppVersion *ApplicationAppVersion `json:"app_version,omitempty"` // 应用版本信息 5233 } 5234 5235 type GetApplicationAppVersionResp struct { 5236 *larkcore.ApiResp `json:"-"` 5237 larkcore.CodeError 5238 Data *GetApplicationAppVersionRespData `json:"data"` // 业务数据 5239 } 5240 5241 func (resp *GetApplicationAppVersionResp) Success() bool { 5242 return resp.Code == 0 5243 } 5244 5245 type PatchApplicationAppVersionReqBuilder struct { 5246 apiReq *larkcore.ApiReq 5247 applicationAppVersion *ApplicationAppVersion 5248 } 5249 5250 func NewPatchApplicationAppVersionReqBuilder() *PatchApplicationAppVersionReqBuilder { 5251 builder := &PatchApplicationAppVersionReqBuilder{} 5252 builder.apiReq = &larkcore.ApiReq{ 5253 PathParams: larkcore.PathParams{}, 5254 QueryParams: larkcore.QueryParams{}, 5255 } 5256 return builder 5257 } 5258 5259 // 应用 id 5260 // 5261 // 示例值:cli_9f3ca975326b501b 5262 func (builder *PatchApplicationAppVersionReqBuilder) AppId(appId string) *PatchApplicationAppVersionReqBuilder { 5263 builder.apiReq.PathParams.Set("app_id", fmt.Sprint(appId)) 5264 return builder 5265 } 5266 5267 // 唯一标识应用版本的 ID 5268 // 5269 // 示例值:oav_d317f090b7258ad0372aa53963cda70d 5270 func (builder *PatchApplicationAppVersionReqBuilder) VersionId(versionId string) *PatchApplicationAppVersionReqBuilder { 5271 builder.apiReq.PathParams.Set("version_id", fmt.Sprint(versionId)) 5272 return builder 5273 } 5274 5275 // 此次调用中使用的用户ID的类型 5276 // 5277 // 示例值: 5278 func (builder *PatchApplicationAppVersionReqBuilder) UserIdType(userIdType string) *PatchApplicationAppVersionReqBuilder { 5279 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 5280 return builder 5281 } 5282 5283 // 操作者的 open_id 5284 // 5285 // 示例值:ou_4065981088f8ef67a504ba8bd6b24d85 5286 func (builder *PatchApplicationAppVersionReqBuilder) OperatorId(operatorId string) *PatchApplicationAppVersionReqBuilder { 5287 builder.apiReq.QueryParams.Set("operator_id", fmt.Sprint(operatorId)) 5288 return builder 5289 } 5290 5291 // 当修改版本状态为被驳回时,这一项必填 5292 // 5293 // 示例值:拒绝理由 5294 func (builder *PatchApplicationAppVersionReqBuilder) RejectReason(rejectReason string) *PatchApplicationAppVersionReqBuilder { 5295 builder.apiReq.QueryParams.Set("reject_reason", fmt.Sprint(rejectReason)) 5296 return builder 5297 } 5298 5299 // 通过接口来更新应用版本的审核结果:通过后应用可以直接上架;拒绝后则开发者可以看到拒绝理由,并在修改后再次申请发布。 5300 func (builder *PatchApplicationAppVersionReqBuilder) ApplicationAppVersion(applicationAppVersion *ApplicationAppVersion) *PatchApplicationAppVersionReqBuilder { 5301 builder.applicationAppVersion = applicationAppVersion 5302 return builder 5303 } 5304 5305 func (builder *PatchApplicationAppVersionReqBuilder) Build() *PatchApplicationAppVersionReq { 5306 req := &PatchApplicationAppVersionReq{} 5307 req.apiReq = &larkcore.ApiReq{} 5308 req.apiReq.PathParams = builder.apiReq.PathParams 5309 req.apiReq.QueryParams = builder.apiReq.QueryParams 5310 req.apiReq.Body = builder.applicationAppVersion 5311 return req 5312 } 5313 5314 type PatchApplicationAppVersionReq struct { 5315 apiReq *larkcore.ApiReq 5316 ApplicationAppVersion *ApplicationAppVersion `body:""` 5317 } 5318 5319 type PatchApplicationAppVersionResp struct { 5320 *larkcore.ApiResp `json:"-"` 5321 larkcore.CodeError 5322 } 5323 5324 func (resp *PatchApplicationAppVersionResp) Success() bool { 5325 return resp.Code == 0 5326 } 5327 5328 type ListApplicationFeedbackReqBuilder struct { 5329 apiReq *larkcore.ApiReq 5330 } 5331 5332 func NewListApplicationFeedbackReqBuilder() *ListApplicationFeedbackReqBuilder { 5333 builder := &ListApplicationFeedbackReqBuilder{} 5334 builder.apiReq = &larkcore.ApiReq{ 5335 PathParams: larkcore.PathParams{}, 5336 QueryParams: larkcore.QueryParams{}, 5337 } 5338 return builder 5339 } 5340 5341 // 目标应用 ID(本租户创建的所有应用) 5342 // 5343 // 示例值:cli_9f115af860f7901b 5344 func (builder *ListApplicationFeedbackReqBuilder) AppId(appId string) *ListApplicationFeedbackReqBuilder { 5345 builder.apiReq.PathParams.Set("app_id", fmt.Sprint(appId)) 5346 return builder 5347 } 5348 5349 // 查询的起始日期,格式为yyyy-mm-dd。不填则默认为当前日期减去180天。 5350 // 5351 // 示例值:2022-01-30 5352 func (builder *ListApplicationFeedbackReqBuilder) FromDate(fromDate string) *ListApplicationFeedbackReqBuilder { 5353 builder.apiReq.QueryParams.Set("from_date", fmt.Sprint(fromDate)) 5354 return builder 5355 } 5356 5357 // 查询的结束日期,格式为yyyy-mm-dd。不填默认为当前日期。;只能查询 180 天内的数据。 5358 // 5359 // 示例值:2022-01-30 5360 func (builder *ListApplicationFeedbackReqBuilder) ToDate(toDate string) *ListApplicationFeedbackReqBuilder { 5361 builder.apiReq.QueryParams.Set("to_date", fmt.Sprint(toDate)) 5362 return builder 5363 } 5364 5365 // 反馈类型,不填写则表示查询所有反馈类型。 5366 // 5367 // 示例值:1 5368 func (builder *ListApplicationFeedbackReqBuilder) FeedbackType(feedbackType int) *ListApplicationFeedbackReqBuilder { 5369 builder.apiReq.QueryParams.Set("feedback_type", fmt.Sprint(feedbackType)) 5370 return builder 5371 } 5372 5373 // 反馈处理状态,不填写则表示查询所有处理类型。 5374 // 5375 // 示例值:0 5376 func (builder *ListApplicationFeedbackReqBuilder) Status(status int) *ListApplicationFeedbackReqBuilder { 5377 builder.apiReq.QueryParams.Set("status", fmt.Sprint(status)) 5378 return builder 5379 } 5380 5381 // 5382 // 5383 // 示例值:open_id 5384 func (builder *ListApplicationFeedbackReqBuilder) UserIdType(userIdType string) *ListApplicationFeedbackReqBuilder { 5385 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 5386 return builder 5387 } 5388 5389 // 分页拉取反馈列表起始位置标示,不填表示从头开始 5390 // 5391 // 示例值:"7064688334618378259" 5392 func (builder *ListApplicationFeedbackReqBuilder) PageToken(pageToken string) *ListApplicationFeedbackReqBuilder { 5393 builder.apiReq.QueryParams.Set("page_token", fmt.Sprint(pageToken)) 5394 return builder 5395 } 5396 5397 // 本次拉取反馈列表最大个数 5398 // 5399 // 示例值:100 5400 func (builder *ListApplicationFeedbackReqBuilder) PageSize(pageSize int) *ListApplicationFeedbackReqBuilder { 5401 builder.apiReq.QueryParams.Set("page_size", fmt.Sprint(pageSize)) 5402 return builder 5403 } 5404 5405 func (builder *ListApplicationFeedbackReqBuilder) Build() *ListApplicationFeedbackReq { 5406 req := &ListApplicationFeedbackReq{} 5407 req.apiReq = &larkcore.ApiReq{} 5408 req.apiReq.PathParams = builder.apiReq.PathParams 5409 req.apiReq.QueryParams = builder.apiReq.QueryParams 5410 return req 5411 } 5412 5413 type ListApplicationFeedbackReq struct { 5414 apiReq *larkcore.ApiReq 5415 } 5416 5417 type ListApplicationFeedbackRespData struct { 5418 FeedbackList []*ApplicationFeedback `json:"feedback_list,omitempty"` // 应用的反馈列表 5419 HasMore *bool `json:"has_more,omitempty"` // 是否还有更多用户反馈列表,true:是,false:否 5420 PageToken *string `json:"page_token,omitempty"` // 拉取下一页应用反馈列表时使用的 page_token 5421 } 5422 5423 type ListApplicationFeedbackResp struct { 5424 *larkcore.ApiResp `json:"-"` 5425 larkcore.CodeError 5426 Data *ListApplicationFeedbackRespData `json:"data"` // 业务数据 5427 } 5428 5429 func (resp *ListApplicationFeedbackResp) Success() bool { 5430 return resp.Code == 0 5431 } 5432 5433 type PatchApplicationFeedbackReqBuilder struct { 5434 apiReq *larkcore.ApiReq 5435 } 5436 5437 func NewPatchApplicationFeedbackReqBuilder() *PatchApplicationFeedbackReqBuilder { 5438 builder := &PatchApplicationFeedbackReqBuilder{} 5439 builder.apiReq = &larkcore.ApiReq{ 5440 PathParams: larkcore.PathParams{}, 5441 QueryParams: larkcore.QueryParams{}, 5442 } 5443 return builder 5444 } 5445 5446 // 目标应用 ID(本租户创建的所有应用) 5447 // 5448 // 示例值:cli_9f115af860f7901b 5449 func (builder *PatchApplicationFeedbackReqBuilder) AppId(appId string) *PatchApplicationFeedbackReqBuilder { 5450 builder.apiReq.PathParams.Set("app_id", fmt.Sprint(appId)) 5451 return builder 5452 } 5453 5454 // 应用反馈记录id 5455 // 5456 // 示例值:7057888018203574291 5457 func (builder *PatchApplicationFeedbackReqBuilder) FeedbackId(feedbackId string) *PatchApplicationFeedbackReqBuilder { 5458 builder.apiReq.PathParams.Set("feedback_id", fmt.Sprint(feedbackId)) 5459 return builder 5460 } 5461 5462 // 5463 // 5464 // 示例值:open_id 5465 func (builder *PatchApplicationFeedbackReqBuilder) UserIdType(userIdType string) *PatchApplicationFeedbackReqBuilder { 5466 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 5467 return builder 5468 } 5469 5470 // 反馈处理状态 5471 // 5472 // 示例值:1 5473 func (builder *PatchApplicationFeedbackReqBuilder) Status(status int) *PatchApplicationFeedbackReqBuilder { 5474 builder.apiReq.QueryParams.Set("status", fmt.Sprint(status)) 5475 return builder 5476 } 5477 5478 // 反馈处理人员id,租户内用户的唯一标识, ID值与查询参数中的user_id_type 对应 5479 // 5480 // 示例值:ou_9565b69967831233761cc2f11b4c089f 5481 func (builder *PatchApplicationFeedbackReqBuilder) OperatorId(operatorId string) *PatchApplicationFeedbackReqBuilder { 5482 builder.apiReq.QueryParams.Set("operator_id", fmt.Sprint(operatorId)) 5483 return builder 5484 } 5485 5486 func (builder *PatchApplicationFeedbackReqBuilder) Build() *PatchApplicationFeedbackReq { 5487 req := &PatchApplicationFeedbackReq{} 5488 req.apiReq = &larkcore.ApiReq{} 5489 req.apiReq.PathParams = builder.apiReq.PathParams 5490 req.apiReq.QueryParams = builder.apiReq.QueryParams 5491 return req 5492 } 5493 5494 type PatchApplicationFeedbackReq struct { 5495 apiReq *larkcore.ApiReq 5496 } 5497 5498 type PatchApplicationFeedbackResp struct { 5499 *larkcore.ApiResp `json:"-"` 5500 larkcore.CodeError 5501 } 5502 5503 func (resp *PatchApplicationFeedbackResp) Success() bool { 5504 return resp.Code == 0 5505 } 5506 5507 type P2ApplicationCreatedV6Data struct { 5508 OperatorId *UserId `json:"operator_id,omitempty"` // 用户 ID 5509 AppId *string `json:"app_id,omitempty"` // 应用 ID 5510 Name *string `json:"name,omitempty"` // 应用名称 5511 Description *string `json:"description,omitempty"` // 应用描述 5512 Avatar *string `json:"avatar,omitempty"` // 应用图标链接 5513 AppSceneType *int `json:"app_scene_type,omitempty"` // 应用类型,0: 自建应用,1: 应用商店应用 5514 PrimaryLanguage *string `json:"primary_language,omitempty"` // 应用主语言 5515 } 5516 5517 type P2ApplicationCreatedV6 struct { 5518 *larkevent.EventV2Base // 事件基础数据 5519 *larkevent.EventReq // 请求原生数据 5520 Event *P2ApplicationCreatedV6Data `json:"event"` // 事件内容 5521 } 5522 5523 func (m *P2ApplicationCreatedV6) RawReq(req *larkevent.EventReq) { 5524 m.EventReq = req 5525 } 5526 5527 type P2ApplicationAppVersionAuditV6Data struct { 5528 OperatorId *UserId `json:"operator_id,omitempty"` // 通过 / 拒绝应用审核的管理员 id 5529 VersionId *string `json:"version_id,omitempty"` // 被审核的应用版本 id 5530 CreatorId *UserId `json:"creator_id,omitempty"` // 应用创建者的 id 5531 AppId *string `json:"app_id,omitempty"` // 撤回应用的 id 5532 Operation *string `json:"operation,omitempty"` // 审核通过 / 拒绝 5533 Remark *string `json:"remark,omitempty"` // 审核信息,当审核拒绝时,管理员填写的拒绝理由 5534 AuditSource *string `json:"audit_source,omitempty"` // 应用审核的方式 5535 } 5536 5537 type P2ApplicationAppVersionAuditV6 struct { 5538 *larkevent.EventV2Base // 事件基础数据 5539 *larkevent.EventReq // 请求原生数据 5540 Event *P2ApplicationAppVersionAuditV6Data `json:"event"` // 事件内容 5541 } 5542 5543 func (m *P2ApplicationAppVersionAuditV6) RawReq(req *larkevent.EventReq) { 5544 m.EventReq = req 5545 } 5546 5547 type P2ApplicationAppVersionPublishApplyV6Data struct { 5548 OperatorId *UserId `json:"operator_id,omitempty"` // 用户 ID 5549 OnlineVersion *ApplicationAppVersionEvent `json:"online_version,omitempty"` // 当前线上版本信息 5550 UnderAuditVersion *ApplicationAppVersionEvent `json:"under_audit_version,omitempty"` // 当前线上版本信息 5551 AppStatus *int `json:"app_status,omitempty"` // 应用状态 5552 } 5553 5554 type P2ApplicationAppVersionPublishApplyV6 struct { 5555 *larkevent.EventV2Base // 事件基础数据 5556 *larkevent.EventReq // 请求原生数据 5557 Event *P2ApplicationAppVersionPublishApplyV6Data `json:"event"` // 事件内容 5558 } 5559 5560 func (m *P2ApplicationAppVersionPublishApplyV6) RawReq(req *larkevent.EventReq) { 5561 m.EventReq = req 5562 } 5563 5564 type P2ApplicationAppVersionPublishRevokeV6Data struct { 5565 OperatorId *UserId `json:"operator_id,omitempty"` // 用户 ID 5566 CreatorId *UserId `json:"creator_id,omitempty"` // 用户 ID 5567 AppId *string `json:"app_id,omitempty"` // 撤回应用的 id 5568 VersionId *string `json:"version_id,omitempty"` // 撤回应用的版本 id 5569 } 5570 5571 type P2ApplicationAppVersionPublishRevokeV6 struct { 5572 *larkevent.EventV2Base // 事件基础数据 5573 *larkevent.EventReq // 请求原生数据 5574 Event *P2ApplicationAppVersionPublishRevokeV6Data `json:"event"` // 事件内容 5575 } 5576 5577 func (m *P2ApplicationAppVersionPublishRevokeV6) RawReq(req *larkevent.EventReq) { 5578 m.EventReq = req 5579 } 5580 5581 type P2ApplicationFeedbackCreatedV6Data struct { 5582 UserId *UserId `json:"user_id,omitempty"` // 用户 ID 5583 AppId *string `json:"app_id,omitempty"` // 被反馈应用 ID 5584 FeedbackTime *string `json:"feedback_time,omitempty"` // 反馈提交时间,格式为yyyy-mm-dd hh:mm:ss 5585 TenantName *string `json:"tenant_name,omitempty"` // 反馈用户的租户名 5586 FeedbackType *int `json:"feedback_type,omitempty"` // 反馈类型(枚举值,1:故障反馈,2:产品建议) 5587 FaultType []int `json:"fault_type,omitempty"` // 故障类型列表:1: 黑屏 2: 白屏 3: 无法打开小程序 4: 卡顿 5: 小程序闪退 6: 页面加载慢 7: 死机 8: 其他异常 5588 FaultTime *string `json:"fault_time,omitempty"` // 故障时间,格式为yyyy-mm-dd hh:mm:ss 5589 Source *int `json:"source,omitempty"` // 反馈来源:1: 小程序 2:网页应用 3:机器人 4:webSDK 5590 Contact *string `json:"contact,omitempty"` // 用户填写的联系方式 5591 Description *string `json:"description,omitempty"` // 反馈详情 5592 Images []string `json:"images,omitempty"` // 反馈图片url列表,url 过期时间三天 5593 FeedbackId *string `json:"feedback_id,omitempty"` // 应用反馈 ID,应用反馈记录唯一标识 5594 FeedbackPath *string `json:"feedback_path,omitempty"` // 反馈页面路径 5595 } 5596 5597 type P2ApplicationFeedbackCreatedV6 struct { 5598 *larkevent.EventV2Base // 事件基础数据 5599 *larkevent.EventReq // 请求原生数据 5600 Event *P2ApplicationFeedbackCreatedV6Data `json:"event"` // 事件内容 5601 } 5602 5603 func (m *P2ApplicationFeedbackCreatedV6) RawReq(req *larkevent.EventReq) { 5604 m.EventReq = req 5605 } 5606 5607 type P2ApplicationFeedbackUpdatedV6Data struct { 5608 FeedbackIds []string `json:"feedback_ids,omitempty"` // 反馈id列表 5609 Status *int `json:"status,omitempty"` // 反馈处理状态(枚举值,0: 未处理 1: 已处理 2: 处理中 3: 已关闭) 5610 AppId *string `json:"app_id,omitempty"` // 应用的 app_id 5611 UpdateTime *string `json:"update_time,omitempty"` // 反馈处理时间,格式为yyyy-mm-dd hh:mm:ss 5612 OperatorId *UserId `json:"operator_id,omitempty"` // 操作者用户 ID 5613 } 5614 5615 type P2ApplicationFeedbackUpdatedV6 struct { 5616 *larkevent.EventV2Base // 事件基础数据 5617 *larkevent.EventReq // 请求原生数据 5618 Event *P2ApplicationFeedbackUpdatedV6Data `json:"event"` // 事件内容 5619 } 5620 5621 func (m *P2ApplicationFeedbackUpdatedV6) RawReq(req *larkevent.EventReq) { 5622 m.EventReq = req 5623 } 5624 5625 type P2ApplicationVisibilityAddedV6Data struct { 5626 Users []*User `json:"users,omitempty"` // 5627 Source *int `json:"source,omitempty"` // 5628 } 5629 5630 type P2ApplicationVisibilityAddedV6 struct { 5631 *larkevent.EventV2Base // 事件基础数据 5632 *larkevent.EventReq // 请求原生数据 5633 Event *P2ApplicationVisibilityAddedV6Data `json:"event"` // 事件内容 5634 } 5635 5636 func (m *P2ApplicationVisibilityAddedV6) RawReq(req *larkevent.EventReq) { 5637 m.EventReq = req 5638 } 5639 5640 type UnderauditlistApplicationIterator struct { 5641 nextPageToken *string 5642 items []*Application 5643 index int 5644 limit int 5645 ctx context.Context 5646 req *UnderauditlistApplicationReq 5647 listFunc func(ctx context.Context, req *UnderauditlistApplicationReq, options ...larkcore.RequestOptionFunc) (*UnderauditlistApplicationResp, error) 5648 options []larkcore.RequestOptionFunc 5649 curlNum int 5650 } 5651 5652 func (iterator *UnderauditlistApplicationIterator) Next() (bool, *Application, error) { 5653 // 达到最大量,则返回 5654 if iterator.limit > 0 && iterator.curlNum >= iterator.limit { 5655 return false, nil, nil 5656 } 5657 5658 // 为0则拉取数据 5659 if iterator.index == 0 || iterator.index >= len(iterator.items) { 5660 if iterator.index != 0 && iterator.nextPageToken == nil { 5661 return false, nil, nil 5662 } 5663 if iterator.nextPageToken != nil { 5664 iterator.req.apiReq.QueryParams.Set("page_token", *iterator.nextPageToken) 5665 } 5666 resp, err := iterator.listFunc(iterator.ctx, iterator.req, iterator.options...) 5667 if err != nil { 5668 return false, nil, err 5669 } 5670 5671 if resp.Code != 0 { 5672 return false, nil, errors.New(fmt.Sprintf("Code:%d,Msg:%s", resp.Code, resp.Msg)) 5673 } 5674 5675 if len(resp.Data.Items) == 0 { 5676 return false, nil, nil 5677 } 5678 5679 iterator.nextPageToken = resp.Data.PageToken 5680 iterator.items = resp.Data.Items 5681 iterator.index = 0 5682 } 5683 5684 block := iterator.items[iterator.index] 5685 iterator.index++ 5686 iterator.curlNum++ 5687 return true, block, nil 5688 } 5689 5690 func (iterator *UnderauditlistApplicationIterator) NextPageToken() *string { 5691 return iterator.nextPageToken 5692 }