服务端 API/云文档/云空间/上传/分片上传/分片上传文件（预上传）
# 分片上传文件（预上传）

发送初始化请求获取上传事务ID和分块策略，目前是以4MB大小进行定长分片。

**注意事项**：你在24小时内可保存上传事务ID和上传进度，以便可以恢复上传
**注意事项**：该接口不支持太高的并发，且调用频率上限为5QPS

## 请求

基本 | &nbsp;
---|---
HTTP URL | https://open.larksuite.com/open-apis/drive/v1/files/upload_prepare
HTTP Method | POST
支持的应用类型 | Custom App、Store App
权限要求<br>**调用该 API 所需的权限。开启其中任意一项权限即可调用**<br>开启任一权限即可 | 查看、评论、编辑和管理云空间中所有文件(drive:drive)<br>上传、下载文件到云空间(drive:file)

### 请求头

名称 | 类型 | 必填 | 描述
---|---|---|---
Authorization | string | 是 | `tenant_access_token`<br>或<br>`user_access_token`<br>**值格式**："Bearer `access_token`"<br>**示例值**："Bearer u-7f1bcd13fc57d46bac21793a18e560"<br>[了解更多：获取与使用access_token](https://open.larksuite.com/document/ukTMukTMukTM/uMTNz4yM1MjLzUzM)
Content-Type | string | 是 | **固定值**："application/json; charset=utf-8"

关于云文档接口的 AccessToken 调用说明详见 [云文档接口快速入门](https://open.larksuite.com/document/ukTMukTMukTM/uczNzUjL3czM14yN3MTN)

### 请求体

名称 | 类型 | 必填 | 描述
---|---|---|---
file_name | string | 是 | 文件名<br>**示例值**："test.txt"<br>**数据校验规则**：<br>- 最大长度：`250` 字符
parent_type | string | 是 | 上传点类型<br>**示例值**："explorer"<br>**可选值有**：<br>- explorer：云空间。
parent_node | string | 是 | 文件夹的token<br>**示例值**："fldbcO1UuPz8VwnpPx5a92abcef"
size | int | 是 | 文件大小<br>**示例值**：1024<br>**数据校验规则**：<br>- 最小值：`0`

### 请求体示例
```json
{
    "file_name": "test.txt",
    "parent_type": "explorer",
    "parent_node": "fldbcO1UuPz8VwnpPx5a92abcef",
    "size": 1024
}
```

## 响应

### 响应体

名称 | 类型 | 描述
---|---|---
code | int | 错误码，非 0 表示失败
msg | string | 错误描述
data | \- | \-
upload_id | string | 分片上传事务ID
block_size | int | 分片大小策略
block_num | int | 分片数量

### 响应体示例
```json
{
    "code": 0,
    "msg": "success",
    "data": {
        "upload_id": "7111211691345512356",
        "block_size": 4194304,
        "block_num": 1
    }
}
```

### 错误码

HTTP状态码 | 错误码 | 描述 | 排查建议
---|---|---|---
200 | 1061001 | internal error. | 服务内部错误，包括超时，错误码没处理。
400 | 1061002 | params error. | 请检查请求参数是否正确。
403 | 1061004 | forbidden. | 请确认当前身份是否有对应上传节点的的权限，如用户是否有上传到指定doc的编辑权限。
500 | 1061022 | file version conflict. | 文件版本号冲突。
400 | 1061043 | file size beyond limit. | 请检查文件长度以避免超出限制。[具体限制请参考](https://www.feishu.cn/hc/zh-CN/articles/360049067549)
400 | 1061044 | parent node not exist. | 请确认上传点是否存在。
400 | 1061109 | file name cqc not passed. | 请确保上传的文件和文件名合规。
400 | 1061101 | file quota exceeded. | 租户容量超限，请确保租户有足够容量进行上传。
400 | 1061061 | user quota exceeded. | 个人容量超限，请确保个人有足够容量进行上传。
403 | 1061073 | no scope auth. | 没有申请接口权限。
200 | 1064230 | locked for data migration | 数据迁移中，暂时无法上传。

