# 新增记录

在多维表格数据表中新增一条记录。

## 前提条件

调用此接口前，请确保当前调用身份（tenant_access_token 或 user_access_token）已有多维表格的编辑等文档权限，否则接口将返回 HTTP 403 或 400 状态码。了解更多，参考[如何为应用或用户开通文档权限](https://open.feishu.cn/document/ukTMukTMukTM/uczNzUjL3czM14yN3MTN#16c6475a)。

## 注意事项

从其它数据源同步的数据表，不支持对记录进行增加、删除、和修改操作。

## 请求

基本 | &nbsp;
---|---
HTTP URL | https://open.feishu.cn/open-apis/bitable/v1/apps/:app_token/tables/:table_id/records
HTTP Method | POST
接口频率限制 | [50 次/秒](https://open.feishu.cn/document/ukTMukTMukTM/uUzN04SN3QjL1cDN)
支持的应用类型 | Custom App、Store App
权限要求<br>**调用该 API 所需的权限。开启其中任意一项权限即可调用**<br>开启任一权限即可 | 新增记录(base:record:create)<br>查看、评论、编辑和管理多维表格(bitable:app)
字段权限要求 | **注意事项**：该接口返回体中存在下列敏感字段，仅当开启对应的权限后才会返回；如果无需获取这些字段，则不建议申请<br>获取用户基本信息(contact:user.base:readonly)<br>获取用户 user ID(contact:user.employee_id:readonly)<br>以应用身份访问通讯录(contact:contact:access_as_app)<br>读取通讯录(contact:contact:readonly)<br>以应用身份读取通讯录(contact:contact:readonly_as_app)

### 请求头

名称 | 类型 | 必填 | 描述
---|---|---|---
Authorization | string | 是 | `tenant_access_token`<br>或<br>`user_access_token`<br>**值格式**："Bearer `access_token`"<br>**示例值**："Bearer u-7f1bcd13fc57d46bac21793a18e560"<br>[了解更多：如何选择与获取 access token](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-choose-which-type-of-token-to-use)
Content-Type | string | 是 | **固定值**："application/json; charset=utf-8"

### 路径参数

名称 | 类型 | 描述
---|---|---
app_token | string | 多维表格 App 的唯一标识。不同形态的多维表格，其 `app_token` 的获取方式不同：<br>- 如果多维表格的 URL 以 ==**feishu.cn/base**== 开头，该多维表格的 `app_token` 是下图高亮部分：<br>![app_token.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/6916f8cfac4045ba6585b90e3afdfb0a_GxbfkJHZBa.png?height=766&lazyload=true&width=3004)<br>- 如果多维表格的 URL 以 ==**feishu.cn/wiki**== 开头，你需调用知识库相关[获取知识空间节点信息](https://open.feishu.cn/document/ukTMukTMukTM/uUDN04SN0QjL1QDN/wiki-v2/space/get_node)接口获取多维表格的 app_token。当 `obj_type` 的值为 `bitable` 时，`obj_token` 字段的值才是多维表格的 `app_token`。<br>了解更多，参考[多维表格 app_token 获取方式](https://open.feishu.cn/document/ukTMukTMukTM/uUDN04SN0QjL1QDN/bitable-overview#-752212c)。<br>**示例值**："bascng7vrxcxpig7geggXiCtadY"
table_id | string | 多维表格数据表的唯一标识。获取方式：<br>- 你可通过多维表格 URL 获取 `table_id`，下图高亮部分即为当前数据表的 `table_id`<br>- 也可通过[列出数据表](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/bitable-v1/app-table/list)接口获取 `table_id`<br>![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/18741fe2a0d3cafafaf9949b263bb57d_yD1wkOrSju.png?height=746&lazyload=true&maxWidth=700&width=2976)<br>**数据校验规则**：<br>- 长度范围：`0` ～ `50` 字符<br>**示例值**："tblUa9vcYjWQYJCj"

### 查询参数

名称 | 类型 | 必填 | 描述
---|---|---|---
user_id_type | string | 否 | 用户 ID 类型<br>**示例值**：open_id<br>**可选值有**：<br>- open_id：标识一个用户在某个应用中的身份。同一个用户在不同应用中的 Open ID 不同。[了解更多：如何获取 Open ID](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid)<br>- union_id：标识一个用户在某个应用开发商下的身份。同一用户在同一开发商下的应用中的 Union ID 是相同的，在不同开发商下的应用中的 Union ID 是不同的。通过 Union ID，应用开发商可以把同个用户在多个应用中的身份关联起来。[了解更多：如何获取 Union ID？](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-union-id)<br>- user_id：标识一个用户在某个租户内的身份。同一个用户在租户 A 和租户 B 内的 User ID 是不同的。在同一个租户内，一个用户的 User ID 在所有应用（包括商店应用）中都保持一致。User ID 主要用于在不同的应用间打通用户数据。[了解更多：如何获取 User ID？](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-user-id)<br>**默认值**：`open_id`<br>**当值为 `user_id`，字段权限要求**：<br>获取用户 user ID(contact:user.employee_id:readonly)
client_token | string | 否 | 格式为标准的 uuidv4，操作的唯一标识，用于幂等的进行更新操作。此值为空表示将发起一次新的请求，此值非空表示幂等的进行更新操作。<br>**示例值**：fe599b60-450f-46ff-b2ef-9f6675625b97
ignore_consistency_check | boolean | 否 | 是否忽略一致性读写检查，默认为 false，即在进行读写操作时，系统将确保读取到的数据和写入的数据是一致的。可选值：<br>- true：忽略读写一致性检查，提高性能，但可能会导致某些节点的数据不同步，出现暂时不一致<br>- false：开启读写一致性检查，确保数据在读写过程中一致<br>**示例值**：true

### 请求体

名称 | 类型 | 必填 | 描述
---|---|---|---
fields | map&lt;string, union&gt; | 是 | 要新增的记录的数据。你需先指定数据表中的字段（即指定列），再传入正确格式的数据作为一条记录。<br>**注意**：<br>该接口支持的字段类型及其描述如下所示：<br>- 文本： 填写字符串格式的值<br>- 数字：填写数字格式的值<br>- 单选：填写选项值，对于新的选项值，将会创建一个新的选项<br>- 多选：填写多个选项值，对于新的选项值，将会创建一个新的选项。如果填写多个相同的新选项值，将会创建多个相同的选项<br>- 日期：填写毫秒级时间戳<br>- 复选框：填写 true 或 false<br>- 条码<br>- 人员：填写用户的[open_id](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid)、[union_id](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-union-id) 或 [user_id](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-user-id)，类型需要与 user_id_type 指定的类型一致<br>- 电话号码：填写文本内容<br>- 超链接：参考以下示例，text 为文本值，link 为 URL 链接<br>- 附件：填写附件 token，需要先调用[上传素材](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/media/upload_all)或[分片上传素材](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/media/upload_prepare)接口将附件上传至该多维表格中<br>- 单向关联：填写被关联表的记录 ID<br>- 双向关联：填写被关联表的记录 ID<br>- 地理位置：填写经纬度坐标<br>不同类型字段的数据结构请参考[多维表格记录数据结构](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/bitable-v1/app-table-record/bitable-record-data-structure-overview)。<br>**示例值**：{<br>"人员": [<br>{<br>"id": "ou_2910013f1e6456f16a0ce75ede9abcef"<br>}<br>]<br>}

### 请求体示例
```json
{
  "fields": {
    "任务名称": "拜访潜在客户",
    "条码": "+$$3170930509104X512356",
    "工时": 10,
    "货币": 3,
    "评分": 3,
    "进度": 0.25,
    "单选": "选项1",
    "多选": [
      "选项1",
      "选项2"
    ],
    "日期": 1674206443000,
    "复选框": true,
    "人员": [
      {
        "id": "ou_2910013f1e6456f16a0ce75ede9abcef"
      },
      {
        "id": "ou_e04138c9633dd0d2ea166d79f54abcef"
      }
    ],
    "群组": [
      {
        "id": "oc_cd07f55f14d6f4a4f1b51504e7e97f48"
      }
    ],
    "电话号码": "1302616xxxx",
    "超链接": {
      "text": "飞书多维表格官网",
      "link": "https://www.feishu.cn/product/base"
    },
    "附件": [
      {
        "file_token": "DRiFbwaKsoZaLax4WKZbEGCccoe"
      },
      {
        "file_token": "BZk3bL1Enoy4pzxaPL9bNeKqcLe"
      },
      {
        "file_token": "EmL4bhjFFovrt9xZgaSbjJk9c1b"
      },
      {
        "file_token": "Vl3FbVkvnowlgpxpqsAbBrtFcrd"
      }
    ],
    "单向关联": [
      "recHTLvO7x",
      "recbS8zb2m"
    ],
    "双向关联": [
      "recHTLvO7x",
      "recbS8zb2m"
    ],
    "地理位置": "116.397755,39.903179"
  }
}
```

## 响应

### 响应体

名称 | 类型 | 描述
---|---|---
code | int | 错误码，非 0 表示失败
msg | string | 错误描述
data | \- | \-
record | app.table.record | 新增记录的内容
fields | map&lt;string, union&gt; | 成功新增的记录的数据
record_id | string | 新增记录的 ID
created_by | person | 该记录的创建人信息。本接口不返回该参数
id | string | 创建人的用户 ID，ID 类型与 `user_id_type` 所指定的类型一致
name | string | 用户的中文名称
en_name | string | 用户的英文名称
email | string | 用户的邮箱
avatar_url | string | 头像链接<br>**字段权限要求（满足任一）**：<br>获取用户基本信息(contact:user.base:readonly)<br>以应用身份访问通讯录(contact:contact:access_as_app)<br>读取通讯录(contact:contact:readonly)<br>以应用身份读取通讯录(contact:contact:readonly_as_app)
created_time | int | 该记录的创建时间。本接口不返回该参数
last_modified_by | person | 该记录最近一次更新的修改人。本接口不返回该参数
id | string | 修改人的用户 ID，ID 类型与 `user_id_type` 所指定的类型一致
name | string | 用户的中文名称
en_name | string | 用户的英文名称
email | string | 用户的邮箱
avatar_url | string | 头像链接<br>**字段权限要求（满足任一）**：<br>获取用户基本信息(contact:user.base:readonly)<br>以应用身份访问通讯录(contact:contact:access_as_app)<br>读取通讯录(contact:contact:readonly)<br>以应用身份读取通讯录(contact:contact:readonly_as_app)
last_modified_time | int | 该记录最近一次的更新时间。本接口不返回该参数
shared_url | string | 记录分享链接，本接口不返回该参数，批量获取记录接口将返回该参数
record_url | string | 记录链接，本接口不返回该参数，查询记录接口将返回该参数

### 响应体示例
```json
{
  "code": 0,
  "data": {
    "record": {
      "fields": {
        "任务名称": "维护客户关系",
        "创建日期": 1674206443000,
        "截止日期": 1674206443000
      },
      "id": "recusutYZm4ulo",
      "record_id": "recusutYZm4ulo"
    }
  },
  "msg": "success"
}
```

### 错误码

HTTP状态码 | 错误码 | 描述 | 排查建议
---|---|---|---
200 | 1254000 | WrongRequestJson | 请求体错误
200 | 1254001 | WrongRequestBody | 请求体错误
200 | 1254002 | Fail | 内部错误，请联系[技术支持](https://applink.feishu.cn/TLJpeNdW)
200 | 1254003 | WrongBaseToken | app_token 错误
200 | 1254004 | WrongTableId | table_id 错误
200 | 1254005 | WrongViewId | view_id 错误
200 | 1254006 | WrongRecordId | 检查 record_id
200 | 1254007 | EmptyValue | 空值
200 | 1254008 | EmptyView | 空视图
200 | 1254009 | WrongFieldId | 字段 id 错误
200 | 1254010 | ReqConvError | 请求错误
400 | 1254015 | Field types do not match. | 字段类型和值不匹配
403 | 1254027 | UploadAttachNotAllowed | 附件未挂载, 禁止上传
200 | 1254030 | TooLargeResponse | 响应体过大
400 | 1254036 | Base is copying, please try again later. | 复制多维表格为异步操作，该错误码表示当前多维表格仍在复制中，在复制期间无法操作当前多维表格。需要等待复制完成后再操作。
400 | 1254037 | Invalid client token, make sure that it complies with the specification. | 幂等键格式错误，需要传入 uuidv4 格式
200 | 1254040 | BaseTokenNotFound | app_token 不存在
200 | 1254041 | TableIdNotFound | table_id 不存在
200 | 1254042 | ViewIdNotFound | view_id 不存在
200 | 1254043 | RecordIdNotFound | record_id 不存在
200 | 1254044 | FieldIdNotFound | field_id  不存在
200 | 1254045 | FieldNameNotFound | 字段名称不存在。请检查接口中字段名称和多维表格中的字段名称是否完全匹配。如果难以排查，建议你调用[列出字段](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/bitable-v1/app-table-field/list)接口获取字段名称，因为根据表格页面的 UI 名称可能会忽略空格、换行或特殊符号等差异。
200 | 1254060 | TextFieldConvFail | 多行文本字段错误
200 | 1254061 | NumberFieldConvFail | 数字字段错误
200 | 1254062 | SingleSelectFieldConvFail | 单选字段错误
200 | 1254063 | MultiSelectFieldConvFail | 多选字段错误
200 | 1254064 | DatetimeFieldConvFail | 日期字段错误
200 | 1254065 | CheckboxFieldConvFail | 复选框字段错误
200 | 1254066 | UserFieldConvFail | 人员字段有误。原因可能是：<br>- `user_id_type` 参数指定的 ID 类型与传入的 ID 类型不匹配<br>- 传入了不识别的类型或结构，目前只支持填写 `id` 参数，且需要传入数组<br>- 跨应用传入了 `open_id`。如果跨应用传入 ID，建议使用 `user_id`。不同应用获取的 `open_id` 不能交叉使用<br>- 若想对人员字段传空，可传 null
200 | 1254067 | LinkFieldConvFail | 关联字段错误
200 | 1254068 | URLFieldConvFail | 超链接字段错误
200 | 1254069 | AttachFieldConvFail | 附件字段错误
200 | 1254072 | Failed to convert phone field, please make sure it is correct. | 电话字段错误
400 | 1254074 | The parameters of Duplex Link field are invalid and need to be filled with an array of string. | 双向关联字段格式非法
200 | 1254100 | TableExceedLimit | 数据表或仪表盘数量超限。每个多维表格中，数据表加仪表盘的数量最多为 100 个
200 | 1254101 | ViewExceedLimit | 视图数量超限, 限制200个
200 | 1254102 | FileExceedLimit | 文件数量超限
200 | 1254103 | RecordExceedLimit | 记录数量超限, 限制20,000条
200 | 1254104 | RecordAddOnceExceedLimit | 单次添加记录数量超限, 限制500条
200 | 1254105 | ColumnExceedLimit | 字段数量超限
200 | 1254106 | AttachExceedLimit | 附件过多
200 | 1254130 | TooLargeCell | 格子内容过大
200 | 1254290 | TooManyRequest | 请求过快，稍后重试
200 | 1254291 | Write conflict | 同一个数据表(table) 不支持并发调用写接口，请检查是否存在并发调用写接口。写接口包括：新增、修改、删除记录；新增、修改、删除字段；修改表单；修改视图等。
200 | 1254301 | OperationTypeError | 多维表格未开启高级权限或不支持开启高级权限
200 | 1254303 | The attachment does not belong to this bitable. | 没有写入附件至多维表格的权限。要在多维表格中写入附件，你需先调用[上传素材](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/media/upload_all)接口，将附件上传到当前多维表格中，再新增记录
200 | 1255001 | InternalError | 内部错误，请联系[技术支持](https://applink.feishu.cn/TLJpeNdW)
200 | 1255002 | RpcError | 内部错误，请联系[技术支持](https://applink.feishu.cn/TLJpeNdW)
200 | 1255003 | MarshalError | 序列化错误，请联系[技术支持](https://applink.feishu.cn/TLJpeNdW)
200 | 1255004 | UmMarshalError | 反序列化错误
200 | 1255005 | ConvError | 内部错误，请联系[技术支持](https://applink.feishu.cn/TLJpeNdW)
400 | 1255006 | Client token conflict, please generate a new client token and try again. | 幂等键冲突，需要重新随机生成一个幂等键
504 | 1255040 | 请求超时 | 进行重试
400 | 1254607 | Data not ready, please try again later | 该报错一般是由于前置操作未执行完成，或本次操作数据太大，服务器计算超时导致。遇到该错误码时，建议等待一段时间后重试。通常有以下几种原因：<br>- **编辑操作频繁**：开发者对多维表格的编辑操作非常频繁。可能会导致由于等待前置操作处理完成耗时过长而超时的情况。多维表格底层对数据表的处理基于版本维度的串行方式，不支持并发。因此，并发请求时容易出现此类错误，不建议开发者对单个数据表进行并发请求。<br>- **批量操作负载重**：开发者在多维表格中进行批量新增、删除等操作时，如果数据表的数据量非常大，可能会导致单次请求耗时过长，最终导致请求超时。建议开发者适当降低批量请求的 page_size 以减少请求耗时。<br>- **资源分配与计算开销**：资源分配是基于单文档维度的，如果读接口涉及公式计算、排序等计算逻辑，会占用较多资源。例如，并发读取一个文档下的多个数据表也可能导致该文档阻塞。
403 | 1254302 | Permission denied. | 调用身份缺少多维表格的高级权限。你需要为调用身份授予高级权限：<br>- 对用户授予高级权限，你需要在多维表格页面右上方 **分享** 入口为当前用户添加可管理权限。![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/df3911b4f747d75914f35a46962d667d_dAsfLjv3QC.png?height=546&lazyload=true&maxWidth=550)<br>- 对应用授予高级权限，你需通过多维表格页面右上方 **「...」** -> **「...更多」** ->**「添加文档应用」** 入口为应用添加可管理权限。<br>![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/22c027f63c540592d3ca8f41d48bb107_CSas7OYJBR.png?height=1994&maxWidth=550&width=3278)<br>![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/9f3353931fafeea16a39f0eb887db175_0tjzC9P3zU.png?maxWidth=550)<br>**注意**：<br>在 **添加文档应用** 前，你需确保目标应用至少开通了一个多维表格的 [API 权限](https://open.feishu.cn/document/ukTMukTMukTM/uYTM5UjL2ETO14iNxkTN/scope-list)。否则你将无法在文档应用窗口搜索到目标应用。    <br>- 你也可以在 **多维表格高级权限设置** 中添加用户或一个包含应用的群组, 给予这个群自定义的读写等权限。
403 | 1254304 | Permission denied. | 调用身份缺少高级权限。调用身份需拥有多维表格的可管理权限。了解更多，参考[如何为应用或用户开通文档权限](https://open.feishu.cn/document/ukTMukTMukTM/uczNzUjL3czM14yN3MTN#16c6475a)。
403 | 1254306 | The tenant or base owner is subject to base plan limits. | 联系租户管理员申请权益
403 | 1254608 | Same API requests are submitted repeatedly. | 基于同一个多维表格版本重复提交了更新请求，常见于并发或时间间隔极短的请求，例如并发将一个视图的信息更新为相同的内容。建议稍后重试

