Skip to content

飞书群成员管理

接口名称

飞书群成员管理(租户令牌) - (IFeishuTenantV1ChatGroupMember)

功能描述

飞书群成员包括用户和机器人。在飞书群组内,支持添加用户或者机器人作为群成员,同时支持将用户或者机器人设置为群管理员。当前接口使用租户令牌访问,适用于租户应用场景。

参考文档

接口详细文档请参见:https://open.feishu.cn/document/server-docs/group/chat-member/intro

函数列表

函数名称功能描述认证方式HTTP 方法
AddManagersAsync设置群管理员租户令牌POST
DeleteManagersAsync删除群管理员租户令牌POST
AddMemberAsync添加成员到群聊租户令牌POST
MeJoinChatGroupAsync当前用户加入群聊租户令牌PATCH
RemoveMemberAsync从群聊移除成员租户令牌DELETE
GetMemberPageListByIdAsync获取群成员列表租户令牌GET
GetMemberInChatByIdAsync检查当前用户是否在群中租户令牌GET

函数详细内容

设置群管理员

函数签名

csharp
Task<FeishuApiResult<GroupManagerResult>?> AddManagersAsync(
    [Path] string chat_id,
    [Body] GroupManagerRequest addGroupManagerRequest,
    [Query("member_id_type")] string member_id_type = "open_id",
    CancellationToken cancellationToken = default)

认证:租户令牌

参数

  • chat_id ✅ 必填
    • 类型:string
    • 含义:群ID
    • 示例值:"oc_a0553eda9014c201e6969b478895c230"
  • addGroupManagerRequest ✅ 必填
    • 类型:GroupManagerRequest
    • 含义:指定群管理员请求体
    • 结构:{ "manager_ids": ["user_id1", "user_id2"] }
  • member_id_type ⚪ 可选
    • 类型:string
    • 含义:用户ID类型
    • 示例值:"open_id"
    • 默认值:"open_id"

响应

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "chat_managers": ["user_id1", "user_id2"],
    "chat_bot_managers": ["bot_id1"]
  }
}

说明:ID 类型需要与请求体参数中的 member_id_type 类型保持一致。

代码示例

typescript
const result = await feishuClient.chatGroup.addManagersAsync({
  chat_id: "oc_a0553eda9014c201e6969b478895c230",
  addGroupManagerRequest: {
    manager_ids: ["user_123", "user_456"]
  },
  member_id_type: "open_id"
});

删除群管理员

函数签名

csharp
Task<FeishuApiResult<GroupManagerResult>?> DeleteManagersAsync(
    [Path] string chat_id,
    [Body] GroupManagerRequest deleteGroupManagerRequest,
    [Query("member_id_type")] string member_id_type = "open_id",
    CancellationToken cancellationToken = default)

认证:租户令牌

参数

  • chat_id ✅ 必填
    • 类型:string
    • 含义:群ID
    • 示例值:"oc_a0553eda9014c201e6969b478895c230"
  • deleteGroupManagerRequest ✅ 必填
    • 类型:GroupManagerRequest
    • 含义:删除群管理员请求体
    • 结构:{ "manager_ids": ["user_id1", "user_id2"] }
  • member_id_type ⚪ 可选
    • 类型:string
    • 含义:用户ID类型
    • 示例值:"open_id"
    • 默认值:"open_id"

响应

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "chat_managers": ["remaining_user_id"],
    "chat_bot_managers": ["bot_id1"]
  }
}

说明:包括用户类型的管理员和机器人类型的管理员。

代码示例

typescript
const result = await feishuClient.chatGroup.deleteManagersAsync({
  chat_id: "oc_a0553eda9014c201e6969b478895c230",
  deleteGroupManagerRequest: {
    manager_ids: ["user_123"]
  },
  member_id_type: "open_id"
});

添加成员到群聊

函数签名

csharp
Task<FeishuApiResult<AddMemberResult>?> AddMemberAsync(
    [Path] string chat_id,
    [Body] MembersRequest addMemberRequest,
    [Query("member_id_type")] string member_id_type = "open_id",
    [Query("succeed_type")] int succeed_type = 0,
    CancellationToken cancellationToken = default)

认证:租户令牌

参数

  • chat_id ✅ 必填
    • 类型:string
    • 含义:群ID
    • 示例值:"oc_a0553eda9014c201e6969b478895c230"
  • addMemberRequest ✅ 必填
    • 类型:MembersRequest
    • 含义:将用户或机器人拉入群聊请求体
    • 结构:{ "id_list": ["user_id1", "user_id2"] }
  • member_id_type ⚪ 可选
    • 类型:string
    • 含义:用户ID类型
    • 示例值:"open_id"
    • 默认值:"open_id"
  • succeed_type ⚪ 可选
    • 类型:int
    • 含义:出现不可用ID后的处理方式
    • 可选值:
      • 0:不存在/不可见的ID会拉群失败,并返回错误响应
      • 1:将可用的ID全部拉入群聊,返回成功响应,展示不可用ID及原因
      • 2:只要存在任一不可用ID,就会拉群失败,返回错误响应
    • 默认值:0

