Skip to content

IFeishuUserV1HelpDeskCategory - 用户知识库分类API ​

功能描述 ​

飞书服务台知识库分类API是开放平台基于飞书服务台知识库的分类功能开放的查看/创建/修改/删除等API,开发者可以基于这些API对服务台知识库分类进行操作。本接口使用用户访问令牌(UserAccessToken)鉴权,并额外实现 ICurrentUserId;同时继承自 IFeishuV1HelpDeskCategory 的 HelpdeskTokenAndId 属性用于在服务台请求 Header 中添加 X-Lark-Helpdesk-Authorization 参数(Value 为 base64(helpdesk_id:helpdesk_token),即通过 base64 加密将 helpdesk_id 和 helpdesk_token 用 : 连接而成的字符串)。

参考文档 ​

函数列表 ​

函数名称功能描述认证方式HTTP 方法接口文档
CreateCategoryAsync创建知识库分类UserAccessTokenPOSTCreateCategoryAsync
DeleteCategoryAsync删除知识库分类UserAccessTokenDELETEDeleteCategoryAsync
UpdateCategoryAsync更新知识库分类UserAccessTokenPATCHUpdateCategoryAsync

函数详细内容 ​

CreateCategoryAsync ​

用于创建服务台知识库分类。

函数签名

csharp
Task<FeishuApiResult<CreateCategoryResult>?> CreateCategoryAsync(
    [Body] CreateCategoryRequest request,
    CancellationToken cancellationToken = default);

认证 UserAccessToken(用户访问令牌)

参数

参数名类型必填描述示例
requestCreateCategoryRequest✅创建知识库分类请求体(name 与 parent_id 必填,language 选填)-
cancellationTokenCancellationToken⚪取消操作令牌对象default

响应

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "category": {
      "category_id": "6948728206392295444",
      "id": "6948728206392295444",
      "name": "Create a team and invite members",
      "parent_id": "0",
      "helpdesk_id": "6939771743531696147",
      "language": "zh_cn",
      "children": []
    }
  }
}

说明

  • user_access_token 访问时,需要操作者是当前服务台的客服、管理员或所有者
  • parent_id 为父知识库分类 ID,创建顶级分类时填 "0"

代码示例

csharp
var categoryApi = feishuApp.GetApi<IFeishuUserV1HelpDeskCategory>();
categoryApi.HelpdeskTokenAndId = Convert.ToBase64String(
    Encoding.UTF8.GetBytes($"{helpdeskId}:{helpdeskToken}"));

var request = new CreateCategoryRequest
{
    Name = "Create a team and invite members",
    ParentId = "0",
    Language = "zh_cn"
};
var result = await categoryApi.CreateCategoryAsync(request);
Console.WriteLine($"分类 ID: {result?.Data?.Category?.CategoryId}");

DeleteCategoryAsync ​

用于删除单个服务台知识库分类。

函数签名

csharp
Task<FeishuNullDataApiResult?> DeleteCategoryAsync(
    [Path] string id,
    CancellationToken cancellationToken = default);

认证 UserAccessToken(用户访问令牌)

参数

参数名类型必填描述示例
idstring✅知识库分类 ID6948728206392295444
cancellationTokenCancellationToken⚪取消操作令牌对象default

响应

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

说明

  • user_access_token 访问时,需要操作者是当前服务台的客服、管理员或所有者
  • 该接口无请求体与查询参数

代码示例

csharp
var categoryApi = feishuApp.GetApi<IFeishuUserV1HelpDeskCategory>();
var result = await categoryApi.DeleteCategoryAsync("6948728206392295444");
Console.WriteLine($"删除结果: {result?.Code == 0}");

UpdateCategoryAsync ​

用于更新单个服务台知识库分类。

函数签名

csharp
Task<FeishuNullDataApiResult?> UpdateCategoryAsync(
    [Path] string id,
    [Body] UpdateCategoryRequest request,
    CancellationToken cancellationToken = default);

认证 UserAccessToken(用户访问令牌)

参数

参数名类型必填描述示例
idstring✅知识库分类 ID6948728206392295444
requestUpdateCategoryRequest✅更新知识库分类请求体(name 与 parent_id 均选填)-
cancellationTokenCancellationToken⚪取消操作令牌对象default

响应

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

说明

  • user_access_token 访问时,需要操作者是当前服务台的客服、管理员或所有者
  • name 为新名称,parent_id 为新的父知识库分类 ID,二者均为选填

代码示例

csharp
var categoryApi = feishuApp.GetApi<IFeishuUserV1HelpDeskCategory>();
var request = new UpdateCategoryRequest
{
    Name = "Create a team and invite members",
    ParentId = "0"
};
var result = await categoryApi.UpdateCategoryAsync("6948728206392295444", request);
Console.WriteLine($"更新结果: {result?.Code == 0}");