# 创建文件快捷方式

创建指定文件的快捷方式到云空间的其它文件夹中。

## 使用限制

该接口不支持并发调用，且调用频率上限为 5 QPS，10000 次/天。否则会返回 1061045 错误码，可通过稍后重试解决。

## 请求

基本 | &nbsp;
---|---
HTTP URL | https://open.feishu.cn/open-apis/drive/v1/files/create_shortcut
HTTP Method | POST
接口频率限制 | [5 次/秒](https://open.feishu.cn/document/ukTMukTMukTM/uUzN04SN3QjL1cDN)
支持的应用类型 | Custom App、Store App
权限要求<br>**调用该 API 所需的权限。开启其中任意一项权限即可调用**<br>开启任一权限即可 | 查看、评论、编辑和管理云空间中所有文件(drive:drive)<br>创建云文档的快捷方式(space:document:shortcut)
字段权限要求 | **注意事项**：该接口返回体中存在下列敏感字段，仅当开启对应的权限后才会返回；如果无需获取这些字段，则不建议申请<br>获取用户 user ID(contact:user.employee_id:readonly)

### 请求头

名称 | 类型 | 必填 | 描述
---|---|---|---
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"

### 查询参数

名称 | 类型 | 必填 | 描述
---|---|---|---
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)

### 请求体

名称 | 类型 | 必填 | 描述
---|---|---|---
parent_token | string | 是 | 目标父文件夹的 token，获取方式见[文件夹概述](https://open.feishu.cn/document/ukTMukTMukTM/ugTNzUjL4UzM14CO1MTN/folder-overview)<br>**示例值**："fldbc5qgwyQnO0uedNllWuabcef"
refer_entity | refer_entity | 是 | 源文件的信息
refer_token | string | 是 | 源文件的 token。获取方式见[文件概述](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/file/file-overview)<br>**示例值**："doxbcGvhSVN0R6octqPwAEabcef"
refer_type | string | 是 | 源文件的类型<br>**示例值**："docx"<br>**可选值有**：<br>- file：文件<br>- docx：新版文档<br>- bitable：多维表格<br>- doc：旧版文档<br>- sheet：电子表格<br>- mindnote：思维笔记<br>- slides：幻灯片类型

### 请求体示例
```json
{
    "parent_token": "fldbc5qgwyQnO0uedNllWuabcef",
    "refer_entity": {
        "refer_token": "doxbcGvhSVN0R6octqPwAEabcef",
        "refer_type": "docx"
    }
}
```

## 响应

### 响应体

名称 | 类型 | 描述
---|---|---
code | int | 错误码，非 0 表示失败
msg | string | 错误描述
data | \- | \-
succ_shortcut_node | file | 快捷方式
token | string | 文件的 token
name | string | 文件名
type | string | 文件类型，可选值参照请求体的`refer_type`
parent_token | string | 父文件夹的 token
url | string | 访问链接
shortcut_info | shortcut_info | 快捷方式的源文件信息
target_type | string | 快捷方式对应的源文件类型，可选值参照请求体的 `refer_type`
target_token | string | 快捷方式指向的源文件 token
created_time | string | 文件创建时间
modified_time | string | 文件最近修改时间
owner_id | string | 文件所有者

### 响应体示例
```json
{
    "code": 0,
    "msg": "success",
    "data": {
        "succ_shortcut_node": {
            "token": "doxbcGvhSVN0R6octqPwAEabcef",
            "name": "快捷方式名称",
            "type": "docx",
            "parent_token": "fldbc5qgwyQnO0uedNllWuabcef",
            "url": "https://example.feishu.cn/docx/doxbcGvhSVN0R6octqPwAEabcef",
            "shortcut_info": {
                "target_type": "docx",
                "target_token": "doxbcGvhSVN0R6octqPwAEabcef"
            },
            "created_time": "1686125119",
            "modified_time": "1686125119",
            "owner_id": "ou_b13d41c02edc52ce66aaae67bf1abcef"
        }
    }
}
```

### 错误码

HTTP状态码 | 错误码 | 描述 | 排查建议
---|---|---|---
500 | 1061001 | internal error. | 服务内部错误，包括超时，错误码没处理。
400 | 1061002 | params error. | 请检查请求参数是否正确。
404 | 1061003 | not found. | 请确认对应资源是否存在。
403 | 1061004 | forbidden. | 请确认当前身份是否有对应上传节点的的权限，如用户是否有docx的阅读和文件夹的编辑权限。
401 | 1061005 | auth failed. | 请使用正确身份访问该接口。
404 | 1061007 | file has been delete. | 请确认对应节点未被删除。
400 | 1062507 | parent node out of sibling num. | 云空间目录下挂载数量超过限制（单层1500限制 ）。
400 | 1061045 | resource contention occurred, please retry. | 内部可重试错误，请稍后重试。
403 | 1064510 | cross tenant and unit not support. | 不支持跨租户跨地域的请求。
403 | 1064511 | cross brand not support. | 不支持跨品牌的请求。

