追加数据
在电子表格工作表的指定范围中,在空白位置中追加数据。例如,若指定范围参数 range 为 6e5ed3!A1:B2,该接口将会依次寻找 A1、A2、A3...单元格,在找到的第一个空白位置中写入数据。
使用限制
- 单次写入范围不可超过 5,000 行、100 列。
- 每个单元格不超过 50,000 字符,由于服务端会增加控制字符,因此推荐每个单元格不超过 40,000 字符。
前提条件
调用此接口前,请确保当前调用身份(tenant_access_token 或 user_access_token)已有电子表格的阅读、编辑等文档权限,否则接口将返回 HTTP 403 或 400 状态码。了解更多,参考如何为应用或用户开通文档权限。
请求
| 项目 | 值 |
|---|---|
| HTTP URL | https://open.feishu.cn/open-apis/sheets/v2/spreadsheets/:spreadsheetToken/values_append |
| HTTP Method | POST |
| 接口频率限制 | 100 次/秒 |
| 支持的应用类型 | custom,isv |
| 权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用 开启任一权限即可 | drive:drive 查看、评论、编辑和管理云空间中所有文件 sheets:spreadsheet 查看、评论、编辑和管理电子表格 |
请求头
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| Authorization | string | 是 | 通过访问凭证(access_token)对调用者身份进行鉴权。可选值: - tenant_access_token: 租户授权凭证。应用代表租户(即企业或团队)执行对应操作。示例值:"Bearer t-7f1bcd13fc57d46bac21793aabcef" - user_access_token:用户授权凭证。应用代表用户执行对应操作。示例值:"Bearer u-7f1bcd13fc57d46bac21793aabcef" 了解更多,参考获取访问凭证。 |
| Content-Type | string | 是 | 固定值:"application/json; charset=utf-8" |
路径参数
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| spreadsheetToken | string | 是 | 电子表格的 token。可通过以下两种方式获取。了解更多,参考电子表格概述。 - 电子表格的 URL:https://sample.feishu.cn/sheets/==Iow7sNNEphp3WbtnbCscPqabcef== - 调用获取文件夹中的文件清单 示例值:"Iow7sNNEphp3WbtnbCscPqabcef" |
查询参数
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| insertDataOption | string | 否 | 指定追加数据的方式,默认值为 OVERWRITE,即若空行数量小于追加数据的行数,则会覆盖已有数据。可选值: - OVERWRITE:若空行的数量小于追加数据的行数,则会覆盖已有数据 - INSERT_ROWS:插入足够数量的行后再进行数据追加 |
请求体
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
valueRange | object | 是 | 指定工作表中的范围和追加的数据。 |
└ range | string | 是 | 追加数据的范围。格式为 !<开始位置>:<结束位置>。其中: - sheetId 为工作表 ID,通过获取工作表 获取 - <开始位置>:<结束位置> 为工作表中单元格的范围,数字表示行索引,字母表示列索引。如 A2:B2 表示该工作表第 2 行的 A 列到 B 列。range支持四种写法,详情参考电子表格概述注意: range 所指定的范围需要大于等于追加的数据所占用的范围。 |
└ values | array> | 是 | 追加的数据。如要写入公式、超链接、email、@人等,可参考支持写入数据类型。 |
请求体示例
json
{
"valueRange": {
"range": "Q7PlXT!A1:B4",
"values": [
[
"===",
"https://open.feishu.cn"
],
[
"Hello",
"https://open.feishu.cn"
],
[
"World",
"https://open.feishu.cn"
],
[
"===",
"https://open.feishu.cn"
]
]
}
}cURL 请求示例
bash
curl --location --request POST 'https://open.feishu.cn/open-apis/sheets/v2/spreadsheets/shtcngNygNfuqhxTBf588jwgWbJ/values_append?insertDataOption=OVERWRITE' \
--header 'Authorization: Bearer t-e346617a4acfc3a11d4ed24dca0d0c0fc8e0067e' \
--header 'Content-Type: application/json' \
--data-raw '{
"valueRange": {
"range": "Q7PlXT!A1:B4",
"values": [
[
"===",
"https://open.feishu.cn"
],
[
"Hello",
"https://open.feishu.cn"
],
[
"World",
"https://open.feishu.cn"
],
[
"===",
"https://open.feishu.cn"
]
]
}
}'响应
响应体
| 名称 | 类型 | 描述 |
|---|---|---|
code | int | 错误码,非 0 表示失败 |
msg | string | 错误描述 |
data | \- | - |
└ spreadsheetToken | string | 电子表格的 token |
└ tableRange | string | 追加数据的范围 |
└ revision | int | 工作表的版本号。从 0 开始计数,更新一次版本号加一。 |
└ updates | object | 追加数据的范围、更新的行列总数等 |
└ spreadsheetToken | string | 电子表格的 token |
└ updatedRange | string | 追加数据的范围 |
└ updatedRows | int | 更新的行总数 |
└ updatedColumns | int | 更新的列总数 |
└ updatedCells | int | 更新的单元格总数 |
└ revision | int | 工作表的版本号。从 0 开始计数,更新一次版本号加一。 |
响应体示例
json
{
"code": 0,
"data": {
"revision": 18,
"spreadsheetToken": "GQJHsEgcoh2qDHtSxeKcJCabcef",
"tableRange": "6e5ed3!A1:C1",
"updates": {
"revision": 18,
"spreadsheetToken": "GQJHsEgcoh2qDHtSxeKcJCabcef",
"updatedCells": 3,
"updatedColumns": 3,
"updatedRange": "6e5ed3!A1:C1",
"updatedRows": 1
}
},
"msg": "success"
}错误码
具体可参考:服务端错误码说明
