gitee.com/larksuite/oapi-sdk-go/v3@v3.0.3/service/mail/v1/model.go (about) 1 // Package mail 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 larkmail 15 16 import ( 17 "fmt" 18 19 "context" 20 "errors" 21 22 "gitee.com/larksuite/oapi-sdk-go/v3/core" 23 ) 24 25 const ( 26 WhoCanSendMailANYONE = "ANYONE" // Any Internet user can send mail to this mail group 27 WhoCanSendMailALLINTERNALUSERS = "ALL_INTERNAL_USERS" // Anyone in the team can send mail to this mail group 28 WhoCanSendMailALLGROUPMEMBERS = "ALL_GROUP_MEMBERS" // Any group member can send mail to this mail group 29 WhoCanSendMailCUSTOMMEMBERS = "CUSTOM_MEMBERS" // Only custom members can send mail to this mail group, define in mailgroup.permission_members resoure 30 ) 31 32 const ( 33 UserIdTypeUserId = "user_id" // 以user_id来识别用户 34 UserIdTypeUnionId = "union_id" // 以union_id来识别用户 35 UserIdTypeOpenId = "open_id" // 以open_id来识别用户 36 ) 37 38 const ( 39 WhoCanSendMailPatchMailgroupANYONE = "ANYONE" // Any Internet user can send mail to this mail group 40 WhoCanSendMailPatchMailgroupALLINTERNALUSERS = "ALL_INTERNAL_USERS" // Anyone in the team can send mail to this mail group 41 WhoCanSendMailPatchMailgroupALLGROUPMEMBERS = "ALL_GROUP_MEMBERS" // Any group member can send mail to this mail group 42 WhoCanSendMailPatchMailgroupCUSTOMMEMBERS = "CUSTOM_MEMBERS" // Only custom members can send mail to this mail group, define in mailgroup.permission_members resoure 43 ) 44 45 const ( 46 WhoCanSendMailUpdateMailgroupANYONE = "ANYONE" // Any Internet user can send mail to this mail group 47 WhoCanSendMailUpdateMailgroupALLINTERNALUSERS = "ALL_INTERNAL_USERS" // Anyone in the team can send mail to this mail group 48 WhoCanSendMailUpdateMailgroupALLGROUPMEMBERS = "ALL_GROUP_MEMBERS" // Any group member can send mail to this mail group 49 WhoCanSendMailUpdateMailgroupCUSTOMMEMBERS = "CUSTOM_MEMBERS" // Only custom members can send mail to this mail group, define in mailgroup.permission_members resoure 50 ) 51 52 const ( 53 TypeUSER = "USER" // internal user in the team 54 TypeDEPARTMENT = "DEPARTMENT" // member is a department 55 TypeCOMPANY = "COMPANY" // member is the company 56 TypeEXTERNALUSER = "EXTERNAL_USER" // internet user outside the organization 57 TypeMAILGROUP = "MAIL_GROUP" // member is another mail group 58 TypePUBLICMAILBOX = "PUBLIC_MAILBOX" // member is a public mailbox 59 TypeOTHERMEMBER = "OTHER_MEMBER" // other internal member 60 ) 61 62 const ( 63 UserIdTypeCreateMailgroupMemberUserId = "user_id" // 以user_id来识别用户 64 UserIdTypeCreateMailgroupMemberUnionId = "union_id" // 以union_id来识别用户 65 UserIdTypeCreateMailgroupMemberOpenId = "open_id" // 以open_id来识别用户 66 ) 67 68 const ( 69 DepartmentIdTypeDepartmentId = "department_id" // 以自定义department_id来标识部门 70 DepartmentIdTypeOpenDepartmentId = "open_department_id" // 以open_department_id来标识部门 71 ) 72 73 const ( 74 UserIdTypeGetMailgroupMemberUserId = "user_id" // 以user_id来识别用户 75 UserIdTypeGetMailgroupMemberUnionId = "union_id" // 以union_id来识别用户 76 UserIdTypeGetMailgroupMemberOpenId = "open_id" // 以open_id来识别用户 77 ) 78 79 const ( 80 DepartmentIdTypeGetMailgroupMemberDepartmentId = "department_id" // 以自定义department_id来标识部门 81 DepartmentIdTypeGetMailgroupMemberOpenDepartmentId = "open_department_id" // 以open_department_id来标识部门 82 ) 83 84 const ( 85 UserIdTypeListMailgroupMemberUserId = "user_id" // 以user_id来识别用户 86 UserIdTypeListMailgroupMemberUnionId = "union_id" // 以union_id来识别用户 87 UserIdTypeListMailgroupMemberOpenId = "open_id" // 以open_id来识别用户 88 ) 89 90 const ( 91 DepartmentIdTypeListMailgroupMemberDepartmentId = "department_id" // 以自定义department_id来标识部门 92 DepartmentIdTypeListMailgroupMemberOpenDepartmentId = "open_department_id" // 以open_department_id来标识部门 93 ) 94 95 const ( 96 TypeCreateMailgroupPermissionMemberUSER = "USER" // internal user in the team 97 TypeCreateMailgroupPermissionMemberDEPARTMENT = "DEPARTMENT" // member is a department 98 ) 99 100 const ( 101 UserIdTypeCreateMailgroupPermissionMemberUserId = "user_id" // 以user_id来识别用户 102 UserIdTypeCreateMailgroupPermissionMemberUnionId = "union_id" // 以union_id来识别用户 103 UserIdTypeCreateMailgroupPermissionMemberOpenId = "open_id" // 以open_id来识别用户 104 ) 105 106 const ( 107 DepartmentIdTypeCreateMailgroupPermissionMemberDepartmentId = "department_id" // 以自定义department_id来标识部门 108 DepartmentIdTypeCreateMailgroupPermissionMemberOpenDepartmentId = "open_department_id" // 以open_department_id来标识部门 109 ) 110 111 const ( 112 UserIdTypeGetMailgroupPermissionMemberUserId = "user_id" // 以user_id来识别用户 113 UserIdTypeGetMailgroupPermissionMemberUnionId = "union_id" // 以union_id来识别用户 114 UserIdTypeGetMailgroupPermissionMemberOpenId = "open_id" // 以open_id来识别用户 115 ) 116 117 const ( 118 DepartmentIdTypeGetMailgroupPermissionMemberDepartmentId = "department_id" // 以自定义department_id来标识部门 119 DepartmentIdTypeGetMailgroupPermissionMemberOpenDepartmentId = "open_department_id" // 以open_department_id来标识部门 120 ) 121 122 const ( 123 UserIdTypeListMailgroupPermissionMemberUserId = "user_id" // 以user_id来识别用户 124 UserIdTypeListMailgroupPermissionMemberUnionId = "union_id" // 以union_id来识别用户 125 UserIdTypeListMailgroupPermissionMemberOpenId = "open_id" // 以open_id来识别用户 126 ) 127 128 const ( 129 DepartmentIdTypeListMailgroupPermissionMemberDepartmentId = "department_id" // 以自定义department_id来标识部门 130 DepartmentIdTypeListMailgroupPermissionMemberOpenDepartmentId = "open_department_id" // 以open_department_id来标识部门 131 ) 132 133 const ( 134 TypeCreatePublicMailboxMemberUSER = "USER" // internal user in the team 135 ) 136 137 const ( 138 UserIdTypeCreatePublicMailboxMemberUserId = "user_id" // 以user_id来识别用户 139 UserIdTypeCreatePublicMailboxMemberUnionId = "union_id" // 以union_id来识别用户 140 UserIdTypeCreatePublicMailboxMemberOpenId = "open_id" // 以open_id来识别用户 141 ) 142 143 const ( 144 UserIdTypeGetPublicMailboxMemberUserId = "user_id" // 以user_id来识别用户 145 UserIdTypeGetPublicMailboxMemberUnionId = "union_id" // 以union_id来识别用户 146 UserIdTypeGetPublicMailboxMemberOpenId = "open_id" // 以open_id来识别用户 147 ) 148 149 const ( 150 UserIdTypeListPublicMailboxMemberUserId = "user_id" // 以user_id来识别用户 151 UserIdTypeListPublicMailboxMemberUnionId = "union_id" // 以union_id来识别用户 152 UserIdTypeListPublicMailboxMemberOpenId = "open_id" // 以open_id来识别用户 153 ) 154 155 type EmailAlias struct { 156 PrimaryEmail *string `json:"primary_email,omitempty"` // 主邮箱地址 157 EmailAlias *string `json:"email_alias,omitempty"` // 邮箱别名 158 } 159 160 type EmailAliasBuilder struct { 161 primaryEmail string // 主邮箱地址 162 primaryEmailFlag bool 163 emailAlias string // 邮箱别名 164 emailAliasFlag bool 165 } 166 167 func NewEmailAliasBuilder() *EmailAliasBuilder { 168 builder := &EmailAliasBuilder{} 169 return builder 170 } 171 172 // 主邮箱地址 173 // 174 // 示例值:xxx@xx.xxx 175 func (builder *EmailAliasBuilder) PrimaryEmail(primaryEmail string) *EmailAliasBuilder { 176 builder.primaryEmail = primaryEmail 177 builder.primaryEmailFlag = true 178 return builder 179 } 180 181 // 邮箱别名 182 // 183 // 示例值:xxx@xx.xxx 184 func (builder *EmailAliasBuilder) EmailAlias(emailAlias string) *EmailAliasBuilder { 185 builder.emailAlias = emailAlias 186 builder.emailAliasFlag = true 187 return builder 188 } 189 190 func (builder *EmailAliasBuilder) Build() *EmailAlias { 191 req := &EmailAlias{} 192 if builder.primaryEmailFlag { 193 req.PrimaryEmail = &builder.primaryEmail 194 195 } 196 if builder.emailAliasFlag { 197 req.EmailAlias = &builder.emailAlias 198 199 } 200 return req 201 } 202 203 type Mailgroup struct { 204 MailgroupId *string `json:"mailgroup_id,omitempty"` // 邮件组ID 205 Email *string `json:"email,omitempty"` // 邮件组地址 206 Name *string `json:"name,omitempty"` // 邮件组名称 207 Description *string `json:"description,omitempty"` // 邮件组描述 208 DirectMembersCount *string `json:"direct_members_count,omitempty"` // 邮件组成员数量 209 IncludeExternalMember *bool `json:"include_external_member,omitempty"` // 是否包含外部成员 210 IncludeAllCompanyMember *bool `json:"include_all_company_member,omitempty"` // 是否是全员邮件组 211 WhoCanSendMail *string `json:"who_can_send_mail,omitempty"` // 谁可发送邮件到此邮件组 212 } 213 214 type MailgroupBuilder struct { 215 mailgroupId string // 邮件组ID 216 mailgroupIdFlag bool 217 email string // 邮件组地址 218 emailFlag bool 219 name string // 邮件组名称 220 nameFlag bool 221 description string // 邮件组描述 222 descriptionFlag bool 223 directMembersCount string // 邮件组成员数量 224 directMembersCountFlag bool 225 includeExternalMember bool // 是否包含外部成员 226 includeExternalMemberFlag bool 227 includeAllCompanyMember bool // 是否是全员邮件组 228 includeAllCompanyMemberFlag bool 229 whoCanSendMail string // 谁可发送邮件到此邮件组 230 whoCanSendMailFlag bool 231 } 232 233 func NewMailgroupBuilder() *MailgroupBuilder { 234 builder := &MailgroupBuilder{} 235 return builder 236 } 237 238 // 邮件组ID 239 // 240 // 示例值:xxxxxxxxxxxxxxx 241 func (builder *MailgroupBuilder) MailgroupId(mailgroupId string) *MailgroupBuilder { 242 builder.mailgroupId = mailgroupId 243 builder.mailgroupIdFlag = true 244 return builder 245 } 246 247 // 邮件组地址 248 // 249 // 示例值:test_mail_group@xxx.xx 250 func (builder *MailgroupBuilder) Email(email string) *MailgroupBuilder { 251 builder.email = email 252 builder.emailFlag = true 253 return builder 254 } 255 256 // 邮件组名称 257 // 258 // 示例值:test mail group 259 func (builder *MailgroupBuilder) Name(name string) *MailgroupBuilder { 260 builder.name = name 261 builder.nameFlag = true 262 return builder 263 } 264 265 // 邮件组描述 266 // 267 // 示例值:mail group for testing 268 func (builder *MailgroupBuilder) Description(description string) *MailgroupBuilder { 269 builder.description = description 270 builder.descriptionFlag = true 271 return builder 272 } 273 274 // 邮件组成员数量 275 // 276 // 示例值:10 277 func (builder *MailgroupBuilder) DirectMembersCount(directMembersCount string) *MailgroupBuilder { 278 builder.directMembersCount = directMembersCount 279 builder.directMembersCountFlag = true 280 return builder 281 } 282 283 // 是否包含外部成员 284 // 285 // 示例值:true 286 func (builder *MailgroupBuilder) IncludeExternalMember(includeExternalMember bool) *MailgroupBuilder { 287 builder.includeExternalMember = includeExternalMember 288 builder.includeExternalMemberFlag = true 289 return builder 290 } 291 292 // 是否是全员邮件组 293 // 294 // 示例值:false 295 func (builder *MailgroupBuilder) IncludeAllCompanyMember(includeAllCompanyMember bool) *MailgroupBuilder { 296 builder.includeAllCompanyMember = includeAllCompanyMember 297 builder.includeAllCompanyMemberFlag = true 298 return builder 299 } 300 301 // 谁可发送邮件到此邮件组 302 // 303 // 示例值:ALL_INTERNAL_USERS 304 func (builder *MailgroupBuilder) WhoCanSendMail(whoCanSendMail string) *MailgroupBuilder { 305 builder.whoCanSendMail = whoCanSendMail 306 builder.whoCanSendMailFlag = true 307 return builder 308 } 309 310 func (builder *MailgroupBuilder) Build() *Mailgroup { 311 req := &Mailgroup{} 312 if builder.mailgroupIdFlag { 313 req.MailgroupId = &builder.mailgroupId 314 315 } 316 if builder.emailFlag { 317 req.Email = &builder.email 318 319 } 320 if builder.nameFlag { 321 req.Name = &builder.name 322 323 } 324 if builder.descriptionFlag { 325 req.Description = &builder.description 326 327 } 328 if builder.directMembersCountFlag { 329 req.DirectMembersCount = &builder.directMembersCount 330 331 } 332 if builder.includeExternalMemberFlag { 333 req.IncludeExternalMember = &builder.includeExternalMember 334 335 } 336 if builder.includeAllCompanyMemberFlag { 337 req.IncludeAllCompanyMember = &builder.includeAllCompanyMember 338 339 } 340 if builder.whoCanSendMailFlag { 341 req.WhoCanSendMail = &builder.whoCanSendMail 342 343 } 344 return req 345 } 346 347 type MailgroupMember struct { 348 MemberId *string `json:"member_id,omitempty"` // 邮件组内成员唯一标识 349 Email *string `json:"email,omitempty"` // 成员邮箱地址(当成员类型是EXTERNAL_USER/MAIL_GROUP/OTHER_MEMBER时有值) 350 UserId *string `json:"user_id,omitempty"` // 租户内用户的唯一标识(当成员类型是USER时有值) 351 DepartmentId *string `json:"department_id,omitempty"` // 租户内部门的唯一标识(当成员类型是DEPARTMENT时有值) 352 Type *string `json:"type,omitempty"` // 成员类型 353 } 354 355 type MailgroupMemberBuilder struct { 356 memberId string // 邮件组内成员唯一标识 357 memberIdFlag bool 358 email string // 成员邮箱地址(当成员类型是EXTERNAL_USER/MAIL_GROUP/OTHER_MEMBER时有值) 359 emailFlag bool 360 userId string // 租户内用户的唯一标识(当成员类型是USER时有值) 361 userIdFlag bool 362 departmentId string // 租户内部门的唯一标识(当成员类型是DEPARTMENT时有值) 363 departmentIdFlag bool 364 type_ string // 成员类型 365 typeFlag bool 366 } 367 368 func NewMailgroupMemberBuilder() *MailgroupMemberBuilder { 369 builder := &MailgroupMemberBuilder{} 370 return builder 371 } 372 373 // 邮件组内成员唯一标识 374 // 375 // 示例值:xxxxxxxxxxxxxxx 376 func (builder *MailgroupMemberBuilder) MemberId(memberId string) *MailgroupMemberBuilder { 377 builder.memberId = memberId 378 builder.memberIdFlag = true 379 return builder 380 } 381 382 // 成员邮箱地址(当成员类型是EXTERNAL_USER/MAIL_GROUP/OTHER_MEMBER时有值) 383 // 384 // 示例值:test_memeber@xxx.xx 385 func (builder *MailgroupMemberBuilder) Email(email string) *MailgroupMemberBuilder { 386 builder.email = email 387 builder.emailFlag = true 388 return builder 389 } 390 391 // 租户内用户的唯一标识(当成员类型是USER时有值) 392 // 393 // 示例值:xxxxxxxxxx 394 func (builder *MailgroupMemberBuilder) UserId(userId string) *MailgroupMemberBuilder { 395 builder.userId = userId 396 builder.userIdFlag = true 397 return builder 398 } 399 400 // 租户内部门的唯一标识(当成员类型是DEPARTMENT时有值) 401 // 402 // 示例值:xxxxxxxxxx 403 func (builder *MailgroupMemberBuilder) DepartmentId(departmentId string) *MailgroupMemberBuilder { 404 builder.departmentId = departmentId 405 builder.departmentIdFlag = true 406 return builder 407 } 408 409 // 成员类型 410 // 411 // 示例值:USER 412 func (builder *MailgroupMemberBuilder) Type(type_ string) *MailgroupMemberBuilder { 413 builder.type_ = type_ 414 builder.typeFlag = true 415 return builder 416 } 417 418 func (builder *MailgroupMemberBuilder) Build() *MailgroupMember { 419 req := &MailgroupMember{} 420 if builder.memberIdFlag { 421 req.MemberId = &builder.memberId 422 423 } 424 if builder.emailFlag { 425 req.Email = &builder.email 426 427 } 428 if builder.userIdFlag { 429 req.UserId = &builder.userId 430 431 } 432 if builder.departmentIdFlag { 433 req.DepartmentId = &builder.departmentId 434 435 } 436 if builder.typeFlag { 437 req.Type = &builder.type_ 438 439 } 440 return req 441 } 442 443 type MailgroupPermissionMember struct { 444 PermissionMemberId *string `json:"permission_member_id,omitempty"` // 权限组内成员唯一标识 445 UserId *string `json:"user_id,omitempty"` // 租户内用户的唯一标识(当成员类型是USER时有值) 446 DepartmentId *string `json:"department_id,omitempty"` // 租户内部门的唯一标识(当成员类型是DEPARTMENT时有值) 447 Type *string `json:"type,omitempty"` // 成员类型 448 } 449 450 type MailgroupPermissionMemberBuilder struct { 451 permissionMemberId string // 权限组内成员唯一标识 452 permissionMemberIdFlag bool 453 userId string // 租户内用户的唯一标识(当成员类型是USER时有值) 454 userIdFlag bool 455 departmentId string // 租户内部门的唯一标识(当成员类型是DEPARTMENT时有值) 456 departmentIdFlag bool 457 type_ string // 成员类型 458 typeFlag bool 459 } 460 461 func NewMailgroupPermissionMemberBuilder() *MailgroupPermissionMemberBuilder { 462 builder := &MailgroupPermissionMemberBuilder{} 463 return builder 464 } 465 466 // 权限组内成员唯一标识 467 // 468 // 示例值:xxxxxxxxxxxxxxx 469 func (builder *MailgroupPermissionMemberBuilder) PermissionMemberId(permissionMemberId string) *MailgroupPermissionMemberBuilder { 470 builder.permissionMemberId = permissionMemberId 471 builder.permissionMemberIdFlag = true 472 return builder 473 } 474 475 // 租户内用户的唯一标识(当成员类型是USER时有值) 476 // 477 // 示例值:xxxxxxxxxx 478 func (builder *MailgroupPermissionMemberBuilder) UserId(userId string) *MailgroupPermissionMemberBuilder { 479 builder.userId = userId 480 builder.userIdFlag = true 481 return builder 482 } 483 484 // 租户内部门的唯一标识(当成员类型是DEPARTMENT时有值) 485 // 486 // 示例值:xxxxxxxxxx 487 func (builder *MailgroupPermissionMemberBuilder) DepartmentId(departmentId string) *MailgroupPermissionMemberBuilder { 488 builder.departmentId = departmentId 489 builder.departmentIdFlag = true 490 return builder 491 } 492 493 // 成员类型 494 // 495 // 示例值:USER 496 func (builder *MailgroupPermissionMemberBuilder) Type(type_ string) *MailgroupPermissionMemberBuilder { 497 builder.type_ = type_ 498 builder.typeFlag = true 499 return builder 500 } 501 502 func (builder *MailgroupPermissionMemberBuilder) Build() *MailgroupPermissionMember { 503 req := &MailgroupPermissionMember{} 504 if builder.permissionMemberIdFlag { 505 req.PermissionMemberId = &builder.permissionMemberId 506 507 } 508 if builder.userIdFlag { 509 req.UserId = &builder.userId 510 511 } 512 if builder.departmentIdFlag { 513 req.DepartmentId = &builder.departmentId 514 515 } 516 if builder.typeFlag { 517 req.Type = &builder.type_ 518 519 } 520 return req 521 } 522 523 type Message struct { 524 Raw *string `json:"raw,omitempty"` // MIME邮件数据,基于base64url编码 525 } 526 527 type MessageBuilder struct { 528 raw string // MIME邮件数据,基于base64url编码 529 rawFlag bool 530 } 531 532 func NewMessageBuilder() *MessageBuilder { 533 builder := &MessageBuilder{} 534 return builder 535 } 536 537 // MIME邮件数据,基于base64url编码 538 // 539 // 示例值:Q29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJ1cy1hc2NpaSIKTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogN2JpdAp0bzogdG9AeHh4Lnh4CmZyb206IHNlbmRlckB4eHgueHgKc3ViamVjdDogdGhpcyBpcyBhIHN1YmplY3QKCnRoaXMgaXMgdGhlIG1lc3NhZ2UgYm9keS4= 540 func (builder *MessageBuilder) Raw(raw string) *MessageBuilder { 541 builder.raw = raw 542 builder.rawFlag = true 543 return builder 544 } 545 546 func (builder *MessageBuilder) Build() *Message { 547 req := &Message{} 548 if builder.rawFlag { 549 req.Raw = &builder.raw 550 551 } 552 return req 553 } 554 555 type PublicMailbox struct { 556 PublicMailboxId *string `json:"public_mailbox_id,omitempty"` // 公共邮箱唯一标识 557 Email *string `json:"email,omitempty"` // 公共邮箱地址 558 Name *string `json:"name,omitempty"` // 公共邮箱名称 559 } 560 561 type PublicMailboxBuilder struct { 562 publicMailboxId string // 公共邮箱唯一标识 563 publicMailboxIdFlag bool 564 email string // 公共邮箱地址 565 emailFlag bool 566 name string // 公共邮箱名称 567 nameFlag bool 568 } 569 570 func NewPublicMailboxBuilder() *PublicMailboxBuilder { 571 builder := &PublicMailboxBuilder{} 572 return builder 573 } 574 575 // 公共邮箱唯一标识 576 // 577 // 示例值:xxxxxxxxxxxxxxx 578 func (builder *PublicMailboxBuilder) PublicMailboxId(publicMailboxId string) *PublicMailboxBuilder { 579 builder.publicMailboxId = publicMailboxId 580 builder.publicMailboxIdFlag = true 581 return builder 582 } 583 584 // 公共邮箱地址 585 // 586 // 示例值:test_public_mailbox@xxx.xx 587 func (builder *PublicMailboxBuilder) Email(email string) *PublicMailboxBuilder { 588 builder.email = email 589 builder.emailFlag = true 590 return builder 591 } 592 593 // 公共邮箱名称 594 // 595 // 示例值:test public mailbox 596 func (builder *PublicMailboxBuilder) Name(name string) *PublicMailboxBuilder { 597 builder.name = name 598 builder.nameFlag = true 599 return builder 600 } 601 602 func (builder *PublicMailboxBuilder) Build() *PublicMailbox { 603 req := &PublicMailbox{} 604 if builder.publicMailboxIdFlag { 605 req.PublicMailboxId = &builder.publicMailboxId 606 607 } 608 if builder.emailFlag { 609 req.Email = &builder.email 610 611 } 612 if builder.nameFlag { 613 req.Name = &builder.name 614 615 } 616 return req 617 } 618 619 type PublicMailboxMember struct { 620 MemberId *string `json:"member_id,omitempty"` // 公共邮箱内成员唯一标识 621 UserId *string `json:"user_id,omitempty"` // 租户内用户的唯一标识(当成员类型是USER时有值) 622 Type *string `json:"type,omitempty"` // 成员类型 623 } 624 625 type PublicMailboxMemberBuilder struct { 626 memberId string // 公共邮箱内成员唯一标识 627 memberIdFlag bool 628 userId string // 租户内用户的唯一标识(当成员类型是USER时有值) 629 userIdFlag bool 630 type_ string // 成员类型 631 typeFlag bool 632 } 633 634 func NewPublicMailboxMemberBuilder() *PublicMailboxMemberBuilder { 635 builder := &PublicMailboxMemberBuilder{} 636 return builder 637 } 638 639 // 公共邮箱内成员唯一标识 640 // 641 // 示例值:xxxxxxxxxxxxxxx 642 func (builder *PublicMailboxMemberBuilder) MemberId(memberId string) *PublicMailboxMemberBuilder { 643 builder.memberId = memberId 644 builder.memberIdFlag = true 645 return builder 646 } 647 648 // 租户内用户的唯一标识(当成员类型是USER时有值) 649 // 650 // 示例值:xxxxxxxxxx 651 func (builder *PublicMailboxMemberBuilder) UserId(userId string) *PublicMailboxMemberBuilder { 652 builder.userId = userId 653 builder.userIdFlag = true 654 return builder 655 } 656 657 // 成员类型 658 // 659 // 示例值:USER 660 func (builder *PublicMailboxMemberBuilder) Type(type_ string) *PublicMailboxMemberBuilder { 661 builder.type_ = type_ 662 builder.typeFlag = true 663 return builder 664 } 665 666 func (builder *PublicMailboxMemberBuilder) Build() *PublicMailboxMember { 667 req := &PublicMailboxMember{} 668 if builder.memberIdFlag { 669 req.MemberId = &builder.memberId 670 671 } 672 if builder.userIdFlag { 673 req.UserId = &builder.userId 674 675 } 676 if builder.typeFlag { 677 req.Type = &builder.type_ 678 679 } 680 return req 681 } 682 683 type User struct { 684 Email *string `json:"email,omitempty"` // 邮箱地址 685 Status *int `json:"status,omitempty"` // 邮箱地址状态 686 Type *int `json:"type,omitempty"` // 邮箱地址类型 687 } 688 689 type UserBuilder struct { 690 email string // 邮箱地址 691 emailFlag bool 692 status int // 邮箱地址状态 693 statusFlag bool 694 type_ int // 邮箱地址类型 695 typeFlag bool 696 } 697 698 func NewUserBuilder() *UserBuilder { 699 builder := &UserBuilder{} 700 return builder 701 } 702 703 // 邮箱地址 704 // 705 // 示例值:aaa@lark.com 706 func (builder *UserBuilder) Email(email string) *UserBuilder { 707 builder.email = email 708 builder.emailFlag = true 709 return builder 710 } 711 712 // 邮箱地址状态 713 // 714 // 示例值:4 715 func (builder *UserBuilder) Status(status int) *UserBuilder { 716 builder.status = status 717 builder.statusFlag = true 718 return builder 719 } 720 721 // 邮箱地址类型 722 // 723 // 示例值:1 724 func (builder *UserBuilder) Type(type_ int) *UserBuilder { 725 builder.type_ = type_ 726 builder.typeFlag = true 727 return builder 728 } 729 730 func (builder *UserBuilder) Build() *User { 731 req := &User{} 732 if builder.emailFlag { 733 req.Email = &builder.email 734 735 } 736 if builder.statusFlag { 737 req.Status = &builder.status 738 739 } 740 if builder.typeFlag { 741 req.Type = &builder.type_ 742 743 } 744 return req 745 } 746 747 type CreateMailgroupReqBuilder struct { 748 apiReq *larkcore.ApiReq 749 mailgroup *Mailgroup 750 } 751 752 func NewCreateMailgroupReqBuilder() *CreateMailgroupReqBuilder { 753 builder := &CreateMailgroupReqBuilder{} 754 builder.apiReq = &larkcore.ApiReq{ 755 PathParams: larkcore.PathParams{}, 756 QueryParams: larkcore.QueryParams{}, 757 } 758 return builder 759 } 760 761 // 创建一个邮件组 762 func (builder *CreateMailgroupReqBuilder) Mailgroup(mailgroup *Mailgroup) *CreateMailgroupReqBuilder { 763 builder.mailgroup = mailgroup 764 return builder 765 } 766 767 func (builder *CreateMailgroupReqBuilder) Build() *CreateMailgroupReq { 768 req := &CreateMailgroupReq{} 769 req.apiReq = &larkcore.ApiReq{} 770 req.apiReq.Body = builder.mailgroup 771 return req 772 } 773 774 type CreateMailgroupReq struct { 775 apiReq *larkcore.ApiReq 776 Mailgroup *Mailgroup `body:""` 777 } 778 779 type CreateMailgroupRespData struct { 780 MailgroupId *string `json:"mailgroup_id,omitempty"` // The unique ID of a mail group 781 Email *string `json:"email,omitempty"` // The mail group's email address 782 Name *string `json:"name,omitempty"` // The mail group's display name 783 Description *string `json:"description,omitempty"` // The mail group's description 784 DirectMembersCount *string `json:"direct_members_count,omitempty"` // The number of mail group's direct members 785 IncludeExternalMember *bool `json:"include_external_member,omitempty"` // Value is true if this mail group has external member 786 IncludeAllCompanyMember *bool `json:"include_all_company_member,omitempty"` // Value is true if all company members are in this mail group 787 WhoCanSendMail *string `json:"who_can_send_mail,omitempty"` // Who can send mail to this mail group. Possible values are:;- ANYONE: Any Internet user can send mail to this mail group;- ALL_INTERNAL_USERS: Anyone in the team can send mail to this mail group;- ALL_GROUP_MEMBERS: Any group member can send mail to this mail group;- CUSTOM_MEMBERS: Only custom members can send mail to this mail group, define in mailgroup.permission_members resoure 788 } 789 790 type CreateMailgroupResp struct { 791 *larkcore.ApiResp `json:"-"` 792 larkcore.CodeError 793 Data *CreateMailgroupRespData `json:"data"` // 业务数据 794 } 795 796 func (resp *CreateMailgroupResp) Success() bool { 797 return resp.Code == 0 798 } 799 800 type DeleteMailgroupReqBuilder struct { 801 apiReq *larkcore.ApiReq 802 } 803 804 func NewDeleteMailgroupReqBuilder() *DeleteMailgroupReqBuilder { 805 builder := &DeleteMailgroupReqBuilder{} 806 builder.apiReq = &larkcore.ApiReq{ 807 PathParams: larkcore.PathParams{}, 808 QueryParams: larkcore.QueryParams{}, 809 } 810 return builder 811 } 812 813 // 邮件组ID或者邮件组地址 814 // 815 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 816 func (builder *DeleteMailgroupReqBuilder) MailgroupId(mailgroupId string) *DeleteMailgroupReqBuilder { 817 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 818 return builder 819 } 820 821 func (builder *DeleteMailgroupReqBuilder) Build() *DeleteMailgroupReq { 822 req := &DeleteMailgroupReq{} 823 req.apiReq = &larkcore.ApiReq{} 824 req.apiReq.PathParams = builder.apiReq.PathParams 825 return req 826 } 827 828 type DeleteMailgroupReq struct { 829 apiReq *larkcore.ApiReq 830 } 831 832 type DeleteMailgroupResp struct { 833 *larkcore.ApiResp `json:"-"` 834 larkcore.CodeError 835 } 836 837 func (resp *DeleteMailgroupResp) Success() bool { 838 return resp.Code == 0 839 } 840 841 type GetMailgroupReqBuilder struct { 842 apiReq *larkcore.ApiReq 843 } 844 845 func NewGetMailgroupReqBuilder() *GetMailgroupReqBuilder { 846 builder := &GetMailgroupReqBuilder{} 847 builder.apiReq = &larkcore.ApiReq{ 848 PathParams: larkcore.PathParams{}, 849 QueryParams: larkcore.QueryParams{}, 850 } 851 return builder 852 } 853 854 // 邮件组ID或者邮件组地址 855 // 856 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 857 func (builder *GetMailgroupReqBuilder) MailgroupId(mailgroupId string) *GetMailgroupReqBuilder { 858 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 859 return builder 860 } 861 862 func (builder *GetMailgroupReqBuilder) Build() *GetMailgroupReq { 863 req := &GetMailgroupReq{} 864 req.apiReq = &larkcore.ApiReq{} 865 req.apiReq.PathParams = builder.apiReq.PathParams 866 return req 867 } 868 869 type GetMailgroupReq struct { 870 apiReq *larkcore.ApiReq 871 } 872 873 type GetMailgroupRespData struct { 874 MailgroupId *string `json:"mailgroup_id,omitempty"` // The unique ID of a mail group 875 Email *string `json:"email,omitempty"` // The mail group's email address 876 Name *string `json:"name,omitempty"` // The mail group's display name 877 Description *string `json:"description,omitempty"` // The mail group's description 878 DirectMembersCount *string `json:"direct_members_count,omitempty"` // The number of mail group's direct members 879 IncludeExternalMember *bool `json:"include_external_member,omitempty"` // Value is true if this mail group has external member 880 IncludeAllCompanyMember *bool `json:"include_all_company_member,omitempty"` // Value is true if all company members are in this mail group 881 WhoCanSendMail *string `json:"who_can_send_mail,omitempty"` // Who can send mail to this mail group. Possible values are:;- ANYONE: Any Internet user can send mail to this mail group;- ALL_INTERNAL_USERS: Anyone in the team can send mail to this mail group;- ALL_GROUP_MEMBERS: Any group member can send mail to this mail group;- CUSTOM_MEMBERS: Only custom members can send mail to this mail group, define in mailgroup.permission_members resoure 882 } 883 884 type GetMailgroupResp struct { 885 *larkcore.ApiResp `json:"-"` 886 larkcore.CodeError 887 Data *GetMailgroupRespData `json:"data"` // 业务数据 888 } 889 890 func (resp *GetMailgroupResp) Success() bool { 891 return resp.Code == 0 892 } 893 894 type ListMailgroupReqBuilder struct { 895 apiReq *larkcore.ApiReq 896 limit int // 最大返回多少记录,当使用迭代器访问时才有效 897 } 898 899 func NewListMailgroupReqBuilder() *ListMailgroupReqBuilder { 900 builder := &ListMailgroupReqBuilder{} 901 builder.apiReq = &larkcore.ApiReq{ 902 PathParams: larkcore.PathParams{}, 903 QueryParams: larkcore.QueryParams{}, 904 } 905 return builder 906 } 907 908 // 最大返回多少记录,当使用迭代器访问时才有效 909 func (builder *ListMailgroupReqBuilder) Limit(limit int) *ListMailgroupReqBuilder { 910 builder.limit = limit 911 return builder 912 } 913 914 // 邮件组管理员用户ID,用于获取该用户有管理权限的邮件组 915 // 916 // 示例值:ou_xxxxxx 917 func (builder *ListMailgroupReqBuilder) ManagerUserId(managerUserId string) *ListMailgroupReqBuilder { 918 builder.apiReq.QueryParams.Set("manager_user_id", fmt.Sprint(managerUserId)) 919 return builder 920 } 921 922 // 此次调用中使用的用户ID的类型 923 // 924 // 示例值: 925 func (builder *ListMailgroupReqBuilder) UserIdType(userIdType string) *ListMailgroupReqBuilder { 926 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 927 return builder 928 } 929 930 // 931 // 932 // 示例值:xxx 933 func (builder *ListMailgroupReqBuilder) PageToken(pageToken string) *ListMailgroupReqBuilder { 934 builder.apiReq.QueryParams.Set("page_token", fmt.Sprint(pageToken)) 935 return builder 936 } 937 938 // 939 // 940 // 示例值:10 941 func (builder *ListMailgroupReqBuilder) PageSize(pageSize int) *ListMailgroupReqBuilder { 942 builder.apiReq.QueryParams.Set("page_size", fmt.Sprint(pageSize)) 943 return builder 944 } 945 946 func (builder *ListMailgroupReqBuilder) Build() *ListMailgroupReq { 947 req := &ListMailgroupReq{} 948 req.apiReq = &larkcore.ApiReq{} 949 req.Limit = builder.limit 950 req.apiReq.QueryParams = builder.apiReq.QueryParams 951 return req 952 } 953 954 type ListMailgroupReq struct { 955 apiReq *larkcore.ApiReq 956 Limit int // 最多返回多少记录,只有在使用迭代器访问时,才有效 957 958 } 959 960 type ListMailgroupRespData struct { 961 HasMore *bool `json:"has_more,omitempty"` // 是否有下一页数据 962 PageToken *string `json:"page_token,omitempty"` // 下一页分页的token 963 Items []*Mailgroup `json:"items,omitempty"` // 邮件组列表 964 } 965 966 type ListMailgroupResp struct { 967 *larkcore.ApiResp `json:"-"` 968 larkcore.CodeError 969 Data *ListMailgroupRespData `json:"data"` // 业务数据 970 } 971 972 func (resp *ListMailgroupResp) Success() bool { 973 return resp.Code == 0 974 } 975 976 type PatchMailgroupReqBuilder struct { 977 apiReq *larkcore.ApiReq 978 mailgroup *Mailgroup 979 } 980 981 func NewPatchMailgroupReqBuilder() *PatchMailgroupReqBuilder { 982 builder := &PatchMailgroupReqBuilder{} 983 builder.apiReq = &larkcore.ApiReq{ 984 PathParams: larkcore.PathParams{}, 985 QueryParams: larkcore.QueryParams{}, 986 } 987 return builder 988 } 989 990 // 邮件组ID或者邮件组地址 991 // 992 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 993 func (builder *PatchMailgroupReqBuilder) MailgroupId(mailgroupId string) *PatchMailgroupReqBuilder { 994 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 995 return builder 996 } 997 998 // 更新邮件组部分字段,没有填写的字段不会被更新 999 func (builder *PatchMailgroupReqBuilder) Mailgroup(mailgroup *Mailgroup) *PatchMailgroupReqBuilder { 1000 builder.mailgroup = mailgroup 1001 return builder 1002 } 1003 1004 func (builder *PatchMailgroupReqBuilder) Build() *PatchMailgroupReq { 1005 req := &PatchMailgroupReq{} 1006 req.apiReq = &larkcore.ApiReq{} 1007 req.apiReq.PathParams = builder.apiReq.PathParams 1008 req.apiReq.Body = builder.mailgroup 1009 return req 1010 } 1011 1012 type PatchMailgroupReq struct { 1013 apiReq *larkcore.ApiReq 1014 Mailgroup *Mailgroup `body:""` 1015 } 1016 1017 type PatchMailgroupRespData struct { 1018 MailgroupId *string `json:"mailgroup_id,omitempty"` // The unique ID of a mail group 1019 Email *string `json:"email,omitempty"` // The mail group's email address 1020 Name *string `json:"name,omitempty"` // The mail group's display name 1021 Description *string `json:"description,omitempty"` // The mail group's description 1022 DirectMembersCount *string `json:"direct_members_count,omitempty"` // The number of mail group's direct members 1023 IncludeExternalMember *bool `json:"include_external_member,omitempty"` // Value is true if this mail group has external member 1024 IncludeAllCompanyMember *bool `json:"include_all_company_member,omitempty"` // Value is true if all company members are in this mail group 1025 WhoCanSendMail *string `json:"who_can_send_mail,omitempty"` // Who can send mail to this mail group. Possible values are:;- ANYONE: Any Internet user can send mail to this mail group;- ALL_INTERNAL_USERS: Anyone in the team can send mail to this mail group;- ALL_GROUP_MEMBERS: Any group member can send mail to this mail group;- CUSTOM_MEMBERS: Only custom members can send mail to this mail group, define in mailgroup.permission_members resoure 1026 } 1027 1028 type PatchMailgroupResp struct { 1029 *larkcore.ApiResp `json:"-"` 1030 larkcore.CodeError 1031 Data *PatchMailgroupRespData `json:"data"` // 业务数据 1032 } 1033 1034 func (resp *PatchMailgroupResp) Success() bool { 1035 return resp.Code == 0 1036 } 1037 1038 type UpdateMailgroupReqBuilder struct { 1039 apiReq *larkcore.ApiReq 1040 mailgroup *Mailgroup 1041 } 1042 1043 func NewUpdateMailgroupReqBuilder() *UpdateMailgroupReqBuilder { 1044 builder := &UpdateMailgroupReqBuilder{} 1045 builder.apiReq = &larkcore.ApiReq{ 1046 PathParams: larkcore.PathParams{}, 1047 QueryParams: larkcore.QueryParams{}, 1048 } 1049 return builder 1050 } 1051 1052 // 邮件组ID或者邮件组地址 1053 // 1054 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 1055 func (builder *UpdateMailgroupReqBuilder) MailgroupId(mailgroupId string) *UpdateMailgroupReqBuilder { 1056 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1057 return builder 1058 } 1059 1060 // 更新邮件组所有信息 1061 func (builder *UpdateMailgroupReqBuilder) Mailgroup(mailgroup *Mailgroup) *UpdateMailgroupReqBuilder { 1062 builder.mailgroup = mailgroup 1063 return builder 1064 } 1065 1066 func (builder *UpdateMailgroupReqBuilder) Build() *UpdateMailgroupReq { 1067 req := &UpdateMailgroupReq{} 1068 req.apiReq = &larkcore.ApiReq{} 1069 req.apiReq.PathParams = builder.apiReq.PathParams 1070 req.apiReq.Body = builder.mailgroup 1071 return req 1072 } 1073 1074 type UpdateMailgroupReq struct { 1075 apiReq *larkcore.ApiReq 1076 Mailgroup *Mailgroup `body:""` 1077 } 1078 1079 type UpdateMailgroupRespData struct { 1080 MailgroupId *string `json:"mailgroup_id,omitempty"` // The unique ID of a mail group 1081 Email *string `json:"email,omitempty"` // The mail group's email address 1082 Name *string `json:"name,omitempty"` // The mail group's display name 1083 Description *string `json:"description,omitempty"` // The mail group's description 1084 DirectMembersCount *string `json:"direct_members_count,omitempty"` // The number of mail group's direct members 1085 IncludeExternalMember *bool `json:"include_external_member,omitempty"` // Value is true if this mail group has external member 1086 IncludeAllCompanyMember *bool `json:"include_all_company_member,omitempty"` // Value is true if all company members are in this mail group 1087 WhoCanSendMail *string `json:"who_can_send_mail,omitempty"` // Who can send mail to this mail group. Possible values are:;- ANYONE: Any Internet user can send mail to this mail group;- ALL_INTERNAL_USERS: Anyone in the team can send mail to this mail group;- ALL_GROUP_MEMBERS: Any group member can send mail to this mail group;- CUSTOM_MEMBERS: Only custom members can send mail to this mail group, define in mailgroup.permission_members resoure 1088 } 1089 1090 type UpdateMailgroupResp struct { 1091 *larkcore.ApiResp `json:"-"` 1092 larkcore.CodeError 1093 Data *UpdateMailgroupRespData `json:"data"` // 业务数据 1094 } 1095 1096 func (resp *UpdateMailgroupResp) Success() bool { 1097 return resp.Code == 0 1098 } 1099 1100 type CreateMailgroupAliasReqBuilder struct { 1101 apiReq *larkcore.ApiReq 1102 emailAlias *EmailAlias 1103 } 1104 1105 func NewCreateMailgroupAliasReqBuilder() *CreateMailgroupAliasReqBuilder { 1106 builder := &CreateMailgroupAliasReqBuilder{} 1107 builder.apiReq = &larkcore.ApiReq{ 1108 PathParams: larkcore.PathParams{}, 1109 QueryParams: larkcore.QueryParams{}, 1110 } 1111 return builder 1112 } 1113 1114 // 邮件组id或邮件组邮箱地址 1115 // 1116 // 示例值:xxxxxx 或者 xxx@xx.xxx 1117 func (builder *CreateMailgroupAliasReqBuilder) MailgroupId(mailgroupId string) *CreateMailgroupAliasReqBuilder { 1118 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1119 return builder 1120 } 1121 1122 // 创建邮件组别名 1123 func (builder *CreateMailgroupAliasReqBuilder) EmailAlias(emailAlias *EmailAlias) *CreateMailgroupAliasReqBuilder { 1124 builder.emailAlias = emailAlias 1125 return builder 1126 } 1127 1128 func (builder *CreateMailgroupAliasReqBuilder) Build() *CreateMailgroupAliasReq { 1129 req := &CreateMailgroupAliasReq{} 1130 req.apiReq = &larkcore.ApiReq{} 1131 req.apiReq.PathParams = builder.apiReq.PathParams 1132 req.apiReq.Body = builder.emailAlias 1133 return req 1134 } 1135 1136 type CreateMailgroupAliasReq struct { 1137 apiReq *larkcore.ApiReq 1138 EmailAlias *EmailAlias `body:""` 1139 } 1140 1141 type CreateMailgroupAliasRespData struct { 1142 MailgroupAlias *EmailAlias `json:"mailgroup_alias,omitempty"` // 邮件组别名 1143 } 1144 1145 type CreateMailgroupAliasResp struct { 1146 *larkcore.ApiResp `json:"-"` 1147 larkcore.CodeError 1148 Data *CreateMailgroupAliasRespData `json:"data"` // 业务数据 1149 } 1150 1151 func (resp *CreateMailgroupAliasResp) Success() bool { 1152 return resp.Code == 0 1153 } 1154 1155 type DeleteMailgroupAliasReqBuilder struct { 1156 apiReq *larkcore.ApiReq 1157 } 1158 1159 func NewDeleteMailgroupAliasReqBuilder() *DeleteMailgroupAliasReqBuilder { 1160 builder := &DeleteMailgroupAliasReqBuilder{} 1161 builder.apiReq = &larkcore.ApiReq{ 1162 PathParams: larkcore.PathParams{}, 1163 QueryParams: larkcore.QueryParams{}, 1164 } 1165 return builder 1166 } 1167 1168 // 邮件组id或邮件组邮箱地址 1169 // 1170 // 示例值:xxxxxx 或 test_group@xx.xxx 1171 func (builder *DeleteMailgroupAliasReqBuilder) MailgroupId(mailgroupId string) *DeleteMailgroupAliasReqBuilder { 1172 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1173 return builder 1174 } 1175 1176 // 邮件组别名邮箱地址 1177 // 1178 // 示例值:xxx@xx.xxx 1179 func (builder *DeleteMailgroupAliasReqBuilder) AliasId(aliasId string) *DeleteMailgroupAliasReqBuilder { 1180 builder.apiReq.PathParams.Set("alias_id", fmt.Sprint(aliasId)) 1181 return builder 1182 } 1183 1184 func (builder *DeleteMailgroupAliasReqBuilder) Build() *DeleteMailgroupAliasReq { 1185 req := &DeleteMailgroupAliasReq{} 1186 req.apiReq = &larkcore.ApiReq{} 1187 req.apiReq.PathParams = builder.apiReq.PathParams 1188 return req 1189 } 1190 1191 type DeleteMailgroupAliasReq struct { 1192 apiReq *larkcore.ApiReq 1193 } 1194 1195 type DeleteMailgroupAliasResp struct { 1196 *larkcore.ApiResp `json:"-"` 1197 larkcore.CodeError 1198 } 1199 1200 func (resp *DeleteMailgroupAliasResp) Success() bool { 1201 return resp.Code == 0 1202 } 1203 1204 type ListMailgroupAliasReqBuilder struct { 1205 apiReq *larkcore.ApiReq 1206 } 1207 1208 func NewListMailgroupAliasReqBuilder() *ListMailgroupAliasReqBuilder { 1209 builder := &ListMailgroupAliasReqBuilder{} 1210 builder.apiReq = &larkcore.ApiReq{ 1211 PathParams: larkcore.PathParams{}, 1212 QueryParams: larkcore.QueryParams{}, 1213 } 1214 return builder 1215 } 1216 1217 // 邮件组id或邮件组邮箱地址 1218 // 1219 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 1220 func (builder *ListMailgroupAliasReqBuilder) MailgroupId(mailgroupId string) *ListMailgroupAliasReqBuilder { 1221 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1222 return builder 1223 } 1224 1225 func (builder *ListMailgroupAliasReqBuilder) Build() *ListMailgroupAliasReq { 1226 req := &ListMailgroupAliasReq{} 1227 req.apiReq = &larkcore.ApiReq{} 1228 req.apiReq.PathParams = builder.apiReq.PathParams 1229 return req 1230 } 1231 1232 type ListMailgroupAliasReq struct { 1233 apiReq *larkcore.ApiReq 1234 } 1235 1236 type ListMailgroupAliasRespData struct { 1237 Items []*EmailAlias `json:"items,omitempty"` // 邮件组别名 1238 } 1239 1240 type ListMailgroupAliasResp struct { 1241 *larkcore.ApiResp `json:"-"` 1242 larkcore.CodeError 1243 Data *ListMailgroupAliasRespData `json:"data"` // 业务数据 1244 } 1245 1246 func (resp *ListMailgroupAliasResp) Success() bool { 1247 return resp.Code == 0 1248 } 1249 1250 type CreateMailgroupMemberReqBuilder struct { 1251 apiReq *larkcore.ApiReq 1252 mailgroupMember *MailgroupMember 1253 } 1254 1255 func NewCreateMailgroupMemberReqBuilder() *CreateMailgroupMemberReqBuilder { 1256 builder := &CreateMailgroupMemberReqBuilder{} 1257 builder.apiReq = &larkcore.ApiReq{ 1258 PathParams: larkcore.PathParams{}, 1259 QueryParams: larkcore.QueryParams{}, 1260 } 1261 return builder 1262 } 1263 1264 // 邮件组ID或者邮件组地址 1265 // 1266 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 1267 func (builder *CreateMailgroupMemberReqBuilder) MailgroupId(mailgroupId string) *CreateMailgroupMemberReqBuilder { 1268 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1269 return builder 1270 } 1271 1272 // 此次调用中使用的用户ID的类型 1273 // 1274 // 示例值: 1275 func (builder *CreateMailgroupMemberReqBuilder) UserIdType(userIdType string) *CreateMailgroupMemberReqBuilder { 1276 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 1277 return builder 1278 } 1279 1280 // 此次调用中使用的部门ID的类型 1281 // 1282 // 示例值:open_department_id 1283 func (builder *CreateMailgroupMemberReqBuilder) DepartmentIdType(departmentIdType string) *CreateMailgroupMemberReqBuilder { 1284 builder.apiReq.QueryParams.Set("department_id_type", fmt.Sprint(departmentIdType)) 1285 return builder 1286 } 1287 1288 // 向邮件组添加单个成员 1289 func (builder *CreateMailgroupMemberReqBuilder) MailgroupMember(mailgroupMember *MailgroupMember) *CreateMailgroupMemberReqBuilder { 1290 builder.mailgroupMember = mailgroupMember 1291 return builder 1292 } 1293 1294 func (builder *CreateMailgroupMemberReqBuilder) Build() *CreateMailgroupMemberReq { 1295 req := &CreateMailgroupMemberReq{} 1296 req.apiReq = &larkcore.ApiReq{} 1297 req.apiReq.PathParams = builder.apiReq.PathParams 1298 req.apiReq.QueryParams = builder.apiReq.QueryParams 1299 req.apiReq.Body = builder.mailgroupMember 1300 return req 1301 } 1302 1303 type CreateMailgroupMemberReq struct { 1304 apiReq *larkcore.ApiReq 1305 MailgroupMember *MailgroupMember `body:""` 1306 } 1307 1308 type CreateMailgroupMemberRespData struct { 1309 MemberId *string `json:"member_id,omitempty"` // The unique ID of a member in this mail group 1310 Email *string `json:"email,omitempty"` // The member's email address. Value is valid when type is one of USER/EXTERNAL_USER/MAIL_GROUP/PUBLIC_MAILBOX/OTHER_MEMBER 1311 UserId *string `json:"user_id,omitempty"` // The member's user id. Value is valid when type is USER 1312 DepartmentId *string `json:"department_id,omitempty"` // The member's department id. Value is valid when type is DEPARTMENT 1313 Type *string `json:"type,omitempty"` // The type of member. Possible values are:;- USER: internal user in the team;- DEPARTMENT: member is a department;- COMPANY: member is the company;- EXTERNAL_USER: internet user outside the organization;- MAIL_GROUP: member is another mail group;- PUBLIC_MAILBOX: member is a public mailbox;- OTHER_MEMBER: other internal member 1314 } 1315 1316 type CreateMailgroupMemberResp struct { 1317 *larkcore.ApiResp `json:"-"` 1318 larkcore.CodeError 1319 Data *CreateMailgroupMemberRespData `json:"data"` // 业务数据 1320 } 1321 1322 func (resp *CreateMailgroupMemberResp) Success() bool { 1323 return resp.Code == 0 1324 } 1325 1326 type DeleteMailgroupMemberReqBuilder struct { 1327 apiReq *larkcore.ApiReq 1328 } 1329 1330 func NewDeleteMailgroupMemberReqBuilder() *DeleteMailgroupMemberReqBuilder { 1331 builder := &DeleteMailgroupMemberReqBuilder{} 1332 builder.apiReq = &larkcore.ApiReq{ 1333 PathParams: larkcore.PathParams{}, 1334 QueryParams: larkcore.QueryParams{}, 1335 } 1336 return builder 1337 } 1338 1339 // The unique ID or email address of a mail group 1340 // 1341 // 示例值:xxxxxxxxxxxxxxx or test_mail_group@xxx.xx 1342 func (builder *DeleteMailgroupMemberReqBuilder) MailgroupId(mailgroupId string) *DeleteMailgroupMemberReqBuilder { 1343 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1344 return builder 1345 } 1346 1347 // The unique ID of a member in this mail group 1348 // 1349 // 示例值:xxxxxxxxxxxxxxx 1350 func (builder *DeleteMailgroupMemberReqBuilder) MemberId(memberId string) *DeleteMailgroupMemberReqBuilder { 1351 builder.apiReq.PathParams.Set("member_id", fmt.Sprint(memberId)) 1352 return builder 1353 } 1354 1355 func (builder *DeleteMailgroupMemberReqBuilder) Build() *DeleteMailgroupMemberReq { 1356 req := &DeleteMailgroupMemberReq{} 1357 req.apiReq = &larkcore.ApiReq{} 1358 req.apiReq.PathParams = builder.apiReq.PathParams 1359 return req 1360 } 1361 1362 type DeleteMailgroupMemberReq struct { 1363 apiReq *larkcore.ApiReq 1364 } 1365 1366 type DeleteMailgroupMemberResp struct { 1367 *larkcore.ApiResp `json:"-"` 1368 larkcore.CodeError 1369 } 1370 1371 func (resp *DeleteMailgroupMemberResp) Success() bool { 1372 return resp.Code == 0 1373 } 1374 1375 type GetMailgroupMemberReqBuilder struct { 1376 apiReq *larkcore.ApiReq 1377 } 1378 1379 func NewGetMailgroupMemberReqBuilder() *GetMailgroupMemberReqBuilder { 1380 builder := &GetMailgroupMemberReqBuilder{} 1381 builder.apiReq = &larkcore.ApiReq{ 1382 PathParams: larkcore.PathParams{}, 1383 QueryParams: larkcore.QueryParams{}, 1384 } 1385 return builder 1386 } 1387 1388 // 邮件组ID或者邮件组地址 1389 // 1390 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 1391 func (builder *GetMailgroupMemberReqBuilder) MailgroupId(mailgroupId string) *GetMailgroupMemberReqBuilder { 1392 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1393 return builder 1394 } 1395 1396 // 邮件组内成员唯一标识 1397 // 1398 // 示例值:xxxxxxxxxxxxxxx 1399 func (builder *GetMailgroupMemberReqBuilder) MemberId(memberId string) *GetMailgroupMemberReqBuilder { 1400 builder.apiReq.PathParams.Set("member_id", fmt.Sprint(memberId)) 1401 return builder 1402 } 1403 1404 // 此次调用中使用的用户ID的类型 1405 // 1406 // 示例值: 1407 func (builder *GetMailgroupMemberReqBuilder) UserIdType(userIdType string) *GetMailgroupMemberReqBuilder { 1408 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 1409 return builder 1410 } 1411 1412 // 此次调用中使用的部门ID的类型 1413 // 1414 // 示例值:open_department_id 1415 func (builder *GetMailgroupMemberReqBuilder) DepartmentIdType(departmentIdType string) *GetMailgroupMemberReqBuilder { 1416 builder.apiReq.QueryParams.Set("department_id_type", fmt.Sprint(departmentIdType)) 1417 return builder 1418 } 1419 1420 func (builder *GetMailgroupMemberReqBuilder) Build() *GetMailgroupMemberReq { 1421 req := &GetMailgroupMemberReq{} 1422 req.apiReq = &larkcore.ApiReq{} 1423 req.apiReq.PathParams = builder.apiReq.PathParams 1424 req.apiReq.QueryParams = builder.apiReq.QueryParams 1425 return req 1426 } 1427 1428 type GetMailgroupMemberReq struct { 1429 apiReq *larkcore.ApiReq 1430 } 1431 1432 type GetMailgroupMemberRespData struct { 1433 MemberId *string `json:"member_id,omitempty"` // The unique ID of a member in this mail group 1434 Email *string `json:"email,omitempty"` // The member's email address. Value is valid when type is one of USER/EXTERNAL_USER/MAIL_GROUP/PUBLIC_MAILBOX/OTHER_MEMBER 1435 UserId *string `json:"user_id,omitempty"` // The member's user id. Value is valid when type is USER 1436 DepartmentId *string `json:"department_id,omitempty"` // The member's department id. Value is valid when type is DEPARTMENT 1437 Type *string `json:"type,omitempty"` // The type of member. Possible values are:;- USER: internal user in the team;- DEPARTMENT: member is a department;- COMPANY: member is the company;- EXTERNAL_USER: internet user outside the organization;- MAIL_GROUP: member is another mail group;- PUBLIC_MAILBOX: member is a public mailbox;- OTHER_MEMBER: other internal member 1438 } 1439 1440 type GetMailgroupMemberResp struct { 1441 *larkcore.ApiResp `json:"-"` 1442 larkcore.CodeError 1443 Data *GetMailgroupMemberRespData `json:"data"` // 业务数据 1444 } 1445 1446 func (resp *GetMailgroupMemberResp) Success() bool { 1447 return resp.Code == 0 1448 } 1449 1450 type ListMailgroupMemberReqBuilder struct { 1451 apiReq *larkcore.ApiReq 1452 limit int // 最大返回多少记录,当使用迭代器访问时才有效 1453 } 1454 1455 func NewListMailgroupMemberReqBuilder() *ListMailgroupMemberReqBuilder { 1456 builder := &ListMailgroupMemberReqBuilder{} 1457 builder.apiReq = &larkcore.ApiReq{ 1458 PathParams: larkcore.PathParams{}, 1459 QueryParams: larkcore.QueryParams{}, 1460 } 1461 return builder 1462 } 1463 1464 // 最大返回多少记录,当使用迭代器访问时才有效 1465 func (builder *ListMailgroupMemberReqBuilder) Limit(limit int) *ListMailgroupMemberReqBuilder { 1466 builder.limit = limit 1467 return builder 1468 } 1469 1470 // The unique ID or email address of a mail group 1471 // 1472 // 示例值:xxxxxxxxxxxxxxx or test_mail_group@xxx.xx 1473 func (builder *ListMailgroupMemberReqBuilder) MailgroupId(mailgroupId string) *ListMailgroupMemberReqBuilder { 1474 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1475 return builder 1476 } 1477 1478 // 此次调用中使用的用户ID的类型 1479 // 1480 // 示例值: 1481 func (builder *ListMailgroupMemberReqBuilder) UserIdType(userIdType string) *ListMailgroupMemberReqBuilder { 1482 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 1483 return builder 1484 } 1485 1486 // 此次调用中使用的部门ID的类型 1487 // 1488 // 示例值:open_department_id 1489 func (builder *ListMailgroupMemberReqBuilder) DepartmentIdType(departmentIdType string) *ListMailgroupMemberReqBuilder { 1490 builder.apiReq.QueryParams.Set("department_id_type", fmt.Sprint(departmentIdType)) 1491 return builder 1492 } 1493 1494 // 1495 // 1496 // 示例值:xxx 1497 func (builder *ListMailgroupMemberReqBuilder) PageToken(pageToken string) *ListMailgroupMemberReqBuilder { 1498 builder.apiReq.QueryParams.Set("page_token", fmt.Sprint(pageToken)) 1499 return builder 1500 } 1501 1502 // 1503 // 1504 // 示例值:10 1505 func (builder *ListMailgroupMemberReqBuilder) PageSize(pageSize int) *ListMailgroupMemberReqBuilder { 1506 builder.apiReq.QueryParams.Set("page_size", fmt.Sprint(pageSize)) 1507 return builder 1508 } 1509 1510 func (builder *ListMailgroupMemberReqBuilder) Build() *ListMailgroupMemberReq { 1511 req := &ListMailgroupMemberReq{} 1512 req.apiReq = &larkcore.ApiReq{} 1513 req.Limit = builder.limit 1514 req.apiReq.PathParams = builder.apiReq.PathParams 1515 req.apiReq.QueryParams = builder.apiReq.QueryParams 1516 return req 1517 } 1518 1519 type ListMailgroupMemberReq struct { 1520 apiReq *larkcore.ApiReq 1521 Limit int // 最多返回多少记录,只有在使用迭代器访问时,才有效 1522 1523 } 1524 1525 type ListMailgroupMemberRespData struct { 1526 HasMore *bool `json:"has_more,omitempty"` // 是否有下一页数据 1527 PageToken *string `json:"page_token,omitempty"` // 下一页分页的token 1528 Items []*MailgroupMember `json:"items,omitempty"` // 邮件组成员列表 1529 } 1530 1531 type ListMailgroupMemberResp struct { 1532 *larkcore.ApiResp `json:"-"` 1533 larkcore.CodeError 1534 Data *ListMailgroupMemberRespData `json:"data"` // 业务数据 1535 } 1536 1537 func (resp *ListMailgroupMemberResp) Success() bool { 1538 return resp.Code == 0 1539 } 1540 1541 type CreateMailgroupPermissionMemberReqBuilder struct { 1542 apiReq *larkcore.ApiReq 1543 mailgroupPermissionMember *MailgroupPermissionMember 1544 } 1545 1546 func NewCreateMailgroupPermissionMemberReqBuilder() *CreateMailgroupPermissionMemberReqBuilder { 1547 builder := &CreateMailgroupPermissionMemberReqBuilder{} 1548 builder.apiReq = &larkcore.ApiReq{ 1549 PathParams: larkcore.PathParams{}, 1550 QueryParams: larkcore.QueryParams{}, 1551 } 1552 return builder 1553 } 1554 1555 // 邮件组ID或者邮件组地址 1556 // 1557 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 1558 func (builder *CreateMailgroupPermissionMemberReqBuilder) MailgroupId(mailgroupId string) *CreateMailgroupPermissionMemberReqBuilder { 1559 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1560 return builder 1561 } 1562 1563 // 此次调用中使用的用户ID的类型 1564 // 1565 // 示例值: 1566 func (builder *CreateMailgroupPermissionMemberReqBuilder) UserIdType(userIdType string) *CreateMailgroupPermissionMemberReqBuilder { 1567 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 1568 return builder 1569 } 1570 1571 // 此次调用中使用的部门ID的类型 1572 // 1573 // 示例值:xxx 1574 func (builder *CreateMailgroupPermissionMemberReqBuilder) DepartmentIdType(departmentIdType string) *CreateMailgroupPermissionMemberReqBuilder { 1575 builder.apiReq.QueryParams.Set("department_id_type", fmt.Sprint(departmentIdType)) 1576 return builder 1577 } 1578 1579 // 向邮件组添加单个自定义权限成员,添加后该成员可发送邮件到该邮件组 1580 func (builder *CreateMailgroupPermissionMemberReqBuilder) MailgroupPermissionMember(mailgroupPermissionMember *MailgroupPermissionMember) *CreateMailgroupPermissionMemberReqBuilder { 1581 builder.mailgroupPermissionMember = mailgroupPermissionMember 1582 return builder 1583 } 1584 1585 func (builder *CreateMailgroupPermissionMemberReqBuilder) Build() *CreateMailgroupPermissionMemberReq { 1586 req := &CreateMailgroupPermissionMemberReq{} 1587 req.apiReq = &larkcore.ApiReq{} 1588 req.apiReq.PathParams = builder.apiReq.PathParams 1589 req.apiReq.QueryParams = builder.apiReq.QueryParams 1590 req.apiReq.Body = builder.mailgroupPermissionMember 1591 return req 1592 } 1593 1594 type CreateMailgroupPermissionMemberReq struct { 1595 apiReq *larkcore.ApiReq 1596 MailgroupPermissionMember *MailgroupPermissionMember `body:""` 1597 } 1598 1599 type CreateMailgroupPermissionMemberRespData struct { 1600 PermissionMemberId *string `json:"permission_member_id,omitempty"` // The unique ID of a member in this permission group 1601 UserId *string `json:"user_id,omitempty"` // The member's user id. Value is valid when type is USER 1602 DepartmentId *string `json:"department_id,omitempty"` // The member's department id. Value is valid when type is DEPARTMENT 1603 Type *string `json:"type,omitempty"` // The type of member. Possible values are:;- USER: internal user in the team;- DEPARTMENT: member is a department 1604 } 1605 1606 type CreateMailgroupPermissionMemberResp struct { 1607 *larkcore.ApiResp `json:"-"` 1608 larkcore.CodeError 1609 Data *CreateMailgroupPermissionMemberRespData `json:"data"` // 业务数据 1610 } 1611 1612 func (resp *CreateMailgroupPermissionMemberResp) Success() bool { 1613 return resp.Code == 0 1614 } 1615 1616 type DeleteMailgroupPermissionMemberReqBuilder struct { 1617 apiReq *larkcore.ApiReq 1618 } 1619 1620 func NewDeleteMailgroupPermissionMemberReqBuilder() *DeleteMailgroupPermissionMemberReqBuilder { 1621 builder := &DeleteMailgroupPermissionMemberReqBuilder{} 1622 builder.apiReq = &larkcore.ApiReq{ 1623 PathParams: larkcore.PathParams{}, 1624 QueryParams: larkcore.QueryParams{}, 1625 } 1626 return builder 1627 } 1628 1629 // The unique ID or email address of a mail group 1630 // 1631 // 示例值:xxxxxxxxxxxxxxx or test_mail_group@xxx.xx 1632 func (builder *DeleteMailgroupPermissionMemberReqBuilder) MailgroupId(mailgroupId string) *DeleteMailgroupPermissionMemberReqBuilder { 1633 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1634 return builder 1635 } 1636 1637 // The unique ID of a member in this permission group 1638 // 1639 // 示例值:xxxxxxxxxxxxxxx 1640 func (builder *DeleteMailgroupPermissionMemberReqBuilder) PermissionMemberId(permissionMemberId string) *DeleteMailgroupPermissionMemberReqBuilder { 1641 builder.apiReq.PathParams.Set("permission_member_id", fmt.Sprint(permissionMemberId)) 1642 return builder 1643 } 1644 1645 func (builder *DeleteMailgroupPermissionMemberReqBuilder) Build() *DeleteMailgroupPermissionMemberReq { 1646 req := &DeleteMailgroupPermissionMemberReq{} 1647 req.apiReq = &larkcore.ApiReq{} 1648 req.apiReq.PathParams = builder.apiReq.PathParams 1649 return req 1650 } 1651 1652 type DeleteMailgroupPermissionMemberReq struct { 1653 apiReq *larkcore.ApiReq 1654 } 1655 1656 type DeleteMailgroupPermissionMemberResp struct { 1657 *larkcore.ApiResp `json:"-"` 1658 larkcore.CodeError 1659 } 1660 1661 func (resp *DeleteMailgroupPermissionMemberResp) Success() bool { 1662 return resp.Code == 0 1663 } 1664 1665 type GetMailgroupPermissionMemberReqBuilder struct { 1666 apiReq *larkcore.ApiReq 1667 } 1668 1669 func NewGetMailgroupPermissionMemberReqBuilder() *GetMailgroupPermissionMemberReqBuilder { 1670 builder := &GetMailgroupPermissionMemberReqBuilder{} 1671 builder.apiReq = &larkcore.ApiReq{ 1672 PathParams: larkcore.PathParams{}, 1673 QueryParams: larkcore.QueryParams{}, 1674 } 1675 return builder 1676 } 1677 1678 // 邮件组ID或者邮件组地址 1679 // 1680 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 1681 func (builder *GetMailgroupPermissionMemberReqBuilder) MailgroupId(mailgroupId string) *GetMailgroupPermissionMemberReqBuilder { 1682 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1683 return builder 1684 } 1685 1686 // 权限组内成员唯一标识 1687 // 1688 // 示例值:xxxxxxxxxxxxxxx 1689 func (builder *GetMailgroupPermissionMemberReqBuilder) PermissionMemberId(permissionMemberId string) *GetMailgroupPermissionMemberReqBuilder { 1690 builder.apiReq.PathParams.Set("permission_member_id", fmt.Sprint(permissionMemberId)) 1691 return builder 1692 } 1693 1694 // 此次调用中使用的用户ID的类型 1695 // 1696 // 示例值: 1697 func (builder *GetMailgroupPermissionMemberReqBuilder) UserIdType(userIdType string) *GetMailgroupPermissionMemberReqBuilder { 1698 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 1699 return builder 1700 } 1701 1702 // 此次调用中使用的部门ID的类型 1703 // 1704 // 示例值:open_department_id 1705 func (builder *GetMailgroupPermissionMemberReqBuilder) DepartmentIdType(departmentIdType string) *GetMailgroupPermissionMemberReqBuilder { 1706 builder.apiReq.QueryParams.Set("department_id_type", fmt.Sprint(departmentIdType)) 1707 return builder 1708 } 1709 1710 func (builder *GetMailgroupPermissionMemberReqBuilder) Build() *GetMailgroupPermissionMemberReq { 1711 req := &GetMailgroupPermissionMemberReq{} 1712 req.apiReq = &larkcore.ApiReq{} 1713 req.apiReq.PathParams = builder.apiReq.PathParams 1714 req.apiReq.QueryParams = builder.apiReq.QueryParams 1715 return req 1716 } 1717 1718 type GetMailgroupPermissionMemberReq struct { 1719 apiReq *larkcore.ApiReq 1720 } 1721 1722 type GetMailgroupPermissionMemberRespData struct { 1723 PermissionMemberId *string `json:"permission_member_id,omitempty"` // The unique ID of a member in this permission group 1724 UserId *string `json:"user_id,omitempty"` // The member's user id. Value is valid when type is USER 1725 DepartmentId *string `json:"department_id,omitempty"` // The member's department id. Value is valid when type is DEPARTMENT 1726 Type *string `json:"type,omitempty"` // The type of member. Possible values are:;- USER: internal user in the team;- DEPARTMENT: member is a department 1727 } 1728 1729 type GetMailgroupPermissionMemberResp struct { 1730 *larkcore.ApiResp `json:"-"` 1731 larkcore.CodeError 1732 Data *GetMailgroupPermissionMemberRespData `json:"data"` // 业务数据 1733 } 1734 1735 func (resp *GetMailgroupPermissionMemberResp) Success() bool { 1736 return resp.Code == 0 1737 } 1738 1739 type ListMailgroupPermissionMemberReqBuilder struct { 1740 apiReq *larkcore.ApiReq 1741 limit int // 最大返回多少记录,当使用迭代器访问时才有效 1742 } 1743 1744 func NewListMailgroupPermissionMemberReqBuilder() *ListMailgroupPermissionMemberReqBuilder { 1745 builder := &ListMailgroupPermissionMemberReqBuilder{} 1746 builder.apiReq = &larkcore.ApiReq{ 1747 PathParams: larkcore.PathParams{}, 1748 QueryParams: larkcore.QueryParams{}, 1749 } 1750 return builder 1751 } 1752 1753 // 最大返回多少记录,当使用迭代器访问时才有效 1754 func (builder *ListMailgroupPermissionMemberReqBuilder) Limit(limit int) *ListMailgroupPermissionMemberReqBuilder { 1755 builder.limit = limit 1756 return builder 1757 } 1758 1759 // 邮件组ID或者邮件组地址 1760 // 1761 // 示例值:xxxxxxxxxxxxxxx 或 test_mail_group@xxx.xx 1762 func (builder *ListMailgroupPermissionMemberReqBuilder) MailgroupId(mailgroupId string) *ListMailgroupPermissionMemberReqBuilder { 1763 builder.apiReq.PathParams.Set("mailgroup_id", fmt.Sprint(mailgroupId)) 1764 return builder 1765 } 1766 1767 // 此次调用中使用的用户ID的类型 1768 // 1769 // 示例值: 1770 func (builder *ListMailgroupPermissionMemberReqBuilder) UserIdType(userIdType string) *ListMailgroupPermissionMemberReqBuilder { 1771 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 1772 return builder 1773 } 1774 1775 // 此次调用中使用的部门ID的类型 1776 // 1777 // 示例值:open_department_id 1778 func (builder *ListMailgroupPermissionMemberReqBuilder) DepartmentIdType(departmentIdType string) *ListMailgroupPermissionMemberReqBuilder { 1779 builder.apiReq.QueryParams.Set("department_id_type", fmt.Sprint(departmentIdType)) 1780 return builder 1781 } 1782 1783 // 1784 // 1785 // 示例值:xxx 1786 func (builder *ListMailgroupPermissionMemberReqBuilder) PageToken(pageToken string) *ListMailgroupPermissionMemberReqBuilder { 1787 builder.apiReq.QueryParams.Set("page_token", fmt.Sprint(pageToken)) 1788 return builder 1789 } 1790 1791 // 1792 // 1793 // 示例值:10 1794 func (builder *ListMailgroupPermissionMemberReqBuilder) PageSize(pageSize int) *ListMailgroupPermissionMemberReqBuilder { 1795 builder.apiReq.QueryParams.Set("page_size", fmt.Sprint(pageSize)) 1796 return builder 1797 } 1798 1799 func (builder *ListMailgroupPermissionMemberReqBuilder) Build() *ListMailgroupPermissionMemberReq { 1800 req := &ListMailgroupPermissionMemberReq{} 1801 req.apiReq = &larkcore.ApiReq{} 1802 req.Limit = builder.limit 1803 req.apiReq.PathParams = builder.apiReq.PathParams 1804 req.apiReq.QueryParams = builder.apiReq.QueryParams 1805 return req 1806 } 1807 1808 type ListMailgroupPermissionMemberReq struct { 1809 apiReq *larkcore.ApiReq 1810 Limit int // 最多返回多少记录,只有在使用迭代器访问时,才有效 1811 1812 } 1813 1814 type ListMailgroupPermissionMemberRespData struct { 1815 HasMore *bool `json:"has_more,omitempty"` // 是否有下一页数据 1816 PageToken *string `json:"page_token,omitempty"` // 下一页分页的token 1817 Items []*MailgroupPermissionMember `json:"items,omitempty"` // 邮件组权限成员列表 1818 } 1819 1820 type ListMailgroupPermissionMemberResp struct { 1821 *larkcore.ApiResp `json:"-"` 1822 larkcore.CodeError 1823 Data *ListMailgroupPermissionMemberRespData `json:"data"` // 业务数据 1824 } 1825 1826 func (resp *ListMailgroupPermissionMemberResp) Success() bool { 1827 return resp.Code == 0 1828 } 1829 1830 type CreatePublicMailboxReqBuilder struct { 1831 apiReq *larkcore.ApiReq 1832 publicMailbox *PublicMailbox 1833 } 1834 1835 func NewCreatePublicMailboxReqBuilder() *CreatePublicMailboxReqBuilder { 1836 builder := &CreatePublicMailboxReqBuilder{} 1837 builder.apiReq = &larkcore.ApiReq{ 1838 PathParams: larkcore.PathParams{}, 1839 QueryParams: larkcore.QueryParams{}, 1840 } 1841 return builder 1842 } 1843 1844 // 创建一个公共邮箱 1845 func (builder *CreatePublicMailboxReqBuilder) PublicMailbox(publicMailbox *PublicMailbox) *CreatePublicMailboxReqBuilder { 1846 builder.publicMailbox = publicMailbox 1847 return builder 1848 } 1849 1850 func (builder *CreatePublicMailboxReqBuilder) Build() *CreatePublicMailboxReq { 1851 req := &CreatePublicMailboxReq{} 1852 req.apiReq = &larkcore.ApiReq{} 1853 req.apiReq.Body = builder.publicMailbox 1854 return req 1855 } 1856 1857 type CreatePublicMailboxReq struct { 1858 apiReq *larkcore.ApiReq 1859 PublicMailbox *PublicMailbox `body:""` 1860 } 1861 1862 type CreatePublicMailboxRespData struct { 1863 PublicMailboxId *string `json:"public_mailbox_id,omitempty"` // The unique ID of a public mailbox 1864 Email *string `json:"email,omitempty"` // The public mailbox's email address 1865 Name *string `json:"name,omitempty"` // The public mailbox's display name 1866 } 1867 1868 type CreatePublicMailboxResp struct { 1869 *larkcore.ApiResp `json:"-"` 1870 larkcore.CodeError 1871 Data *CreatePublicMailboxRespData `json:"data"` // 业务数据 1872 } 1873 1874 func (resp *CreatePublicMailboxResp) Success() bool { 1875 return resp.Code == 0 1876 } 1877 1878 type DeletePublicMailboxReqBuilder struct { 1879 apiReq *larkcore.ApiReq 1880 } 1881 1882 func NewDeletePublicMailboxReqBuilder() *DeletePublicMailboxReqBuilder { 1883 builder := &DeletePublicMailboxReqBuilder{} 1884 builder.apiReq = &larkcore.ApiReq{ 1885 PathParams: larkcore.PathParams{}, 1886 QueryParams: larkcore.QueryParams{}, 1887 } 1888 return builder 1889 } 1890 1891 // 要释放的公共邮箱地址 1892 // 1893 // 示例值:xxxxxx@abc.com 1894 func (builder *DeletePublicMailboxReqBuilder) PublicMailboxId(publicMailboxId string) *DeletePublicMailboxReqBuilder { 1895 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 1896 return builder 1897 } 1898 1899 func (builder *DeletePublicMailboxReqBuilder) Build() *DeletePublicMailboxReq { 1900 req := &DeletePublicMailboxReq{} 1901 req.apiReq = &larkcore.ApiReq{} 1902 req.apiReq.PathParams = builder.apiReq.PathParams 1903 return req 1904 } 1905 1906 type DeletePublicMailboxReq struct { 1907 apiReq *larkcore.ApiReq 1908 } 1909 1910 type DeletePublicMailboxResp struct { 1911 *larkcore.ApiResp `json:"-"` 1912 larkcore.CodeError 1913 } 1914 1915 func (resp *DeletePublicMailboxResp) Success() bool { 1916 return resp.Code == 0 1917 } 1918 1919 type GetPublicMailboxReqBuilder struct { 1920 apiReq *larkcore.ApiReq 1921 } 1922 1923 func NewGetPublicMailboxReqBuilder() *GetPublicMailboxReqBuilder { 1924 builder := &GetPublicMailboxReqBuilder{} 1925 builder.apiReq = &larkcore.ApiReq{ 1926 PathParams: larkcore.PathParams{}, 1927 QueryParams: larkcore.QueryParams{}, 1928 } 1929 return builder 1930 } 1931 1932 // 公共邮箱唯一标识或公共邮箱地址 1933 // 1934 // 示例值:xxxxxxxxxxxxxxx 或 test_public_mailbox@xxx.xx 1935 func (builder *GetPublicMailboxReqBuilder) PublicMailboxId(publicMailboxId string) *GetPublicMailboxReqBuilder { 1936 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 1937 return builder 1938 } 1939 1940 func (builder *GetPublicMailboxReqBuilder) Build() *GetPublicMailboxReq { 1941 req := &GetPublicMailboxReq{} 1942 req.apiReq = &larkcore.ApiReq{} 1943 req.apiReq.PathParams = builder.apiReq.PathParams 1944 return req 1945 } 1946 1947 type GetPublicMailboxReq struct { 1948 apiReq *larkcore.ApiReq 1949 } 1950 1951 type GetPublicMailboxRespData struct { 1952 PublicMailboxId *string `json:"public_mailbox_id,omitempty"` // The unique ID of a public mailbox 1953 Email *string `json:"email,omitempty"` // The public mailbox's email address 1954 Name *string `json:"name,omitempty"` // The public mailbox's display name 1955 } 1956 1957 type GetPublicMailboxResp struct { 1958 *larkcore.ApiResp `json:"-"` 1959 larkcore.CodeError 1960 Data *GetPublicMailboxRespData `json:"data"` // 业务数据 1961 } 1962 1963 func (resp *GetPublicMailboxResp) Success() bool { 1964 return resp.Code == 0 1965 } 1966 1967 type ListPublicMailboxReqBuilder struct { 1968 apiReq *larkcore.ApiReq 1969 limit int // 最大返回多少记录,当使用迭代器访问时才有效 1970 } 1971 1972 func NewListPublicMailboxReqBuilder() *ListPublicMailboxReqBuilder { 1973 builder := &ListPublicMailboxReqBuilder{} 1974 builder.apiReq = &larkcore.ApiReq{ 1975 PathParams: larkcore.PathParams{}, 1976 QueryParams: larkcore.QueryParams{}, 1977 } 1978 return builder 1979 } 1980 1981 // 最大返回多少记录,当使用迭代器访问时才有效 1982 func (builder *ListPublicMailboxReqBuilder) Limit(limit int) *ListPublicMailboxReqBuilder { 1983 builder.limit = limit 1984 return builder 1985 } 1986 1987 // 1988 // 1989 // 示例值:xxx 1990 func (builder *ListPublicMailboxReqBuilder) PageToken(pageToken string) *ListPublicMailboxReqBuilder { 1991 builder.apiReq.QueryParams.Set("page_token", fmt.Sprint(pageToken)) 1992 return builder 1993 } 1994 1995 // 1996 // 1997 // 示例值:10 1998 func (builder *ListPublicMailboxReqBuilder) PageSize(pageSize int) *ListPublicMailboxReqBuilder { 1999 builder.apiReq.QueryParams.Set("page_size", fmt.Sprint(pageSize)) 2000 return builder 2001 } 2002 2003 func (builder *ListPublicMailboxReqBuilder) Build() *ListPublicMailboxReq { 2004 req := &ListPublicMailboxReq{} 2005 req.apiReq = &larkcore.ApiReq{} 2006 req.Limit = builder.limit 2007 req.apiReq.QueryParams = builder.apiReq.QueryParams 2008 return req 2009 } 2010 2011 type ListPublicMailboxReq struct { 2012 apiReq *larkcore.ApiReq 2013 Limit int // 最多返回多少记录,只有在使用迭代器访问时,才有效 2014 2015 } 2016 2017 type ListPublicMailboxRespData struct { 2018 HasMore *bool `json:"has_more,omitempty"` // 是否有下一页数据 2019 PageToken *string `json:"page_token,omitempty"` // 下一页分页的token 2020 Items []*PublicMailbox `json:"items,omitempty"` // 公共邮箱列表 2021 } 2022 2023 type ListPublicMailboxResp struct { 2024 *larkcore.ApiResp `json:"-"` 2025 larkcore.CodeError 2026 Data *ListPublicMailboxRespData `json:"data"` // 业务数据 2027 } 2028 2029 func (resp *ListPublicMailboxResp) Success() bool { 2030 return resp.Code == 0 2031 } 2032 2033 type PatchPublicMailboxReqBuilder struct { 2034 apiReq *larkcore.ApiReq 2035 publicMailbox *PublicMailbox 2036 } 2037 2038 func NewPatchPublicMailboxReqBuilder() *PatchPublicMailboxReqBuilder { 2039 builder := &PatchPublicMailboxReqBuilder{} 2040 builder.apiReq = &larkcore.ApiReq{ 2041 PathParams: larkcore.PathParams{}, 2042 QueryParams: larkcore.QueryParams{}, 2043 } 2044 return builder 2045 } 2046 2047 // 公共邮箱唯一标识或公共邮箱地址 2048 // 2049 // 示例值:xxxxxxxxxxxxxxx 或 test_public_mailbox@xxx.xx 2050 func (builder *PatchPublicMailboxReqBuilder) PublicMailboxId(publicMailboxId string) *PatchPublicMailboxReqBuilder { 2051 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2052 return builder 2053 } 2054 2055 // 更新公共邮箱部分字段,没有填写的字段不会被更新 2056 func (builder *PatchPublicMailboxReqBuilder) PublicMailbox(publicMailbox *PublicMailbox) *PatchPublicMailboxReqBuilder { 2057 builder.publicMailbox = publicMailbox 2058 return builder 2059 } 2060 2061 func (builder *PatchPublicMailboxReqBuilder) Build() *PatchPublicMailboxReq { 2062 req := &PatchPublicMailboxReq{} 2063 req.apiReq = &larkcore.ApiReq{} 2064 req.apiReq.PathParams = builder.apiReq.PathParams 2065 req.apiReq.Body = builder.publicMailbox 2066 return req 2067 } 2068 2069 type PatchPublicMailboxReq struct { 2070 apiReq *larkcore.ApiReq 2071 PublicMailbox *PublicMailbox `body:""` 2072 } 2073 2074 type PatchPublicMailboxRespData struct { 2075 PublicMailboxId *string `json:"public_mailbox_id,omitempty"` // The unique ID of a public mailbox 2076 Email *string `json:"email,omitempty"` // The public mailbox's email address 2077 Name *string `json:"name,omitempty"` // The public mailbox's display name 2078 } 2079 2080 type PatchPublicMailboxResp struct { 2081 *larkcore.ApiResp `json:"-"` 2082 larkcore.CodeError 2083 Data *PatchPublicMailboxRespData `json:"data"` // 业务数据 2084 } 2085 2086 func (resp *PatchPublicMailboxResp) Success() bool { 2087 return resp.Code == 0 2088 } 2089 2090 type UpdatePublicMailboxReqBuilder struct { 2091 apiReq *larkcore.ApiReq 2092 publicMailbox *PublicMailbox 2093 } 2094 2095 func NewUpdatePublicMailboxReqBuilder() *UpdatePublicMailboxReqBuilder { 2096 builder := &UpdatePublicMailboxReqBuilder{} 2097 builder.apiReq = &larkcore.ApiReq{ 2098 PathParams: larkcore.PathParams{}, 2099 QueryParams: larkcore.QueryParams{}, 2100 } 2101 return builder 2102 } 2103 2104 // 公共邮箱唯一标识或公共邮箱地址 2105 // 2106 // 示例值:xxxxxxxxxxxxxxx 或 test_public_mailbox@xxx.xx 2107 func (builder *UpdatePublicMailboxReqBuilder) PublicMailboxId(publicMailboxId string) *UpdatePublicMailboxReqBuilder { 2108 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2109 return builder 2110 } 2111 2112 // 更新公共邮箱所有信息 2113 func (builder *UpdatePublicMailboxReqBuilder) PublicMailbox(publicMailbox *PublicMailbox) *UpdatePublicMailboxReqBuilder { 2114 builder.publicMailbox = publicMailbox 2115 return builder 2116 } 2117 2118 func (builder *UpdatePublicMailboxReqBuilder) Build() *UpdatePublicMailboxReq { 2119 req := &UpdatePublicMailboxReq{} 2120 req.apiReq = &larkcore.ApiReq{} 2121 req.apiReq.PathParams = builder.apiReq.PathParams 2122 req.apiReq.Body = builder.publicMailbox 2123 return req 2124 } 2125 2126 type UpdatePublicMailboxReq struct { 2127 apiReq *larkcore.ApiReq 2128 PublicMailbox *PublicMailbox `body:""` 2129 } 2130 2131 type UpdatePublicMailboxRespData struct { 2132 PublicMailboxId *string `json:"public_mailbox_id,omitempty"` // The unique ID of a public mailbox 2133 Email *string `json:"email,omitempty"` // The public mailbox's email address 2134 Name *string `json:"name,omitempty"` // The public mailbox's display name 2135 } 2136 2137 type UpdatePublicMailboxResp struct { 2138 *larkcore.ApiResp `json:"-"` 2139 larkcore.CodeError 2140 Data *UpdatePublicMailboxRespData `json:"data"` // 业务数据 2141 } 2142 2143 func (resp *UpdatePublicMailboxResp) Success() bool { 2144 return resp.Code == 0 2145 } 2146 2147 type CreatePublicMailboxAliasReqBuilder struct { 2148 apiReq *larkcore.ApiReq 2149 emailAlias *EmailAlias 2150 } 2151 2152 func NewCreatePublicMailboxAliasReqBuilder() *CreatePublicMailboxAliasReqBuilder { 2153 builder := &CreatePublicMailboxAliasReqBuilder{} 2154 builder.apiReq = &larkcore.ApiReq{ 2155 PathParams: larkcore.PathParams{}, 2156 QueryParams: larkcore.QueryParams{}, 2157 } 2158 return builder 2159 } 2160 2161 // 公共邮箱id或公共邮箱地址 2162 // 2163 // 示例值:xxxxxx 或 xxx@xx.xxx 2164 func (builder *CreatePublicMailboxAliasReqBuilder) PublicMailboxId(publicMailboxId string) *CreatePublicMailboxAliasReqBuilder { 2165 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2166 return builder 2167 } 2168 2169 // 创建公共邮箱别名 2170 func (builder *CreatePublicMailboxAliasReqBuilder) EmailAlias(emailAlias *EmailAlias) *CreatePublicMailboxAliasReqBuilder { 2171 builder.emailAlias = emailAlias 2172 return builder 2173 } 2174 2175 func (builder *CreatePublicMailboxAliasReqBuilder) Build() *CreatePublicMailboxAliasReq { 2176 req := &CreatePublicMailboxAliasReq{} 2177 req.apiReq = &larkcore.ApiReq{} 2178 req.apiReq.PathParams = builder.apiReq.PathParams 2179 req.apiReq.Body = builder.emailAlias 2180 return req 2181 } 2182 2183 type CreatePublicMailboxAliasReq struct { 2184 apiReq *larkcore.ApiReq 2185 EmailAlias *EmailAlias `body:""` 2186 } 2187 2188 type CreatePublicMailboxAliasRespData struct { 2189 PublicMailboxAlias *EmailAlias `json:"public_mailbox_alias,omitempty"` // 公共邮箱别名 2190 } 2191 2192 type CreatePublicMailboxAliasResp struct { 2193 *larkcore.ApiResp `json:"-"` 2194 larkcore.CodeError 2195 Data *CreatePublicMailboxAliasRespData `json:"data"` // 业务数据 2196 } 2197 2198 func (resp *CreatePublicMailboxAliasResp) Success() bool { 2199 return resp.Code == 0 2200 } 2201 2202 type DeletePublicMailboxAliasReqBuilder struct { 2203 apiReq *larkcore.ApiReq 2204 } 2205 2206 func NewDeletePublicMailboxAliasReqBuilder() *DeletePublicMailboxAliasReqBuilder { 2207 builder := &DeletePublicMailboxAliasReqBuilder{} 2208 builder.apiReq = &larkcore.ApiReq{ 2209 PathParams: larkcore.PathParams{}, 2210 QueryParams: larkcore.QueryParams{}, 2211 } 2212 return builder 2213 } 2214 2215 // 公共邮箱id或公共邮箱地址 2216 // 2217 // 示例值:xxxxxx 或 xxx@xx.xxx 2218 func (builder *DeletePublicMailboxAliasReqBuilder) PublicMailboxId(publicMailboxId string) *DeletePublicMailboxAliasReqBuilder { 2219 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2220 return builder 2221 } 2222 2223 // 公共邮箱别名 2224 // 2225 // 示例值:xxx@xx.xxx 2226 func (builder *DeletePublicMailboxAliasReqBuilder) AliasId(aliasId string) *DeletePublicMailboxAliasReqBuilder { 2227 builder.apiReq.PathParams.Set("alias_id", fmt.Sprint(aliasId)) 2228 return builder 2229 } 2230 2231 func (builder *DeletePublicMailboxAliasReqBuilder) Build() *DeletePublicMailboxAliasReq { 2232 req := &DeletePublicMailboxAliasReq{} 2233 req.apiReq = &larkcore.ApiReq{} 2234 req.apiReq.PathParams = builder.apiReq.PathParams 2235 return req 2236 } 2237 2238 type DeletePublicMailboxAliasReq struct { 2239 apiReq *larkcore.ApiReq 2240 } 2241 2242 type DeletePublicMailboxAliasResp struct { 2243 *larkcore.ApiResp `json:"-"` 2244 larkcore.CodeError 2245 } 2246 2247 func (resp *DeletePublicMailboxAliasResp) Success() bool { 2248 return resp.Code == 0 2249 } 2250 2251 type ListPublicMailboxAliasReqBuilder struct { 2252 apiReq *larkcore.ApiReq 2253 } 2254 2255 func NewListPublicMailboxAliasReqBuilder() *ListPublicMailboxAliasReqBuilder { 2256 builder := &ListPublicMailboxAliasReqBuilder{} 2257 builder.apiReq = &larkcore.ApiReq{ 2258 PathParams: larkcore.PathParams{}, 2259 QueryParams: larkcore.QueryParams{}, 2260 } 2261 return builder 2262 } 2263 2264 // 公共邮箱id或公共邮箱邮件地址 2265 // 2266 // 示例值:xxxxxx 或 xxx@xx.xxx 2267 func (builder *ListPublicMailboxAliasReqBuilder) PublicMailboxId(publicMailboxId string) *ListPublicMailboxAliasReqBuilder { 2268 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2269 return builder 2270 } 2271 2272 func (builder *ListPublicMailboxAliasReqBuilder) Build() *ListPublicMailboxAliasReq { 2273 req := &ListPublicMailboxAliasReq{} 2274 req.apiReq = &larkcore.ApiReq{} 2275 req.apiReq.PathParams = builder.apiReq.PathParams 2276 return req 2277 } 2278 2279 type ListPublicMailboxAliasReq struct { 2280 apiReq *larkcore.ApiReq 2281 } 2282 2283 type ListPublicMailboxAliasRespData struct { 2284 Items []*EmailAlias `json:"items,omitempty"` // 公共邮箱别名 2285 } 2286 2287 type ListPublicMailboxAliasResp struct { 2288 *larkcore.ApiResp `json:"-"` 2289 larkcore.CodeError 2290 Data *ListPublicMailboxAliasRespData `json:"data"` // 业务数据 2291 } 2292 2293 func (resp *ListPublicMailboxAliasResp) Success() bool { 2294 return resp.Code == 0 2295 } 2296 2297 type ClearPublicMailboxMemberReqBuilder struct { 2298 apiReq *larkcore.ApiReq 2299 } 2300 2301 func NewClearPublicMailboxMemberReqBuilder() *ClearPublicMailboxMemberReqBuilder { 2302 builder := &ClearPublicMailboxMemberReqBuilder{} 2303 builder.apiReq = &larkcore.ApiReq{ 2304 PathParams: larkcore.PathParams{}, 2305 QueryParams: larkcore.QueryParams{}, 2306 } 2307 return builder 2308 } 2309 2310 // 公共邮箱唯一标识或公共邮箱地址 2311 // 2312 // 示例值:xxxxxxxxxxxxxxx 或 test_public_mailbox@xxx.xx 2313 func (builder *ClearPublicMailboxMemberReqBuilder) PublicMailboxId(publicMailboxId string) *ClearPublicMailboxMemberReqBuilder { 2314 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2315 return builder 2316 } 2317 2318 func (builder *ClearPublicMailboxMemberReqBuilder) Build() *ClearPublicMailboxMemberReq { 2319 req := &ClearPublicMailboxMemberReq{} 2320 req.apiReq = &larkcore.ApiReq{} 2321 req.apiReq.PathParams = builder.apiReq.PathParams 2322 return req 2323 } 2324 2325 type ClearPublicMailboxMemberReq struct { 2326 apiReq *larkcore.ApiReq 2327 } 2328 2329 type ClearPublicMailboxMemberResp struct { 2330 *larkcore.ApiResp `json:"-"` 2331 larkcore.CodeError 2332 } 2333 2334 func (resp *ClearPublicMailboxMemberResp) Success() bool { 2335 return resp.Code == 0 2336 } 2337 2338 type CreatePublicMailboxMemberReqBuilder struct { 2339 apiReq *larkcore.ApiReq 2340 publicMailboxMember *PublicMailboxMember 2341 } 2342 2343 func NewCreatePublicMailboxMemberReqBuilder() *CreatePublicMailboxMemberReqBuilder { 2344 builder := &CreatePublicMailboxMemberReqBuilder{} 2345 builder.apiReq = &larkcore.ApiReq{ 2346 PathParams: larkcore.PathParams{}, 2347 QueryParams: larkcore.QueryParams{}, 2348 } 2349 return builder 2350 } 2351 2352 // 公共邮箱唯一标识或公共邮箱地址 2353 // 2354 // 示例值:xxxxxxxxxxxxxxx 或 test_public_mailbox@xxx.xx 2355 func (builder *CreatePublicMailboxMemberReqBuilder) PublicMailboxId(publicMailboxId string) *CreatePublicMailboxMemberReqBuilder { 2356 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2357 return builder 2358 } 2359 2360 // 此次调用中使用的用户ID的类型 2361 // 2362 // 示例值: 2363 func (builder *CreatePublicMailboxMemberReqBuilder) UserIdType(userIdType string) *CreatePublicMailboxMemberReqBuilder { 2364 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 2365 return builder 2366 } 2367 2368 // 向公共邮箱添加单个成员 2369 func (builder *CreatePublicMailboxMemberReqBuilder) PublicMailboxMember(publicMailboxMember *PublicMailboxMember) *CreatePublicMailboxMemberReqBuilder { 2370 builder.publicMailboxMember = publicMailboxMember 2371 return builder 2372 } 2373 2374 func (builder *CreatePublicMailboxMemberReqBuilder) Build() *CreatePublicMailboxMemberReq { 2375 req := &CreatePublicMailboxMemberReq{} 2376 req.apiReq = &larkcore.ApiReq{} 2377 req.apiReq.PathParams = builder.apiReq.PathParams 2378 req.apiReq.QueryParams = builder.apiReq.QueryParams 2379 req.apiReq.Body = builder.publicMailboxMember 2380 return req 2381 } 2382 2383 type CreatePublicMailboxMemberReq struct { 2384 apiReq *larkcore.ApiReq 2385 PublicMailboxMember *PublicMailboxMember `body:""` 2386 } 2387 2388 type CreatePublicMailboxMemberRespData struct { 2389 MemberId *string `json:"member_id,omitempty"` // The unique ID of a member in this public mailbox 2390 UserId *string `json:"user_id,omitempty"` // The member's user id. Value is valid when type is USER 2391 Type *string `json:"type,omitempty"` // The type of member. Possible values are:;- USER: internal user in the team 2392 } 2393 2394 type CreatePublicMailboxMemberResp struct { 2395 *larkcore.ApiResp `json:"-"` 2396 larkcore.CodeError 2397 Data *CreatePublicMailboxMemberRespData `json:"data"` // 业务数据 2398 } 2399 2400 func (resp *CreatePublicMailboxMemberResp) Success() bool { 2401 return resp.Code == 0 2402 } 2403 2404 type DeletePublicMailboxMemberReqBuilder struct { 2405 apiReq *larkcore.ApiReq 2406 } 2407 2408 func NewDeletePublicMailboxMemberReqBuilder() *DeletePublicMailboxMemberReqBuilder { 2409 builder := &DeletePublicMailboxMemberReqBuilder{} 2410 builder.apiReq = &larkcore.ApiReq{ 2411 PathParams: larkcore.PathParams{}, 2412 QueryParams: larkcore.QueryParams{}, 2413 } 2414 return builder 2415 } 2416 2417 // 公共邮箱唯一标识或公共邮箱地址 2418 // 2419 // 示例值:xxxxxxxxxxxxxxx 或 test_public_mailbox@xxx.xx 2420 func (builder *DeletePublicMailboxMemberReqBuilder) PublicMailboxId(publicMailboxId string) *DeletePublicMailboxMemberReqBuilder { 2421 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2422 return builder 2423 } 2424 2425 // 公共邮箱内成员唯一标识 2426 // 2427 // 示例值:xxxxxxxxxxxxxxx 2428 func (builder *DeletePublicMailboxMemberReqBuilder) MemberId(memberId string) *DeletePublicMailboxMemberReqBuilder { 2429 builder.apiReq.PathParams.Set("member_id", fmt.Sprint(memberId)) 2430 return builder 2431 } 2432 2433 func (builder *DeletePublicMailboxMemberReqBuilder) Build() *DeletePublicMailboxMemberReq { 2434 req := &DeletePublicMailboxMemberReq{} 2435 req.apiReq = &larkcore.ApiReq{} 2436 req.apiReq.PathParams = builder.apiReq.PathParams 2437 return req 2438 } 2439 2440 type DeletePublicMailboxMemberReq struct { 2441 apiReq *larkcore.ApiReq 2442 } 2443 2444 type DeletePublicMailboxMemberResp struct { 2445 *larkcore.ApiResp `json:"-"` 2446 larkcore.CodeError 2447 } 2448 2449 func (resp *DeletePublicMailboxMemberResp) Success() bool { 2450 return resp.Code == 0 2451 } 2452 2453 type GetPublicMailboxMemberReqBuilder struct { 2454 apiReq *larkcore.ApiReq 2455 } 2456 2457 func NewGetPublicMailboxMemberReqBuilder() *GetPublicMailboxMemberReqBuilder { 2458 builder := &GetPublicMailboxMemberReqBuilder{} 2459 builder.apiReq = &larkcore.ApiReq{ 2460 PathParams: larkcore.PathParams{}, 2461 QueryParams: larkcore.QueryParams{}, 2462 } 2463 return builder 2464 } 2465 2466 // 公共邮箱唯一标识或公共邮箱地址 2467 // 2468 // 示例值:xxxxxxxxxxxxxxx 或 test_public_mailbox@xxx.xx 2469 func (builder *GetPublicMailboxMemberReqBuilder) PublicMailboxId(publicMailboxId string) *GetPublicMailboxMemberReqBuilder { 2470 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2471 return builder 2472 } 2473 2474 // 公共邮箱内成员唯一标识 2475 // 2476 // 示例值:xxxxxxxxxxxxxxx 2477 func (builder *GetPublicMailboxMemberReqBuilder) MemberId(memberId string) *GetPublicMailboxMemberReqBuilder { 2478 builder.apiReq.PathParams.Set("member_id", fmt.Sprint(memberId)) 2479 return builder 2480 } 2481 2482 // 此次调用中使用的用户ID的类型 2483 // 2484 // 示例值: 2485 func (builder *GetPublicMailboxMemberReqBuilder) UserIdType(userIdType string) *GetPublicMailboxMemberReqBuilder { 2486 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 2487 return builder 2488 } 2489 2490 func (builder *GetPublicMailboxMemberReqBuilder) Build() *GetPublicMailboxMemberReq { 2491 req := &GetPublicMailboxMemberReq{} 2492 req.apiReq = &larkcore.ApiReq{} 2493 req.apiReq.PathParams = builder.apiReq.PathParams 2494 req.apiReq.QueryParams = builder.apiReq.QueryParams 2495 return req 2496 } 2497 2498 type GetPublicMailboxMemberReq struct { 2499 apiReq *larkcore.ApiReq 2500 } 2501 2502 type GetPublicMailboxMemberRespData struct { 2503 MemberId *string `json:"member_id,omitempty"` // The unique ID of a member in this public mailbox 2504 UserId *string `json:"user_id,omitempty"` // The member's user id. Value is valid when type is USER 2505 Type *string `json:"type,omitempty"` // The type of member. Possible values are:;- USER: internal user in the team 2506 } 2507 2508 type GetPublicMailboxMemberResp struct { 2509 *larkcore.ApiResp `json:"-"` 2510 larkcore.CodeError 2511 Data *GetPublicMailboxMemberRespData `json:"data"` // 业务数据 2512 } 2513 2514 func (resp *GetPublicMailboxMemberResp) Success() bool { 2515 return resp.Code == 0 2516 } 2517 2518 type ListPublicMailboxMemberReqBuilder struct { 2519 apiReq *larkcore.ApiReq 2520 limit int // 最大返回多少记录,当使用迭代器访问时才有效 2521 } 2522 2523 func NewListPublicMailboxMemberReqBuilder() *ListPublicMailboxMemberReqBuilder { 2524 builder := &ListPublicMailboxMemberReqBuilder{} 2525 builder.apiReq = &larkcore.ApiReq{ 2526 PathParams: larkcore.PathParams{}, 2527 QueryParams: larkcore.QueryParams{}, 2528 } 2529 return builder 2530 } 2531 2532 // 最大返回多少记录,当使用迭代器访问时才有效 2533 func (builder *ListPublicMailboxMemberReqBuilder) Limit(limit int) *ListPublicMailboxMemberReqBuilder { 2534 builder.limit = limit 2535 return builder 2536 } 2537 2538 // The unique ID or email address of a public mailbox 2539 // 2540 // 示例值:xxxxxxxxxxxxxxx or test_public_mailbox@xxx.xx 2541 func (builder *ListPublicMailboxMemberReqBuilder) PublicMailboxId(publicMailboxId string) *ListPublicMailboxMemberReqBuilder { 2542 builder.apiReq.PathParams.Set("public_mailbox_id", fmt.Sprint(publicMailboxId)) 2543 return builder 2544 } 2545 2546 // 此次调用中使用的用户ID的类型 2547 // 2548 // 示例值: 2549 func (builder *ListPublicMailboxMemberReqBuilder) UserIdType(userIdType string) *ListPublicMailboxMemberReqBuilder { 2550 builder.apiReq.QueryParams.Set("user_id_type", fmt.Sprint(userIdType)) 2551 return builder 2552 } 2553 2554 // 2555 // 2556 // 示例值:xxx 2557 func (builder *ListPublicMailboxMemberReqBuilder) PageToken(pageToken string) *ListPublicMailboxMemberReqBuilder { 2558 builder.apiReq.QueryParams.Set("page_token", fmt.Sprint(pageToken)) 2559 return builder 2560 } 2561 2562 // 2563 // 2564 // 示例值:10 2565 func (builder *ListPublicMailboxMemberReqBuilder) PageSize(pageSize int) *ListPublicMailboxMemberReqBuilder { 2566 builder.apiReq.QueryParams.Set("page_size", fmt.Sprint(pageSize)) 2567 return builder 2568 } 2569 2570 func (builder *ListPublicMailboxMemberReqBuilder) Build() *ListPublicMailboxMemberReq { 2571 req := &ListPublicMailboxMemberReq{} 2572 req.apiReq = &larkcore.ApiReq{} 2573 req.Limit = builder.limit 2574 req.apiReq.PathParams = builder.apiReq.PathParams 2575 req.apiReq.QueryParams = builder.apiReq.QueryParams 2576 return req 2577 } 2578 2579 type ListPublicMailboxMemberReq struct { 2580 apiReq *larkcore.ApiReq 2581 Limit int // 最多返回多少记录,只有在使用迭代器访问时,才有效 2582 2583 } 2584 2585 type ListPublicMailboxMemberRespData struct { 2586 HasMore *bool `json:"has_more,omitempty"` // 是否有下一页数据 2587 PageToken *string `json:"page_token,omitempty"` // 下一页分页的token 2588 Items []*PublicMailboxMember `json:"items,omitempty"` // 公共邮箱成员列表 2589 } 2590 2591 type ListPublicMailboxMemberResp struct { 2592 *larkcore.ApiResp `json:"-"` 2593 larkcore.CodeError 2594 Data *ListPublicMailboxMemberRespData `json:"data"` // 业务数据 2595 } 2596 2597 func (resp *ListPublicMailboxMemberResp) Success() bool { 2598 return resp.Code == 0 2599 } 2600 2601 type QueryUserReqBodyBuilder struct { 2602 emailList []string // 需要查询的邮箱地址列表 2603 emailListFlag bool 2604 } 2605 2606 func NewQueryUserReqBodyBuilder() *QueryUserReqBodyBuilder { 2607 builder := &QueryUserReqBodyBuilder{} 2608 return builder 2609 } 2610 2611 // 需要查询的邮箱地址列表 2612 // 2613 //示例值:["aaa@lark.com","bbb@lark.com"] 2614 func (builder *QueryUserReqBodyBuilder) EmailList(emailList []string) *QueryUserReqBodyBuilder { 2615 builder.emailList = emailList 2616 builder.emailListFlag = true 2617 return builder 2618 } 2619 2620 func (builder *QueryUserReqBodyBuilder) Build() *QueryUserReqBody { 2621 req := &QueryUserReqBody{} 2622 if builder.emailListFlag { 2623 req.EmailList = builder.emailList 2624 } 2625 return req 2626 } 2627 2628 type QueryUserPathReqBodyBuilder struct { 2629 emailList []string // 需要查询的邮箱地址列表 2630 emailListFlag bool 2631 } 2632 2633 func NewQueryUserPathReqBodyBuilder() *QueryUserPathReqBodyBuilder { 2634 builder := &QueryUserPathReqBodyBuilder{} 2635 return builder 2636 } 2637 2638 // 需要查询的邮箱地址列表 2639 // 2640 // 示例值:["aaa@lark.com","bbb@lark.com"] 2641 func (builder *QueryUserPathReqBodyBuilder) EmailList(emailList []string) *QueryUserPathReqBodyBuilder { 2642 builder.emailList = emailList 2643 builder.emailListFlag = true 2644 return builder 2645 } 2646 2647 func (builder *QueryUserPathReqBodyBuilder) Build() (*QueryUserReqBody, error) { 2648 req := &QueryUserReqBody{} 2649 if builder.emailListFlag { 2650 req.EmailList = builder.emailList 2651 } 2652 return req, nil 2653 } 2654 2655 type QueryUserReqBuilder struct { 2656 apiReq *larkcore.ApiReq 2657 body *QueryUserReqBody 2658 } 2659 2660 func NewQueryUserReqBuilder() *QueryUserReqBuilder { 2661 builder := &QueryUserReqBuilder{} 2662 builder.apiReq = &larkcore.ApiReq{ 2663 PathParams: larkcore.PathParams{}, 2664 QueryParams: larkcore.QueryParams{}, 2665 } 2666 return builder 2667 } 2668 2669 // 使用邮箱状态查询接口,可以输入邮箱地址,查询出该邮箱地址对应的类型以及状态 2670 func (builder *QueryUserReqBuilder) Body(body *QueryUserReqBody) *QueryUserReqBuilder { 2671 builder.body = body 2672 return builder 2673 } 2674 2675 func (builder *QueryUserReqBuilder) Build() *QueryUserReq { 2676 req := &QueryUserReq{} 2677 req.apiReq = &larkcore.ApiReq{} 2678 req.apiReq.Body = builder.body 2679 return req 2680 } 2681 2682 type QueryUserReqBody struct { 2683 EmailList []string `json:"email_list,omitempty"` // 需要查询的邮箱地址列表 2684 } 2685 2686 type QueryUserReq struct { 2687 apiReq *larkcore.ApiReq 2688 Body *QueryUserReqBody `body:""` 2689 } 2690 2691 type QueryUserRespData struct { 2692 UserList []*User `json:"user_list,omitempty"` // 邮箱地址以及其对应的类型类型和状态 2693 } 2694 2695 type QueryUserResp struct { 2696 *larkcore.ApiResp `json:"-"` 2697 larkcore.CodeError 2698 Data *QueryUserRespData `json:"data"` // 业务数据 2699 } 2700 2701 func (resp *QueryUserResp) Success() bool { 2702 return resp.Code == 0 2703 } 2704 2705 type DeleteUserMailboxReqBuilder struct { 2706 apiReq *larkcore.ApiReq 2707 } 2708 2709 func NewDeleteUserMailboxReqBuilder() *DeleteUserMailboxReqBuilder { 2710 builder := &DeleteUserMailboxReqBuilder{} 2711 builder.apiReq = &larkcore.ApiReq{ 2712 PathParams: larkcore.PathParams{}, 2713 QueryParams: larkcore.QueryParams{}, 2714 } 2715 return builder 2716 } 2717 2718 // 要释放的邮箱地址 2719 // 2720 // 示例值:111111@abc.com 2721 func (builder *DeleteUserMailboxReqBuilder) UserMailboxId(userMailboxId string) *DeleteUserMailboxReqBuilder { 2722 builder.apiReq.PathParams.Set("user_mailbox_id", fmt.Sprint(userMailboxId)) 2723 return builder 2724 } 2725 2726 // 用于接受转移的邮箱地址 2727 // 2728 // 示例值:888888@abc.com 2729 func (builder *DeleteUserMailboxReqBuilder) TransferMailbox(transferMailbox string) *DeleteUserMailboxReqBuilder { 2730 builder.apiReq.QueryParams.Set("transfer_mailbox", fmt.Sprint(transferMailbox)) 2731 return builder 2732 } 2733 2734 func (builder *DeleteUserMailboxReqBuilder) Build() *DeleteUserMailboxReq { 2735 req := &DeleteUserMailboxReq{} 2736 req.apiReq = &larkcore.ApiReq{} 2737 req.apiReq.PathParams = builder.apiReq.PathParams 2738 req.apiReq.QueryParams = builder.apiReq.QueryParams 2739 return req 2740 } 2741 2742 type DeleteUserMailboxReq struct { 2743 apiReq *larkcore.ApiReq 2744 } 2745 2746 type DeleteUserMailboxResp struct { 2747 *larkcore.ApiResp `json:"-"` 2748 larkcore.CodeError 2749 } 2750 2751 func (resp *DeleteUserMailboxResp) Success() bool { 2752 return resp.Code == 0 2753 } 2754 2755 type CreateUserMailboxAliasReqBuilder struct { 2756 apiReq *larkcore.ApiReq 2757 emailAlias *EmailAlias 2758 } 2759 2760 func NewCreateUserMailboxAliasReqBuilder() *CreateUserMailboxAliasReqBuilder { 2761 builder := &CreateUserMailboxAliasReqBuilder{} 2762 builder.apiReq = &larkcore.ApiReq{ 2763 PathParams: larkcore.PathParams{}, 2764 QueryParams: larkcore.QueryParams{}, 2765 } 2766 return builder 2767 } 2768 2769 // 用户邮箱地址 2770 // 2771 // 示例值:user@xxx.xx 2772 func (builder *CreateUserMailboxAliasReqBuilder) UserMailboxId(userMailboxId string) *CreateUserMailboxAliasReqBuilder { 2773 builder.apiReq.PathParams.Set("user_mailbox_id", fmt.Sprint(userMailboxId)) 2774 return builder 2775 } 2776 2777 // 创建用户邮箱别名 2778 func (builder *CreateUserMailboxAliasReqBuilder) EmailAlias(emailAlias *EmailAlias) *CreateUserMailboxAliasReqBuilder { 2779 builder.emailAlias = emailAlias 2780 return builder 2781 } 2782 2783 func (builder *CreateUserMailboxAliasReqBuilder) Build() *CreateUserMailboxAliasReq { 2784 req := &CreateUserMailboxAliasReq{} 2785 req.apiReq = &larkcore.ApiReq{} 2786 req.apiReq.PathParams = builder.apiReq.PathParams 2787 req.apiReq.Body = builder.emailAlias 2788 return req 2789 } 2790 2791 type CreateUserMailboxAliasReq struct { 2792 apiReq *larkcore.ApiReq 2793 EmailAlias *EmailAlias `body:""` 2794 } 2795 2796 type CreateUserMailboxAliasRespData struct { 2797 UserMailboxAlias *EmailAlias `json:"user_mailbox_alias,omitempty"` // 用户邮箱别名 2798 } 2799 2800 type CreateUserMailboxAliasResp struct { 2801 *larkcore.ApiResp `json:"-"` 2802 larkcore.CodeError 2803 Data *CreateUserMailboxAliasRespData `json:"data"` // 业务数据 2804 } 2805 2806 func (resp *CreateUserMailboxAliasResp) Success() bool { 2807 return resp.Code == 0 2808 } 2809 2810 type DeleteUserMailboxAliasReqBuilder struct { 2811 apiReq *larkcore.ApiReq 2812 } 2813 2814 func NewDeleteUserMailboxAliasReqBuilder() *DeleteUserMailboxAliasReqBuilder { 2815 builder := &DeleteUserMailboxAliasReqBuilder{} 2816 builder.apiReq = &larkcore.ApiReq{ 2817 PathParams: larkcore.PathParams{}, 2818 QueryParams: larkcore.QueryParams{}, 2819 } 2820 return builder 2821 } 2822 2823 // 用户邮箱地址 2824 // 2825 // 示例值:user@xxx.xx 2826 func (builder *DeleteUserMailboxAliasReqBuilder) UserMailboxId(userMailboxId string) *DeleteUserMailboxAliasReqBuilder { 2827 builder.apiReq.PathParams.Set("user_mailbox_id", fmt.Sprint(userMailboxId)) 2828 return builder 2829 } 2830 2831 // 别名邮箱地址 2832 // 2833 // 示例值:user_alias@xxx.xx 2834 func (builder *DeleteUserMailboxAliasReqBuilder) AliasId(aliasId string) *DeleteUserMailboxAliasReqBuilder { 2835 builder.apiReq.PathParams.Set("alias_id", fmt.Sprint(aliasId)) 2836 return builder 2837 } 2838 2839 func (builder *DeleteUserMailboxAliasReqBuilder) Build() *DeleteUserMailboxAliasReq { 2840 req := &DeleteUserMailboxAliasReq{} 2841 req.apiReq = &larkcore.ApiReq{} 2842 req.apiReq.PathParams = builder.apiReq.PathParams 2843 return req 2844 } 2845 2846 type DeleteUserMailboxAliasReq struct { 2847 apiReq *larkcore.ApiReq 2848 } 2849 2850 type DeleteUserMailboxAliasResp struct { 2851 *larkcore.ApiResp `json:"-"` 2852 larkcore.CodeError 2853 } 2854 2855 func (resp *DeleteUserMailboxAliasResp) Success() bool { 2856 return resp.Code == 0 2857 } 2858 2859 type ListUserMailboxAliasReqBuilder struct { 2860 apiReq *larkcore.ApiReq 2861 } 2862 2863 func NewListUserMailboxAliasReqBuilder() *ListUserMailboxAliasReqBuilder { 2864 builder := &ListUserMailboxAliasReqBuilder{} 2865 builder.apiReq = &larkcore.ApiReq{ 2866 PathParams: larkcore.PathParams{}, 2867 QueryParams: larkcore.QueryParams{}, 2868 } 2869 return builder 2870 } 2871 2872 // 用户邮箱地址 2873 // 2874 // 示例值:user@xxx.xx 2875 func (builder *ListUserMailboxAliasReqBuilder) UserMailboxId(userMailboxId string) *ListUserMailboxAliasReqBuilder { 2876 builder.apiReq.PathParams.Set("user_mailbox_id", fmt.Sprint(userMailboxId)) 2877 return builder 2878 } 2879 2880 // 2881 // 2882 // 示例值:xxx 2883 func (builder *ListUserMailboxAliasReqBuilder) PageToken(pageToken string) *ListUserMailboxAliasReqBuilder { 2884 builder.apiReq.QueryParams.Set("page_token", fmt.Sprint(pageToken)) 2885 return builder 2886 } 2887 2888 // 2889 // 2890 // 示例值:10 2891 func (builder *ListUserMailboxAliasReqBuilder) PageSize(pageSize int) *ListUserMailboxAliasReqBuilder { 2892 builder.apiReq.QueryParams.Set("page_size", fmt.Sprint(pageSize)) 2893 return builder 2894 } 2895 2896 func (builder *ListUserMailboxAliasReqBuilder) Build() *ListUserMailboxAliasReq { 2897 req := &ListUserMailboxAliasReq{} 2898 req.apiReq = &larkcore.ApiReq{} 2899 req.apiReq.PathParams = builder.apiReq.PathParams 2900 req.apiReq.QueryParams = builder.apiReq.QueryParams 2901 return req 2902 } 2903 2904 type ListUserMailboxAliasReq struct { 2905 apiReq *larkcore.ApiReq 2906 } 2907 2908 type ListUserMailboxAliasRespData struct { 2909 Items []*EmailAlias `json:"items,omitempty"` // 用户邮箱别名 2910 } 2911 2912 type ListUserMailboxAliasResp struct { 2913 *larkcore.ApiResp `json:"-"` 2914 larkcore.CodeError 2915 Data *ListUserMailboxAliasRespData `json:"data"` // 业务数据 2916 } 2917 2918 func (resp *ListUserMailboxAliasResp) Success() bool { 2919 return resp.Code == 0 2920 } 2921 2922 type ListMailgroupIterator struct { 2923 nextPageToken *string 2924 items []*Mailgroup 2925 index int 2926 limit int 2927 ctx context.Context 2928 req *ListMailgroupReq 2929 listFunc func(ctx context.Context, req *ListMailgroupReq, options ...larkcore.RequestOptionFunc) (*ListMailgroupResp, error) 2930 options []larkcore.RequestOptionFunc 2931 curlNum int 2932 } 2933 2934 func (iterator *ListMailgroupIterator) Next() (bool, *Mailgroup, error) { 2935 // 达到最大量,则返回 2936 if iterator.limit > 0 && iterator.curlNum >= iterator.limit { 2937 return false, nil, nil 2938 } 2939 2940 // 为0则拉取数据 2941 if iterator.index == 0 || iterator.index >= len(iterator.items) { 2942 if iterator.index != 0 && iterator.nextPageToken == nil { 2943 return false, nil, nil 2944 } 2945 if iterator.nextPageToken != nil { 2946 iterator.req.apiReq.QueryParams.Set("page_token", *iterator.nextPageToken) 2947 } 2948 resp, err := iterator.listFunc(iterator.ctx, iterator.req, iterator.options...) 2949 if err != nil { 2950 return false, nil, err 2951 } 2952 2953 if resp.Code != 0 { 2954 return false, nil, errors.New(fmt.Sprintf("Code:%d,Msg:%s", resp.Code, resp.Msg)) 2955 } 2956 2957 if len(resp.Data.Items) == 0 { 2958 return false, nil, nil 2959 } 2960 2961 iterator.nextPageToken = resp.Data.PageToken 2962 iterator.items = resp.Data.Items 2963 iterator.index = 0 2964 } 2965 2966 block := iterator.items[iterator.index] 2967 iterator.index++ 2968 iterator.curlNum++ 2969 return true, block, nil 2970 } 2971 2972 func (iterator *ListMailgroupIterator) NextPageToken() *string { 2973 return iterator.nextPageToken 2974 } 2975 2976 type ListMailgroupMemberIterator struct { 2977 nextPageToken *string 2978 items []*MailgroupMember 2979 index int 2980 limit int 2981 ctx context.Context 2982 req *ListMailgroupMemberReq 2983 listFunc func(ctx context.Context, req *ListMailgroupMemberReq, options ...larkcore.RequestOptionFunc) (*ListMailgroupMemberResp, error) 2984 options []larkcore.RequestOptionFunc 2985 curlNum int 2986 } 2987 2988 func (iterator *ListMailgroupMemberIterator) Next() (bool, *MailgroupMember, error) { 2989 // 达到最大量,则返回 2990 if iterator.limit > 0 && iterator.curlNum >= iterator.limit { 2991 return false, nil, nil 2992 } 2993 2994 // 为0则拉取数据 2995 if iterator.index == 0 || iterator.index >= len(iterator.items) { 2996 if iterator.index != 0 && iterator.nextPageToken == nil { 2997 return false, nil, nil 2998 } 2999 if iterator.nextPageToken != nil { 3000 iterator.req.apiReq.QueryParams.Set("page_token", *iterator.nextPageToken) 3001 } 3002 resp, err := iterator.listFunc(iterator.ctx, iterator.req, iterator.options...) 3003 if err != nil { 3004 return false, nil, err 3005 } 3006 3007 if resp.Code != 0 { 3008 return false, nil, errors.New(fmt.Sprintf("Code:%d,Msg:%s", resp.Code, resp.Msg)) 3009 } 3010 3011 if len(resp.Data.Items) == 0 { 3012 return false, nil, nil 3013 } 3014 3015 iterator.nextPageToken = resp.Data.PageToken 3016 iterator.items = resp.Data.Items 3017 iterator.index = 0 3018 } 3019 3020 block := iterator.items[iterator.index] 3021 iterator.index++ 3022 iterator.curlNum++ 3023 return true, block, nil 3024 } 3025 3026 func (iterator *ListMailgroupMemberIterator) NextPageToken() *string { 3027 return iterator.nextPageToken 3028 } 3029 3030 type ListMailgroupPermissionMemberIterator struct { 3031 nextPageToken *string 3032 items []*MailgroupPermissionMember 3033 index int 3034 limit int 3035 ctx context.Context 3036 req *ListMailgroupPermissionMemberReq 3037 listFunc func(ctx context.Context, req *ListMailgroupPermissionMemberReq, options ...larkcore.RequestOptionFunc) (*ListMailgroupPermissionMemberResp, error) 3038 options []larkcore.RequestOptionFunc 3039 curlNum int 3040 } 3041 3042 func (iterator *ListMailgroupPermissionMemberIterator) Next() (bool, *MailgroupPermissionMember, error) { 3043 // 达到最大量,则返回 3044 if iterator.limit > 0 && iterator.curlNum >= iterator.limit { 3045 return false, nil, nil 3046 } 3047 3048 // 为0则拉取数据 3049 if iterator.index == 0 || iterator.index >= len(iterator.items) { 3050 if iterator.index != 0 && iterator.nextPageToken == nil { 3051 return false, nil, nil 3052 } 3053 if iterator.nextPageToken != nil { 3054 iterator.req.apiReq.QueryParams.Set("page_token", *iterator.nextPageToken) 3055 } 3056 resp, err := iterator.listFunc(iterator.ctx, iterator.req, iterator.options...) 3057 if err != nil { 3058 return false, nil, err 3059 } 3060 3061 if resp.Code != 0 { 3062 return false, nil, errors.New(fmt.Sprintf("Code:%d,Msg:%s", resp.Code, resp.Msg)) 3063 } 3064 3065 if len(resp.Data.Items) == 0 { 3066 return false, nil, nil 3067 } 3068 3069 iterator.nextPageToken = resp.Data.PageToken 3070 iterator.items = resp.Data.Items 3071 iterator.index = 0 3072 } 3073 3074 block := iterator.items[iterator.index] 3075 iterator.index++ 3076 iterator.curlNum++ 3077 return true, block, nil 3078 } 3079 3080 func (iterator *ListMailgroupPermissionMemberIterator) NextPageToken() *string { 3081 return iterator.nextPageToken 3082 } 3083 3084 type ListPublicMailboxIterator struct { 3085 nextPageToken *string 3086 items []*PublicMailbox 3087 index int 3088 limit int 3089 ctx context.Context 3090 req *ListPublicMailboxReq 3091 listFunc func(ctx context.Context, req *ListPublicMailboxReq, options ...larkcore.RequestOptionFunc) (*ListPublicMailboxResp, error) 3092 options []larkcore.RequestOptionFunc 3093 curlNum int 3094 } 3095 3096 func (iterator *ListPublicMailboxIterator) Next() (bool, *PublicMailbox, error) { 3097 // 达到最大量,则返回 3098 if iterator.limit > 0 && iterator.curlNum >= iterator.limit { 3099 return false, nil, nil 3100 } 3101 3102 // 为0则拉取数据 3103 if iterator.index == 0 || iterator.index >= len(iterator.items) { 3104 if iterator.index != 0 && iterator.nextPageToken == nil { 3105 return false, nil, nil 3106 } 3107 if iterator.nextPageToken != nil { 3108 iterator.req.apiReq.QueryParams.Set("page_token", *iterator.nextPageToken) 3109 } 3110 resp, err := iterator.listFunc(iterator.ctx, iterator.req, iterator.options...) 3111 if err != nil { 3112 return false, nil, err 3113 } 3114 3115 if resp.Code != 0 { 3116 return false, nil, errors.New(fmt.Sprintf("Code:%d,Msg:%s", resp.Code, resp.Msg)) 3117 } 3118 3119 if len(resp.Data.Items) == 0 { 3120 return false, nil, nil 3121 } 3122 3123 iterator.nextPageToken = resp.Data.PageToken 3124 iterator.items = resp.Data.Items 3125 iterator.index = 0 3126 } 3127 3128 block := iterator.items[iterator.index] 3129 iterator.index++ 3130 iterator.curlNum++ 3131 return true, block, nil 3132 } 3133 3134 func (iterator *ListPublicMailboxIterator) NextPageToken() *string { 3135 return iterator.nextPageToken 3136 } 3137 3138 type ListPublicMailboxMemberIterator struct { 3139 nextPageToken *string 3140 items []*PublicMailboxMember 3141 index int 3142 limit int 3143 ctx context.Context 3144 req *ListPublicMailboxMemberReq 3145 listFunc func(ctx context.Context, req *ListPublicMailboxMemberReq, options ...larkcore.RequestOptionFunc) (*ListPublicMailboxMemberResp, error) 3146 options []larkcore.RequestOptionFunc 3147 curlNum int 3148 } 3149 3150 func (iterator *ListPublicMailboxMemberIterator) Next() (bool, *PublicMailboxMember, error) { 3151 // 达到最大量,则返回 3152 if iterator.limit > 0 && iterator.curlNum >= iterator.limit { 3153 return false, nil, nil 3154 } 3155 3156 // 为0则拉取数据 3157 if iterator.index == 0 || iterator.index >= len(iterator.items) { 3158 if iterator.index != 0 && iterator.nextPageToken == nil { 3159 return false, nil, nil 3160 } 3161 if iterator.nextPageToken != nil { 3162 iterator.req.apiReq.QueryParams.Set("page_token", *iterator.nextPageToken) 3163 } 3164 resp, err := iterator.listFunc(iterator.ctx, iterator.req, iterator.options...) 3165 if err != nil { 3166 return false, nil, err 3167 } 3168 3169 if resp.Code != 0 { 3170 return false, nil, errors.New(fmt.Sprintf("Code:%d,Msg:%s", resp.Code, resp.Msg)) 3171 } 3172 3173 if len(resp.Data.Items) == 0 { 3174 return false, nil, nil 3175 } 3176 3177 iterator.nextPageToken = resp.Data.PageToken 3178 iterator.items = resp.Data.Items 3179 iterator.index = 0 3180 } 3181 3182 block := iterator.items[iterator.index] 3183 iterator.index++ 3184 iterator.curlNum++ 3185 return true, block, nil 3186 } 3187 3188 func (iterator *ListPublicMailboxMemberIterator) NextPageToken() *string { 3189 return iterator.nextPageToken 3190 }