PicoBot/.agents/skills/lark-base/references/lark-base-record-batch-update.md
ooodc a7883dbed9 refactor(todo): 重构待办事项管理逻辑及更新状态规则
- 移除 TodoItem 中的 priority、created_at 和 updated_at 字段
- 强制每个任务都必须有唯一 id,且由用户负责生成
- 修改合并模式逻辑,merge=true 下保留未提及的旧任务
- 支持已完成和已取消任务重新激活(状态改回 pending 或 in_progress)
- 禁止 in_progress 状态退回到 pending,必须标记为 completed 或 cancelled
- 优化状态转换校验,允许特定状态间合法切换
- 简化任务变更消息,移除详细的新增/更新/移除统计
- 更新文档和示例,明确 id 必须由用户生成和使用
- 修复和补充测试,增强状态转换和合并模式验证
- 调整任务时间戳生成逻辑,统一使用当前时间及索引
- 该变更提供更合理的任务状态机械及管理模式,提升稳定性和易用性
2026-06-13 09:22:33 +08:00

2.1 KiB
Raw Blame History

base +record-batch-update (batch update)

前置条件: 先阅读 ../lark-shared/SKILL.md 了解认证、全局参数和安全规则。

批量更新记录(将同一份 patch 批量应用到一批 record_id_list)。

推荐命令

lark-cli base +record-batch-update --base-token <base_token> --table-id <table_id> \
  --json '{"record_id_list":["<record_id>"],"patch":{"状态":"完成"}}'

lark-cli base +record-batch-update --base-token <base_token> --table-id <table_id> --json @batch-update.json

参数

参数 必填 说明
--base-token <token> Base Token
--table-id <id_or_name> 表 ID 或表名
--json <body> 批量更新请求体,必须是 JSON 对象。支持直接传 JSON 字符串,或 @<file_path> 从文件读取

API

POST /open-apis/base/v3/bases/:base_token/tables/:table_id/records/batch_update

--json 结构

本节只说明 +record-batch-update 的外层 JSON 形状CellValue 统一看 lark-base-cell-value.md

对象形态:{"record_id_list":[...],"patch":{...}}

字段 类型 必填 说明
record_id_list string[] 要更新的记录 ID 列表(单次最多 200 条)
patch Map<FieldNameOrID, CellValue> 字段更新对象key 是字段名或字段 IDvalue 是 CellValue;同一份 patch 会应用到 record_id_list 内所有记录

返回重点

返回 record_id_listupdate,可选返回 ignored_fieldsupdate 可能为空对象。

坑点

  • 这是“同值批量更新”:所有 record_id_list 都应用同一份 patch
  • record_id_list 最大 200 条,超过会被接口校验拒绝。
  • 命令不会自动做字段/行映射转换,传什么就发什么。
  • 如果 patch 包含只读字段,返回里可能出现 ignored_fields;这些字段不会被更新。

参考