feishu-drive

v2026.09.24

飞书云空间文件管理。上传/下载/移动/搜索文件、创建文件夹。

GitHub
Install command
npx skhub add alextangson/feishu-drive
Markdown
SKILL.md

飞书云空间文件管理

通过 Drive API 管理文件和文件夹。

Base URL: https://open.feishu.cn/open-apis/drive/v1

认证与 Token 获取

从 feishu_skills 根目录执行共享脚本:

TOKEN="$(./scripts/get_feishu_token.sh)"

请求头统一使用 Authorization: Bearer ${TOKEN}。

如果业务接口返回 token 无效、过期或 401,强制刷新后仅重试一次原请求:

TOKEN="$(./scripts/get_feishu_token.sh --force-refresh)"

环境变量:

  • FEISHU_APP_ID
  • FEISHU_APP_SECRET

本地缓存: ./.feishu_token_cache.json(未过期直接复用,默认提前 5 分钟刷新)


快速启动(必读)

为避免文件进入"私有黑盒":

  1. 创建锚点文件夹(如 AI-Workspace)
  2. 授权机器人:文件夹【协作】设置中添加应用为【管理】权限
  3. 获取 Token:复制文件夹 URL 中的 Token
  4. 测试:调用 batch_query 查询该 Token

⚠️ API 创建的文件夹默认只对机器人可见,需手动添加协作者。


文件夹操作

API端点方法请求体示例说明
创建文件夹/foldersPOST{"name":"文件夹名","folder_token":"root"}创建新文件夹
获取文件夹元数据/folders/{folder_token}/metaGET-查询文件夹详情
获取元数据(批量)/metas/batch_queryPOST{"request_list":[{"token":"fldxxx","type":"folder"}]}批量查询文件/文件夹
获取文件夹内容/folders/{folder_token}/childrenGET-查询文件夹内文件列表
移动文件夹/folders/{folder_token}/movePOST{"target_token":"fldxxx"}移动文件夹
复制文件夹/folders/{folder_token}/copyPOST{"target_token":"fldxxx"}复制文件夹
删除文件夹/folders/{folder_token}DELETE-删除空文件夹

文件上传

API端点方法请求体说明
小文件上传/files/upload_allPOSTmultipart/form-data一次性上传(<20MB)
大文件预上传/files/upload_preparePOST{"file_name":"big.zip","size":104857600}初始化分片上传
分片上传/files/upload_partPOSTmultipart/form-data上传单个分片
完成分片上传/files/upload_finishPOST{"upload_id":"xxx","block_num":10}完成上传

小文件上传:

POST /files/upload_all
Content-Type: multipart/form-data

file_name=test.txt
parent_type=explorer
parent_node=fldXXX
file=<binary>

文件下载

API端点方法说明
下载文件/files/{file_token}/downloadGET返回文件二进制流
获取文件元数据/files/{file_token}/metaGET查询文件详情
获取文件列表/filesGET参数:folder_token 父文件夹

文件操作

API端点方法请求体示例说明
移动文件/files/{file_token}/movePOST{"type":"explorer","folder_token":"fldXXX"}移动文件
复制文件/files/{file_token}/copyPOST{"type":"explorer","folder_token":"fldXXX","name":"副本.txt"}复制文件
删除文件/files/{file_token}DELETE-删除文件
创建快捷方式/shortcutsPOST{"target_token":"filexxx","parent_token":"fldxxx"}创建文件快捷方式
获取文件统计/files/{file_token}/statisticsGET-查询文件访问统计

搜索

API端点方法请求体示例说明
搜索文件/files/searchPOST{"search_key":"关键词","owner_ids":["ou_xxx"]}全文搜索
搜索V2/files/search_v2POST同上新版搜索接口

权限管理

API端点方法请求体示例说明
添加协作者/permissions/{token}/membersPOST{"member_type":"user","member_id":"ou_xxx","perm":"full_access"}添加权限
移除协作者/permissions/{token}/members/{member_id}DELETE-移除权限
获取协作者/permissions/{token}/membersGET-查询权限列表
更新协作者/permissions/{token}/members/{member_id}/patchPATCH{"perm":"edit"}修改权限
转让所有者/permissions/{token}/transfer_ownerPOST{"member_type":"user","member_id":"ou_xxx"}转移所有权
获取权限设置/permissions/{token}/publicGET-查询公开访问设置
更新权限设置/permissions/{token}/publicPATCH{"external_access":false}修改公开访问

权限类型: view(查看) / edit(编辑) / full_access(完全访问)


文件版本管理

API端点方法请求体示例说明
获取版本列表/files/{file_token}/versionsGET-查询文件历史版本
获取版本详情/files/{file_token}/versions/{version_id}GET-查询指定版本信息
删除版本/files/{file_token}/versions/{version_id}DELETE-删除历史版本

文件评论

API端点方法请求体示例说明
获取全文评论/files/{file_token}/commentsGET-查询文件所有评论
获取回复列表/files/{file_token}/comments/{comment_id}/repliesGET-查询评论的回复
添加全文评论/files/{file_token}/commentsPOST{"content":{"text":"评论内容"}}添加评论
回复评论/files/{file_token}/comments/{comment_id}/repliesPOST{"content":{"text":"回复内容"}}回复评论
解决/重开评论/files/{file_token}/comments/{comment_id}PATCH{"is_solved":true}标记评论状态

订阅管理

API端点方法请求体示例说明
订阅文件/files/{file_token}/subscriptionsPOST{"subscription_type":"file_edit"}订阅文件变更通知
获取订阅状态/files/{file_token}/subscriptions/{subscription_id}GET-查询订阅状态
取消订阅/files/{file_token}/subscriptions/{subscription_id}DELETE-取消订阅

订阅类型: file_edit(文件编辑) / file_comment(评论) / file_share(分享)


最佳实践

  1. 创建文件夹后立即添加协作者(避免不可见)
  2. 大文件用分片上传(>20MB)
  3. 权限继承:父文件夹授权后,子文件夹自动继承
  4. 版本管理:定期清理历史版本节省空间
  5. 订阅通知:关键文件订阅变更通知,及时响应
Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

MIT

Source path

feishu-drive

Default branch

main

Latest commit

7569ef1

Tree SHA

561a6d9