Skip to content

向多个范围写入数据

向电子表格某个工作表的多个指定范围中写入数据。若指定范围已内有数据,将被新写入的数据覆盖。

使用限制

  • 单次写入数据不得超过 5000 行、100列。
  • 每个单元格不超过 50,000 字符,由于服务端会增加控制字符,因此推荐每个单元格不超过 40,000 字符。

前提条件

调用此接口前,请确保当前调用身份(tenant_access_token 或 user_access_token)已有电子表格的编辑等文档权限,否则接口将返回 HTTP 403 或 400 状态码。了解更多,参考如何为应用或用户开通文档权限

请求

项目
HTTP URLhttps://open.feishu.cn/open-apis/sheets/v2/spreadsheets/:spreadsheetToken/values_batch_update
HTTP MethodPOST
接口频率限制100 次/秒
支持的应用类型custom,isv
权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用 开启任一权限即可drive:drive 查看、评论、编辑和管理云空间中所有文件 sheets:spreadsheet 查看、评论、编辑和管理电子表格

请求头

名称类型必填描述
Authorizationstring通过访问凭证(access_token)对调用者身份进行鉴权。可选值: - tenant_access_token: 租户授权凭证。应用代表租户(即企业或团队)执行对应操作。示例值:"Bearer t-7f1bcd13fc57d46bac21793aabcef" - user_access_token:用户授权凭证。应用代表用户执行对应操作。示例值:"Bearer u-7f1bcd13fc57d46bac21793aabcef" 了解更多,参考获取访问凭证
Content-Typestring固定值:"application/json; charset=utf-8"

路径参数

名称类型必填描述
spreadsheetTokenstring电子表格的 token。可通过以下两种方式获取。了解更多,参考电子表格概述。 - 电子表格的 URL:https://sample.feishu.cn/sheets/==Iow7sNNEphp3WbtnbCscPqabcef== - 调用获取文件夹中的文件清单 示例值:"Iow7sNNEphp3WbtnbCscPqabcef"

请求体

名称类型必填描述
valueRanges/指定写入的数据值与范围,支持传入多个 rangevalues 参数。
  └ rangestring写入数据的范围。格式为 !<开始位置>:<结束位置>。其中: - sheetId 为工作表 ID,通过获取工作表 获取。 - <开始位置>:<结束位置> 为工作表中单元格的范围,数字表示行索引,字母表示列索引。如 A2:B2 表示该工作表第 2 行的 A 列到 B 列。range支持四种写法,详情参考电子表格概述
注意range 所指定的范围需要大于等于写入的数据所占用的范围。
  └ valuesarray>写入的数据。如要写入公式、超链接、email、@人等,可参考电子表格支持写入的数据类型

请求体示例

json
{
  "valueRanges": [
    {
      "range": "1QXD0s!A1:C1",
      "values": [
        [
          "string1", 1, "http://www.xx.com"
        ]
      ]
    },
    {
      "range": "6e5ed3!A2:C2",
      "values": [
        [
          "string2", 2, "http://www.xx.com"
        ]
      ]
    }
  ]
}

cURL 请求示例

bash
curl --location --request POST 'https://open.feishu.cn/open-apis/sheets/v2/spreadsheets/shtcngNygNfuqhxTBf588jwgWbJ/values_batch_update' \
--header 'Authorization: Bearer t-e346617a4acfc3a11d4ed24dca0d0c0fc8e0067e' \
--header 'Content-Type: application/json' \
--data-raw '{
  "valueRanges": [
    {
      "range": "Q7PlXT!A6:B9",
      "values": [
        [
          6,1
        ],
        [
          6,1
        ],
        [
          6,1
        ],
        [
          6,1
        ]
      ]
    },
    {
      "range": "BzY8T5!A1:C2",
      "values": [
        [
          "Hello", 2, "https://www.xx.com"
        ],
        [
          "World", 2, "https://www.xx.com"
        ]
      ]
    }
  ]
}'

响应

响应体

名称类型描述
codeint错误码,非 0 表示失败
msgstring错误描述
data\--
  └ responses/所有写入数据的范围
    └ spreadsheetTokenstring电子表格的 token
    └ updatedRangestring写入的范围
    └ updatedRowsint写入的行数
    └ updatedColumnsint写入的列数
    └ updatedCellsint写入的单元格总数
  └ revisionint工作表的版本号。从 0 开始计数,更新一次版本号加一。
  └ spreadsheetTokenstring电子表格的 token

响应体示例

json
{
    "code": 0,
    "data": {
        "responses": [
            {
                "spreadsheetToken": "GQJHsEgcoh2qDHtSxeKcJCabcef",
                "updatedCells": 8,
                "updatedColumns": 2,
                "updatedRange": "4FRjKE!A6:B9",
                "updatedRows": 4
            },
            {
                "spreadsheetToken": "GQJHsEgcoh2qDHtSxeKcJCabcef",
                "updatedCells": 6,
                "updatedColumns": 3,
                "updatedRange": "6e5ed3!A1:C2",
                "updatedRows": 2
            }
        ],
        "revision": 88,
        "spreadsheetToken": "GQJHsEgcoh2qDHtSxeKcJCabcef"
    },
    "msg": "success"
}

错误码

具体可参考:服务端错误码说明

内容来源:飞书开放平台 · 自动爬取整理