Skip to content

IFeishuUserV1MailContact - 用户邮箱联系人API ​

功能描述 ​

飞书邮箱联系人API接口实现了修改、查询、删除等邮箱联系人管理功能。支持用户通过用户访问令牌管理自己的邮箱联系人。

参考文档 ​

函数列表 ​

函数名称功能描述认证方式HTTP 方法接口文档
CreateUserMailboxContactAsync创建邮箱联系人UserAccessTokenPOSTCreateUserMailboxContactAsync
DeleteUserMailboxContactAsync删除邮箱联系人UserAccessTokenDELETEDeleteUserMailboxContactAsync
UpdateUserMailboxContactAsync修改邮箱联系人信息UserAccessTokenPATCHUpdateUserMailboxContactAsync
GetUserMailboxContactPageListAsync分页列出邮箱联系人UserAccessTokenGETGetUserMailboxContactPageListAsync

函数详细内容 ​

CreateUserMailboxContactAsync ​

创建用户邮箱联系人

函数签名

csharp
Task<FeishuApiResult<CreateUserMailboxContactResult>?> CreateUserMailboxContactAsync(
    [Path] string user_mailbox_id,
    [Body] CreateUserMailboxContactRequest request,
    CancellationToken cancellationToken = default);

认证 UserAccessToken(用户访问令牌)

参数

参数名类型必填描述示例
user_mailbox_idstring✅用户邮箱地址,作为用户邮箱身份标识。使用 user_access_token 调用时,可使用占位符 me 表示当前授权用户的主邮箱。user@example.com
requestCreateUserMailboxContactRequest✅创建用户邮箱联系人请求对象-
cancellationTokenCancellationToken⚪取消操作令牌对象default

响应

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "mail_contact": {
      "id": "123",
      "name": "联系人名称",
      "mail_address": "contact@example.com"
    }
  }
}

说明

  • 使用 user_access_token 时,只能创建当前授权用户的邮箱联系人
  • 创建的联系人可用于邮件收发时的快速选择

代码示例

csharp
var contactApi = feishuApp.GetApi<IFeishuUserV1MailContact>();
var request = new CreateUserMailboxContactRequest
{
    MailAddress = "contact@example.com",
    Name = "联系人名称"
};
var result = await contactApi.CreateUserMailboxContactAsync("me", request);
Console.WriteLine($"联系人创建成功: {result?.Data?.MailContact?.Id}");

DeleteUserMailboxContactAsync ​

删除用户邮箱联系人

函数签名

csharp
Task<FeishuNullDataApiResult?> DeleteUserMailboxContactAsync(
    [Path] string user_mailbox_id,
    [Path] string mail_contact_id,
    CancellationToken cancellationToken = default);

认证 UserAccessToken(用户访问令牌)

参数

参数名类型必填描述示例
user_mailbox_idstring✅用户邮箱地址,作为用户邮箱身份标识。使用 user_access_token 调用时,可使用占位符 me 表示当前授权用户的主邮箱。user@example.com
mail_contact_idstring✅邮箱联系人 id123
cancellationTokenCancellationToken⚪取消操作令牌对象default

响应

json
{
  "code": 0,
  "msg": "success",
  "data": null
}

说明

  • 删除操作不可恢复
  • 需要获取邮箱联系人ID,可通过列出邮箱联系人接口获取

代码示例

csharp
var contactApi = feishuApp.GetApi<IFeishuUserV1MailContact>();
var result = await contactApi.DeleteUserMailboxContactAsync("me", "123");
Console.WriteLine($"联系人删除结果: {result.Code == 0}");

UpdateUserMailboxContactAsync ​

修改用户邮箱联系人信息

函数签名

csharp
Task<FeishuNullDataApiResult?> UpdateUserMailboxContactAsync(
    [Path] string user_mailbox_id,
    [Path] string mail_contact_id,
    [Body] UpdateUserMailboxContactRequest request,
    CancellationToken cancellationToken = default);

认证 UserAccessToken(用户访问令牌)

参数

参数名类型必填描述示例
user_mailbox_idstring✅用户邮箱地址,作为用户邮箱身份标识。使用 user_access_token 调用时,可使用占位符 me 表示当前授权用户的主邮箱。user@example.com
mail_contact_idstring✅邮箱联系人 id123
requestUpdateUserMailboxContactRequest✅更新用户邮箱联系人请求对象-
cancellationTokenCancellationToken⚪取消操作令牌对象default

响应

json
{
  "code": 0,
  "msg": "success",
  "data": null
}

说明

  • 支持部分更新,仅传递需要修改的字段
  • 使用 user_access_token 时,只能修改当前授权用户的邮箱联系人

代码示例

csharp
var contactApi = feishuApp.GetApi<IFeishuUserV1MailContact>();
var request = new UpdateUserMailboxContactRequest
{
    Name = "更新后的联系人名称"
};
var result = await contactApi.UpdateUserMailboxContactAsync("me", "123", request);
Console.WriteLine($"联系人更新结果: {result.Code == 0}");

GetUserMailboxContactPageListAsync ​

分页列出用户邮箱联系人

函数签名

csharp
Task<FeishuApiPageListResult<MailboxContactInfo>?> GetUserMailboxContactPageListAsync(
    [Path] string user_mailbox_id,
    [Query] int page_size = Consts.PageSize_20,
    [Query] string? page_token = null,
    CancellationToken cancellationToken = default);

认证 UserAccessToken(用户访问令牌)

参数

参数名类型必填描述示例
user_mailbox_idstring✅用户邮箱地址,作为用户邮箱身份标识。使用 user_access_token 调用时,可使用占位符 me 表示当前授权用户的主邮箱。user@example.com
page_sizeint⚪分页大小,即本次请求所返回的信息列表内的最大条目数。默认值:2020
page_tokenstring?⚪分页标记,第一次请求不填,表示从头开始遍历-
cancellationTokenCancellationToken⚪取消操作令牌对象default

响应

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "items": [
      {
        "id": "123",
        "name": "联系人名称",
        "mail_address": "contact@example.com"
      }
    ],
    "page_token": "evt_xxx",
    "has_more": true
  }
}

说明

  • 使用 user_access_token 时,只能列出当前授权用户的邮箱联系人
  • 支持分页查询,可通过 page_token 获取下一页数据

代码示例

csharp
var contactApi = feishuApp.GetApi<IFeishuUserV1MailContact>();
var result = await contactApi.GetUserMailboxContactPageListAsync("me");
if (result?.Data?.Items != null)
{
    foreach (var contact in result.Data.Items)
    {
        Console.WriteLine($"联系人: {contact.Name} ({contact.MailAddress})");
    }
}