Skip to content

创建审批实例

Error: 为了更好地提升接口文档的的易理解性,我们对文档进行了升级,请尽快迁移至新版本>>

创建一个审批实例,调用方需对审批定义的表单有详细了解,将按照定义的表单结构,将表单 Value 通过接口传入。

请求

项目
HTTP URLhttps://www.feishu.cn/approval/openapi/v2/instance/create
HTTP MethodPOST
支持的应用类型custom,isv
权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用approval:approval:readonly 访问审批应用

请求头

名称类型必填描述
Authorizationstringtenant_access_token 值格式:"Bearer access_token" 示例值:"Bearer t-7f1bcd13fc57d46bac21793a18e560" 了解更多:如何选择与获取 access token
Content-Typestring固定值:"application/json; charset=utf-8"

请求体

参数类型必须说明
approval_codeString审批定义 code
user_idString发起审批用户
open_idString发起审批用户 open id, 如果传了 user_id 则优先使用 user_id
department_idString发起审批用户部门id,如果用户只属于一个部门,可以不填。如果属于多个部门,默认会选择部门列表第一个部门
formStringjson 数组,控件值
∟idString控件 ID,也可以使用自定义 ID custom_id 的值
∟typeString控件类型
∟valueString控件值,不同类型的值格式不一样
node_approver_user_id_listmap如果有发起人自选节点,则需要填写对应节点的审批人
key: node id 或 custom node id , 通过 查看审批定义 获取
value: 审批人列表
node_approver_open_id_listmap审批人发起人自选 open id,与上述node_approver_user_id_list字段取并集
node_cc_user_id_listmap如果有发起人自选节点,则可填写对应节点的抄送人
key: node id 或 custom node id , 通过 查看审批定义 获取
value: 审批人列表
单个节点最多选择20位抄送人
node_cc_open_id_listmap抄送人发起人自选 open id
单个节点最多选择20位抄送人
uuidString审批实例 uuid,用于幂等操作, 每个租户下面的唯一key,同一个 uuid 只能用于创建一个审批实例,如果冲突,返回错误码 60012 ,格式建议为 XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX,不区分大小写

请求体示例

json
{
    "approval_code":"7C468A54-8745-2245-9675-08B7C63E7A85",
    "user_id":"f7cb567e",
    "open_id":"ou_123456", # 如果user_id传入不正确,会按照open_id兜底执行
    "uuid": "",
    "department_id":"",
    "form":"[{\"id\":\"user_name\", \"type\": \"input\", \"value\":\"test\"}]",
    "node_approver_user_id_list": {
        "46e6d96cfa756980907209209ec03b64": ["f7cb567e"],
        "manager_node_id": ["f7cb567e"]
    },
    "node_approver_open_id_list": {
        "46e6d96cfa756980907209209ec03b64": ["ou_12345"],
        "manager_node_id": ["ou_12345"]
    }
}

控件值说明

单行文本

json
{                                     
    "id": "widget1",
    "type": "input",
    "value": "data"
}

多行文本

json
{                                     
    "id": "widget1",
    "type": "textarea",
    "value": "data"
}

日期

value 满足 RFC3339 格式,
json
{                                     
    "id": "widget1",
    "type": "date",
    "value": "2019-10-01T08:12:01+08:00"
}

单选

value 为 定义中 option 中的 value 字段,查看审批定义 获取

json
{                                     
    "id": "widget1",
    "type": "radio",
    "value": "optionA"
}
json
{                                     
    "id": "widget1",
    "type": "radioV2",
    "value": "k2b8mkx0-h71x5gljn3i-1"
}

数字

json
{
    "id": "widget1",
    "type": "number",
    "value": 1234.5678
}

金额

json
{
    "id": "widget1",
    "type": "amount",
    "value": 1234.5678
}

计算公式

由定义创建时的公式计算出的值,若不匹配则返回错误

json
{
    "id": "widget1",
    "type": "formula",
    "value": 1234.5678
}

联系人

value 为 user id 数组「*此接口不支持创建表单联系人」

json
{
    "id":"widget1",
    "type":"contact",
    "value": ["f8ca557e"],
    "open_ids": ["ou_12345"]
}

关联审批

value 为关联审批的 instance code 数组

json
{
    "id":"widget1",
    "type":"connect",
    "value": ["19EAC829-F1CB-527F-BE2A-1330422E60C0"]
}

附件

value 为 上传文件 返回的 code

json
{
    "id":"widget1",
    "type":"attachment",
    "value": ["D93653C3-2609-4EE0-8041-61DC1D84F0B5"]
}
json
{
    "id":"widget1",
    "type":"attachmentV2",
    "value": ["D93653C3-2609-4EE0-8041-61DC1D84F0B5"]
}

图片

value 为 上传文件 返回的 code

json
{
    "id":"widget1",
    "type":"image",
    "value": ["D93653C3-2609-4EE0-8041-61DC1D84F0B5"]
}
json
{
    "id":"widget1",
    "type":"imageV2",
    "value": ["D93653C3-2609-4EE0-8041-61DC1D84F0B5"]
}

多选

value 为 定义中 option 中的 value 字段,查看审批定义 获取

json
{
    "id":"widget1",
    "type":"checkbox",
    "value": ["optionA"]
}
json
{
    "id":"widget1",
    "type":"checkboxV2",
    "value": ["k2b8mkx0-h71x5gljn3i-1"]
}

日期区间

start 和 end 满足 RFC3339 格式

json
{
    "id": "widget1",
    "type": "dateInterval",
    "value": {
         "start":"2019-10-01T08:12:01+08:00",
         "end":"2019-10-02T08:12:01+08:00",
         "interval": 2.0
     }
}

明细

value 是二维数组

json
{
    "id": "widget1",
    "type": "fieldList",
    "value": [
         [   
            {
                "id": "widget1",
                "type": "checkbox",
                "value": ["jxpsebqp-0"]
            }
         ]
     ]
}

部门

json
{
    "id":"widget1",
    "type":"department",
    "value":[
        {
            "open_id":"od-xxx"
        }
    ]
}

电话

json
{
    "id":"widget1",
    "type":"telephone",
    "value": {
        "countryCode":"+86",
        "nationalNumber":"13122222222"
    }
}

换班控件组

shiftTime 和 returnTIme 满足 RFC3339 格式

json
{
    "id": "widget1",
    "type": "shiftGroup",
    "value": {
         "shiftTime": "2019-10-01T08:12:01+08:00",
         "returnTime": "2019-10-02T08:12:01+08:00",
         "reason": "ask for leave"
     }
}

不支持开放平台创建的类型

控件类型
地址address
出差控件组tripGroup
请假控件组leaveGroup
加班控件组workGroup
补卡控件组remedyGroup

响应

响应体

参数类型必须说明
codeint错误码,非0表示失败
msgString返回码的描述
datamap返回业务信息
 ∟instance_codeString审批实例 Code

响应体示例

json
{
    "code": 0,
    "msg": "success",
    "data": {
        "instance_code":"81D31358-93AF-92D6-7425-01A5D67C4E71"
    }
}

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