响应

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "invalid_id_list": [],
    "not_existed_id_list": [],
    "pending_approval_id_list": []
  }
}

说明:支持添加用户和机器人作为群成员。

代码示例

typescript
const result = await feishuClient.chatGroup.addMemberAsync({
  chat_id: "oc_a0553eda9014c201e6969b478895c230",
  addMemberRequest: {
    id_list: ["user_123", "user_456"]
  },
  member_id_type: "open_id",
  succeed_type: 1
});

当前用户加入群聊

函数签名

csharp
Task<FeishuNullDataApiResult?> MeJoinChatGroupAsync(
    [Path] string chat_id,
    CancellationToken cancellationToken = default)

认证:租户令牌

参数

  • chat_id ✅ 必填
    • 类型:string
    • 含义:群ID
    • 示例值:"oc_a0553eda9014c201e6969b478895c230"

响应

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

说明:将当前调用接口的操作者(用户或机器人)加入指定群聊。

代码示例

typescript
const result = await feishuClient.chatGroup.meJoinChatGroupAsync({
  chat_id: "oc_a0553eda9014c201e6969b478895c230"
});

从群聊移除成员

函数签名

csharp
Task<FeishuApiResult<RemoveMemberResult>?> RemoveMemberAsync(
    [Path] string chat_id,
    [Body] MembersRequest membersRequest,
    [Query("member_id_type")] string member_id_type = "open_id",
    CancellationToken cancellationToken = default)

认证:租户令牌

参数

  • chat_id ✅ 必填
    • 类型:string
    • 含义:群ID
    • 示例值:"oc_a0553eda9014c201e6969b478895c230"
  • membersRequest ✅ 必填
    • 类型:MembersRequest
    • 含义:移除成员ID列表请求体
    • 结构:{ "id_list": ["user_id1", "user_id2"] }
  • member_id_type ⚪ 可选
    • 类型:string
    • 含义:用户ID类型
    • 示例值:"open_id"
    • 默认值:"open_id"

响应

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "invalid_id_list": []
  }
}

说明:支持移除用户和机器人成员。

代码示例

typescript
const result = await feishuClient.chatGroup.removeMemberAsync({
  chat_id: "oc_a0553eda9014c201e6969b478895c230",
  membersRequest: {
    id_list: ["user_123"]
  },
  member_id_type: "open_id"
});

获取群成员列表

函数签名

csharp
Task<FeishuApiResult<GetMemberPageListResult>?> GetMemberPageListByIdAsync(
    [Path] string chat_id,
    [Query("user_id_type")] string user_id_type = "open_id",
    [Query("page_size")] int? page_size = 10,
    [Query("page_token")] string? page_token = null,
    CancellationToken cancellationToken = default)

认证:租户令牌

参数

  • chat_id ✅ 必填
    • 类型:string
    • 含义:群ID
    • 示例值:"oc_a0553eda9014c201e6969b478895c230"
  • user_id_type ⚪ 可选
    • 类型:string
    • 含义:用户ID类型
    • 示例值:"open_id"
    • 默认值:"open_id"
  • page_size ⚪ 可选
    • 类型:int?
    • 含义:分页大小
    • 示例值:10
    • 默认值:10
  • page_token ⚪ 可选
    • 类型:string?
    • 含义:分页标记
    • 示例值:"page_token_value"
    • 默认值:null

响应

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "items": [
      {
        "member_id_type": "open_id",
        "member_id": "user_123",
        "name": "张三",
        "tenant_key": "tenant_1"
      }
    ],
    "member_total": 50,
    "page_token": "next_page_token"
  }
}

说明:分页获取指定群组的成员信息,包括成员名字与ID。

代码示例

typescript
const result = await feishuClient.chatGroup.getMemberPageListByIdAsync({
  chat_id: "oc_a0553eda9014c201e6969b478895c230",
  user_id_type: "open_id",
  page_size: 20
});

检查当前用户是否在群中

函数签名

csharp
Task<FeishuApiResult<GetMemberPageListResult>?> GetMemberInChatByIdAsync(
    [Path] string chat_id,
    CancellationToken cancellationToken = default)

认证:租户令牌

参数

  • chat_id ✅ 必填
    • 类型:string
    • 含义:群ID
    • 示例值:"oc_a0553eda9014c201e6969b478895c230"

响应

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "items": [
      {
        "member_id_type": "open_id",
        "member_id": "current_user_id",
        "name": "当前用户",
        "tenant_key": "tenant_1"
      }
    ],
    "member_total": 1
  }
}

说明:根据使用的access_token判断对应的用户或者机器人是否在指定的群里。

代码示例

typescript
const result = await feishuClient.chatGroup.getMemberInChatByIdAsync({
  chat_id: "oc_a0553eda9014c201e6969b478895c230"
});