dingtalk.oapi.processinstance.create (发起审批实例)

企业或isv调用该api,来发起一个审批实例

公共参数

请求参数

名称 类型 是否必须 示例值 更多限制 描述
agent_id Number 可选 41605932 企业微应用标识
process_code String 必须 PROC-EF6YJL35P2-SCKICSB7P750S0YISYKV3-17IBLGZI-1 审批流的唯一码
originator_user_id String 必须 manager432 审批实例发起人的userid
dept_id Number 必须 100 发起人所在的部门
approvers String [] 可选 zhangsan, lisi
  • 最大列表长度:20
  • 审批人userid列表
    cc_list String [] 可选 zhangsan, lisi
  • 最大列表长度:20
  • 抄送人userid列表
    cc_position String 可选 START 抄送时间,分为(START,FINISH,START_FINISH)
    form_component_values FormComponentValueVo [] 必须
  • 最大列表长度:150
  • 审批流表单参数
    • └ name
    • String
    • 必须
    • 请假类型
    • 表单每一栏的名称
    • └ value
    • String
    • 必须
    • 事假
    • 表单每一栏的值
    • └ ext_value
    • String
    • 可选
    • 总天数:1
    • 扩展值
    approvers_v2 ProcessInstanceApproverVo [] 可选
  • 最大列表长度:20
  • 审批人列表,支持会签/或签,优先级高于approvers变量
    • └ task_action_type
    • String
    • 可选
    • AND
    • 审批类型,会签:AND;或签:OR;单人:NONE
    • └ user_ids
    • String []
    • 可选
    • zhangsan, lisi
    • 审批人userid列表,会签/或签列表长度必须大于1,非会签/或签列表长度只能为1

    响应参数

    名称 类型 示例值 描述
    errcode Number 0 errcode
    errmsg String ok errmsg
    process_instance_id String 12345 审批实例id

    请求示例

    • JAVA
    • .NET
    • PHP
    • CURL
    • Python
    • C/C++
    • NodeJS
    DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/processinstance/create");
    OapiProcessinstanceCreateRequest req = new OapiProcessinstanceCreateRequest();
    req.setAgentId(41605932L);
    req.setProcessCode("PROC-EF6YJL35P2-SCKICSB7P750S0YISYKV3-17IBLGZI-1");
    req.setOriginatorUserId("manager432");
    req.setDeptId(100L);
    req.setApprovers("zhangsan, lisi");
    req.setCcList("zhangsan, lisi");
    req.setCcPosition("START");
    List<FormComponentValueVo> list2 = new ArrayList<FormComponentValueVo>();
    FormComponentValueVo obj3 = new FormComponentValueVo();
    list2.add(obj3);
    obj3.setName("请假类型");
    obj3.setValue("事假");
    obj3.setExtValue("总天数:1");
    req.setFormComponentValues(list2);
    List<ProcessInstanceApproverVo> list5 = new ArrayList<ProcessInstanceApproverVo>();
    ProcessInstanceApproverVo obj6 = new ProcessInstanceApproverVo();
    list5.add(obj6);
    obj6.setTaskActionType("AND");
    obj6.setUserIds("zhangsan, lisi");
    req.setApproversV2(list5);
    OapiProcessinstanceCreateResponse rsp = client.execute(req, access_token);
    System.out.println(rsp.getBody());

    响应示例

    • JSON示例
    {
        "errcode":0,
        "errmsg":"ok",
        "process_instance_id":"12345"
    }

    异常示例

    • JSON示例
    {
    	"errcode":88,
    	"errmsg":"ding talk error"
    }

    错误码解释

    错误码 错误描述 解决方案

    API工具

    如何获得此API

    FAQ

    返回
    顶部