feishu-approval

v2026.09.24

飞书审批。创建审批实例、查询审批状态。

GitHub
安装命令
npx skhub add alextangson/feishu-approval
Markdown
SKILL.md

飞书审批

通过 Approval API 创建和查询审批实例。

Base URL: https://open.feishu.cn/open-apis/approval/v4

认证与 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 分钟刷新)


审批实例

API端点方法请求体示例说明
创建实例/instancesPOST{"approval_code":"7C46...","user_id":"ou_xxx","form":"{\"widget1\":\"value1\"}"}发起审批
查询实例/instances/{instance_id}GET-获取审批状态
审批操作/instances/{instance_id}/approvePOST{"comment":"同意","task_id":"xxx"}同意/拒绝审批
撤回审批/instances/{instance_id}/cancelPOST{"user_id":"ou_xxx"}申请人撤回
转交审批/instances/{instance_code}/transferPOST{"user_id":"ou_xxx","transfer_user_id":"ou_yyy","comment":"转交"}转交给他人
催办审批/instances/{instance_id}/urgePOST-发送催办提醒
获取实例列表/instancesGET查询参数:page_size=50&page_token=xxx&user_id=ou_xxx支持筛选参数(分页)
查询实例详情/instances/detailPOST{"instance_code":"xxx"}查询完整详情

创建实例:

{
  "approval_code": "7C468A54-8745-2245-9675-08B7C63E7A85",
  "user_id": "ou_xxx",
  "form": "{\"widget1\":\"value1\"}"
}

审批任务

API端点方法请求体示例说明
获取任务列表/tasksGET-查询待办任务
获取任务详情/tasks/{task_id}GET-查询任务详情
审批任务/tasks/{task_id}/approvePOST{"comment":"同意"}处理审批任务
转交任务/tasks/{task_id}/transferPOST{"transfer_user_id":"ou_xxx"}转交任务

审批定义

API端点方法请求体示例说明
获取定义列表/approvalsGET-查询所有审批模板
获取定义详情/approvals/{approval_code}GET-查询模板详情
获取定义表单/approvals/{approval_code}/formsGET-查询表单字段定义

审批抄送

API端点方法请求体示例说明
获取抄送列表/ccGET-查询抄送我的审批
已读抄送/cc/{instance_id}/readPOST-标记抄送已读

审批评论

API端点方法请求体示例说明
添加评论/instances/{instance_id}/commentsPOST{"content":"评论内容","user_id":"ou_xxx"}添加审批评论
获取评论/instances/{instance_id}/commentsGET-查询评论列表

常见参数说明

user_id_type: 用户 ID 类型

  • open_id(默认)
  • user_id
  • union_id

分页参数:

  • page_size: 每页数量(默认 20,最大 100)
  • page_token: 分页标记

实例状态:

  • PENDING: 审批中
  • APPROVED: 已通过
  • REJECTED: 已拒绝
  • CANCELED: 已撤回
  • DELETED: 已删除

测试示例

获取审批定义列表:

curl -X GET "https://open.feishu.cn/open-apis/approval/v4/approvals?page_size=10" \
  -H "Authorization: Bearer ${TOKEN}"

创建审批实例:

curl -X POST "https://open.feishu.cn/open-apis/approval/v4/instances" \
  -H "Authorization: Bearer ${TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
    "approval_code": "7C468A54-8745-2245-9675-08B7C63E7A85",
    "user_id": "ou_xxx",
    "form": "{\"widget1\":\"请假3天\"}"
  }'

查询实例列表:

curl -X GET "https://open.feishu.cn/open-apis/approval/v4/instances?page_size=20&user_id=ou_xxx" \
  -H "Authorization: Bearer ${TOKEN}"

最佳实践

  1. 先获取审批定义(确认 form 字段)
  2. form 必须字符串化 JSON
  3. 审批操作需审批人权限
  4. 分页查询:大量数据用 page_token 分页
  5. user_id 必填:创建实例和查询列表都需要指定 user_id
发现
标签

此技能尚未发布标签。

版本
最新版本元数据

版本

v2026.09.24

发布时间

Sep 24, 2026

分类

未分类

许可证

MIT

源路径

feishu-approval

默认分支

main

最新提交

7569ef1

Tree SHA

561a6d9