📊 OpenClaw 飞书多维表格自动化指南

Bitable API 实战 · 自动化报表 · 数据同步 · 企业级应用

TL;DR:飞书多维表格(Bitable)是企业数据管理的利器。本文教你用 OpenClaw 自动化操作 Bitable — 创建表格、管理字段、增删改查记录、生成自动化报表。

🎯 飞书 Bitable 字段类型

类型代码说明示例值
文本1纯文本/富文本"Hello World"
数字2整数/小数42, 3.14
单选3单选下拉"进行中"
多选4多选下拉["标签A", "标签B"]
日期5日期时间1740441600000
复选框7布尔值true/false
人员11飞书用户[{id: "ou_xxx"}]
超链接15URL链接{text: "Google", link: "https://google.com"}
附件17文件附件[{file_token: "xxx"}]
创建时间1001自动记录自动填充
修改时间1002自动记录自动填充

🔧 创建多维表格

Step 1: 创建应用

# 创建新的多维表格应用 feishu_bitable_app(action="create", name="项目管理表") # 返回 app_token,后续操作都需要

Step 2: 创建数据表

# 创建带字段定义的数据表 feishu_bitable_app_table( action="create", app_token="bascnXXXXXX", table={ "name": "任务清单", "fields": [ {"field_name": "任务名称", "type": 1}, {"field_name": "负责人", "type": 11}, {"field_name": "状态", "type": 3, "property": { "options": [ {"name": "待开始"}, {"name": "进行中"}, {"name": "已完成"} ] }}, {"field_name": "优先级", "type": 3, "property": { "options": [ {"name": "P0-紧急"}, {"name": "P1-高"}, {"name": "P2-中"}, {"name": "P3-低"} ] }}, {"field_name": "截止日期", "type": 5}, {"field_name": "完成度", "type": 2}, {"field_name": "备注", "type": 1} ] } )

📝 记录 CRUD 操作

创建记录

# 创建单条记录 feishu_bitable_app_table_record( action="create", app_token="bascnXXXXXX", table_id="tblXXXXXX", fields={ "任务名称": "完成SEO优化", "状态": "进行中", "优先级": "P1-高", "截止日期": 1740441600000, "完成度": 60, "备注": "需要优化meta标签和内部链接" } ) # 批量创建记录 feishu_bitable_app_table_record( action="batch_create", app_token="bascnXXXXXX", table_id="tblXXXXXX", records=[ {"fields": {"任务名称": "任务1", "状态": "待开始"}}, {"fields": {"任务名称": "任务2", "状态": "待开始"}}, {"fields": {"任务名称": "任务3", "状态": "进行中"}} ] )

查询记录

# 列出所有记录 feishu_bitable_app_table_record( action="list", app_token="bascnXXXXXX", table_id="tblXXXXXX", page_size=50 ) # 带筛选条件查询 feishu_bitable_app_table_record( action="list", app_token="bascnXXXXXX", table_id="tblXXXXXX", filter={ "conjunction": "and", "conditions": [ {"field_name": "状态", "operator": "is", "value": ["进行中"]}, {"field_name": "优先级", "operator": "is", "value": ["P0-紧急", "P1-高"]} ] } ) # 排序查询 feishu_bitable_app_table_record( action="list", app_token="bascnXXXXXX", table_id="tblXXXXXX", sort=[{"field_name": "截止日期", "desc": false}] )

更新记录

# 更新单条记录 feishu_bitable_app_table_record( action="update", app_token="bascnXXXXXX", table_id="tblXXXXXX", record_id="recXXXXXX", fields={ "状态": "已完成", "完成度": 100 } ) # 批量更新 feishu_bitable_app_table_record( action="batch_update", app_token="bascnXXXXXX", table_id="tblXXXXXX", records=[ {"record_id": "rec1", "fields": {"状态": "已完成"}}, {"record_id": "rec2", "fields": {"完成度": 80}} ] )

删除记录

# 删除单条记录 feishu_bitable_app_table_record( action="delete", app_token="bascnXXXXXX", table_id="tblXXXXXX", record_id="recXXXXXX" ) # 批量删除 feishu_bitable_app_table_record( action="batch_delete", app_token="bascnXXXXXX", table_id="tblXXXXXX", record_ids=["rec1", "rec2", "rec3"] )

🔄 自动化报表场景

场景1:每日任务汇总

# Agent 自动查询今日完成的任务并生成报告 feishu_bitable_app_table_record( action="list", app_token="bascnXXXXXX", table_id="tblXXXXXX", filter={ "conjunction": "and", "conditions": [ {"field_name": "状态", "operator": "is", "value": ["已完成"]}, {"field_name": "完成时间", "operator": "isGreater", "value": ["today"]} ] } ) # 生成报告并发送到飞书群

场景2:数据同步

# 从外部数据源同步到 Bitable # 1. 获取外部数据 data = web_fetch(url="https://api.example.com/data") # 2. 转换为 Bitable 格式 records = transform_to_bitable(data) # 3. 批量写入 feishu_bitable_app_table_record( action="batch_create", app_token="bascnXXXXXX", table_id="tblXXXXXX", records=records )

💡 最佳实践

  1. 字段设计先行 — 创建表前先设计好字段结构,避免频繁修改
  2. 使用单选/多选 — 规范化数据输入,避免自由文本导致的数据不一致
  3. 合理使用筛选 — 大数据量时使用 filter 减少返回量
  4. 批量操作 — 多条记录使用 batch_create/batch_update,减少 API 调用
  5. 自动字段 — 使用创建时间(1001)和修改时间(1002)自动追踪
  6. 权限管理 — 使用 is_advanced 开启高级权限控制
⚠️ 注意事项: