dingtalk.oapi.process.save (保存审批模板)

保存审批模板

公共参数

请求参数

名称 类型 是否必须 示例值 更多限制 描述
saveProcessRequest SaveProcessRequest 可选 入参
  • └ agentid
  • Number
  • 可选
  • 123
  • 企业应用id
  • └ process_code
  • String
  • 可选
  • a
  • 审批模板唯一码
  • └ disable_form_edit
  • Boolean
  • 可选
  • true
  • 废弃,请使用process_config.disable_form_edit字段
  • └ disable_stop_process_button
  • Boolean
  • 可选
  • true
  • true
  • └ name
  • String
  • 可选
  • a
  • 审批模板名称
  • └ description
  • String
  • 可选
  • a
  • 审批模板描述
  • form_component_list
  • FormComponentVo []
  • 必须
  • 表单列表
  • props
  • FormComponentPropVo
  • 必须
  • 表单属性
  • └ id
  • String
  • 必须
  • aaa
  • 表单id
  • └ label
  • String
  • 必须
  • aaa
  • 表单名称
  • └ required
  • Boolean
  • 可选
  • true
  • 是否必填
  • └ not_print
  • String
  • 可选
  • 0
  • 是否参与打印(1表示不打印, 0表示打印)
  • └ placeholder
  • String
  • 可选
  • aa
  • 占位提示(仅输入类组件)
  • └ not_upper
  • String
  • 可选
  • 1
  • 是否需要大写 默认是需要; 1:不需要大写, 空或者0:需要大写
  • └ unit
  • String
  • 可选
  • 数字组件/日期区间组件单位属性
  • └ formula
  • String
  • 可选
  • 1
  • 暂不需要
  • └ options
  • String []
  • 可选
  • ["a","b"]
  • 单选框或者多选框的选项
  • └ format
  • String
  • 可选
  • yyyy-MM-dd HH:mm
  • 时间格式
  • └ duration
  • Boolean
  • 可选
  • true
  • 是否自动计算时长
  • └ choice
  • Number
  • 可选
  • 1
  • 内部联系人choice,1表示多选,0表示单选
  • └ link
  • String
  • 可选
  • https://www.dingtalk.com
  • 说明文案的链接地址
  • stat_field
  • FormComponentStatVo []
  • 可选
  • 需要计算总和的明细组件
  • └ id
  • String
  • 可选
  • aaa
  • 组件id
  • └ label
  • String
  • 可选
  • aaa
  • 组件名称
  • └ upper
  • Boolean
  • 可选
  • true
  • 统计总和是否大写
  • └ unit
  • String
  • 可选
  • 单元
  • └ action_name
  • String
  • 可选
  • 增加明细
  • 增加明细动作名称
  • └ content
  • String
  • 可选
  • 超链接
  • 说明文字
  • └ biz_alias
  • String
  • 可选
  • leave
  • 套件别名
  • └ biz_type
  • String
  • 可选
  • attendance.leave
  • 套件类型
  • └ async_condition
  • Boolean
  • 可选
  • true
  • 套件是否开启异步获取分条件规则
  • children
  • FormComponentVo2 []
  • 可选
  • 子表单列表
  • props
  • FormComponentPropVo2
  • 可选
  • 子表单属性
  • └ id
  • String
  • 可选
  • aaa
  • 表单id
  • └ label
  • String
  • 可选
  • aaa
  • 表单名称
  • └ required
  • Boolean
  • 可选
  • true
  • 是否必填
  • └ not_print
  • String
  • 可选
  • 0
  • 是否参与打印(1表示不打印, 0表示打印)
  • └ placeholder
  • String
  • 可选
  • aa
  • 占位提示(仅输入类组件)
  • └ not_upper
  • String
  • 可选
  • 1
  • 是否需要大写 默认是需要; 1:不需要大写, 空或者0:需要大写
  • └ unit
  • String
  • 可选
  • 数字组件/日期区间组件单位属性
  • └ formula
  • String
  • 可选
  • 1
  • 暂不需要
  • └ options
  • String []
  • 可选
  • ["a","b"]
  • 单选框或者多选框的选项
  • └ format
  • String
  • 可选
  • yyyy-MM-dd HH:mm
  • 时间格式
  • └ duration
  • Boolean
  • 可选
  • true
  • 是否自动计算时长
  • └ choice
  • Number
  • 可选
  • 1
  • 内部联系人choice,1表示多选,0表示单选
  • └ link
  • String
  • 可选
  • https://www.dingtalk.com
  • 说明文案的链接地址
  • └ content
  • String
  • 可选
  • 超链接
  • 说明文字
  • └ biz_alias
  • String
  • 可选
  • type
  • 控件别名
  • └ biz_type
  • String
  • 可选
  • type
  • 控件类型
  • └ table_view_mode
  • String
  • 可选
  • list
  • 明细展示方式:表格 table、列表list
  • └ common_biz_type
  • String
  • 可选
  • selectField
  • 自定义控件渲染类型
  • └ async_condition
  • Boolean
  • 可选
  • true
  • 套件是否开启异步获取分条件规则
  • children
  • FormComponentVo3 []
  • 可选
  • 子控件
  • props
  • FormComponentPropVo3
  • 可选
  • 控件属性
  • └ id
  • String
  • 可选
  • aa
  • 控件id
  • └ label
  • String
  • 可选
  • aaa
  • 控件名称
  • └ required
  • Boolean
  • 可选
  • true
  • 是否必填
  • └ not_print
  • String
  • 可选
  • 0
  • 是否参与打印(1表示不打印, 0表示打印)
  • └ placeholder
  • String
  • 可选
  • aa
  • 占位提示(仅输入类组件)
  • └ not_upper
  • String
  • 可选
  • 1
  • 是否需要大写 默认是需要; 1:不需要大写, 空或者0:需要大写
  • └ unit
  • String
  • 可选
  • 数字组件/日期区间组件单位属性
  • └ formula
  • String
  • 可选
  • abc
  • 计算公式
  • └ options
  • String []
  • 可选
  • ["a","b']
  • 选项
  • └ format
  • String
  • 可选
  • yyyy-MM-dd HH:mm
  • 时间格式
  • └ duration
  • Boolean
  • 可选
  • true
  • 是否自动计算时长
  • └ choice
  • Number
  • 可选
  • 1
  • 内部联系人choice,1表示多选,0表示单选
  • └ biz_alias
  • String
  • 可选
  • a
  • 控件别名
  • └ async_condition
  • Boolean
  • 可选
  • true
  • 套件是否开启异步获取分条件规则
  • └ component_name
  • String
  • 可选
  • TextField
  • 控件类型
  • └ component_name
  • String
  • 可选
  • TextField
  • 控件类型
  • └ component_name
  • String
  • 可选
  • TextField
  • 控件类型
  • └ fake_mode
  • Boolean
  • 可选
  • true
  • 默认值:false
  • true表示不带流程的模板
  • └ template_edit_url
  • String
  • 可选
  • https:///www.dingtalk.com
  • 废弃,请使用process_config.template_edit_url字段
  • └ hidden
  • Boolean
  • 可选
  • false
  • 默认值:false
  • 废弃,请使用process_config.hidden字段
  • process_config
  • ProcessConfig
  • 可选
  • 模板配置属性
  • └ disable_form_edit
  • Boolean
  • 可选
  • false
  • 默认值:false
  • 是否允许表单在审批管理后台可编辑。true表示不可以
  • └ disable_stop_process_button
  • Boolean
  • 可选
  • false
  • 默认值:false
  • 是否在审批后台禁用停用操作
  • └ hidden
  • Boolean
  • 可选
  • false
  • 默认值:false
  • 设置模板是否隐藏,true表示隐藏
  • └ template_edit_url
  • String
  • 可选
  • https:///www.dingtalk.com
  • 审批模板编辑跳转页。当fake_mode为true时,此参数失效。
  • └ disable_delete_process
  • Boolean
  • 可选
  • false
  • 默认值:false
  • 是否在审批后台禁用删除操作
  • └ disable_resubmit
  • Boolean
  • 可选
  • false
  • 默认值:false
  • 是否在审批详情页禁用再次提交操作
  • └ disable_homepage
  • Boolean
  • 可选
  • false
  • 默认值:false
  • 是否在审批首页/工作台屏蔽模板
  • └ fake_template_edit_url
  • String
  • 可选
  • https:///www.dingtalk.com
  • 假流程模板编辑url
  • └ create_instance_mobile_url
  • String
  • 可选
  • https:///www.dingtalk.com
  • 发起审批移动端链接
  • └ create_instance_pc_url
  • String
  • 可选
  • https:///www.dingtalk.com
  • 发起审批pc链接
  • └ dir_id
  • String
  • 可选
  • abcd
  • 默认值:other
  • 分组id
  • └ origin_dir_id
  • String
  • 可选
  • bcde
  • 原分组id
  • └ icon
  • String
  • 可选
  • common
  • 默认值:common
  • icon

响应参数

名称 类型 示例值 描述
errmsg String 成功 成功
errcode Number 0 0
result ProcessTopVo 结果
  • └ process_code
  • String
  • PROC-CODE
  • 审批模板唯一码

请求示例

  • JAVA
  • .NET
  • PHP
  • CURL
  • Python
  • C/C++
  • NodeJS
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/process/save");
OapiProcessSaveRequest req = new OapiProcessSaveRequest();
SaveProcessRequest obj1 = new SaveProcessRequest();
obj1.setAgentid(123L);
obj1.setProcessCode("a");
obj1.setDisableFormEdit(true);
obj1.setDisableStopProcessButton(true);
obj1.setName("a");
obj1.setDescription("a");
List<FormComponentVo> list3 = new ArrayList<FormComponentVo>();
FormComponentVo obj4 = new FormComponentVo();
list3.add(obj4);
FormComponentPropVo obj6 = new FormComponentPropVo();
obj6.setId("aaa");
obj6.setLabel("aaa");
obj6.setRequired(true);
obj6.setNotPrint("0");
obj6.setPlaceholder("aa");
obj6.setNotUpper("1");
obj6.setUnit("元");
obj6.setFormula("1");
obj6.setOptions(""a","b"");
obj6.setFormat("yyyy-MM-dd HH:mm");
obj6.setDuration(true);
obj6.setChoice(1L);
obj6.setLink("https://www.dingtalk.com");
List<FormComponentStatVo> list8 = new ArrayList<FormComponentStatVo>();
FormComponentStatVo obj9 = new FormComponentStatVo();
list8.add(obj9);
obj9.setId("aaa");
obj9.setLabel("aaa");
obj9.setUpper(true);
obj9.setUnit("元");
obj6.setStatField(list8);
obj6.setActionName("增加明细");
obj6.setContent("超链接");
obj6.setBizAlias("leave");
obj6.setBizType("attendance.leave");
obj6.setAsyncCondition(true);
list5.setProps(obj6);
List<FormComponentVo2> list12 = new ArrayList<FormComponentVo2>();
FormComponentVo2 obj13 = new FormComponentVo2();
list12.add(obj13);
FormComponentPropVo2 obj15 = new FormComponentPropVo2();
obj15.setId("aaa");
obj15.setLabel("aaa");
obj15.setRequired(true);
obj15.setNotPrint("0");
obj15.setPlaceholder("aa");
obj15.setNotUpper("1");
obj15.setUnit("元");
obj15.setFormula("1");
obj15.setOptions(""a","b"");
obj15.setFormat("yyyy-MM-dd HH:mm");
obj15.setDuration(true);
obj15.setChoice(1L);
obj15.setLink("https://www.dingtalk.com");
obj15.setContent("超链接");
obj15.setBizAlias("type");
obj15.setBizType("type");
obj15.setTableViewMode("list");
obj15.setCommonBizType("selectField");
obj15.setAsyncCondition(true);
list14.setProps(obj15);
List<FormComponentVo3> list18 = new ArrayList<FormComponentVo3>();
FormComponentVo3 obj19 = new FormComponentVo3();
list18.add(obj19);
FormComponentPropVo3 obj21 = new FormComponentPropVo3();
obj21.setId("aa");
obj21.setLabel("aaa");
obj21.setRequired(true);
obj21.setNotPrint("0");
obj21.setPlaceholder("aa");
obj21.setNotUpper("1");
obj21.setUnit("元");
obj21.setFormula("abc");
obj21.setOptions(""a","b'");
obj21.setFormat("yyyy-MM-dd HH:mm");
obj21.setDuration(true);
obj21.setChoice(1L);
obj21.setBizAlias("a");
obj21.setAsyncCondition(true);
list20.setProps(obj21);
obj19.setComponentName("TextField");
list16.setChildren(list18);
obj13.setComponentName("TextField");
list10.setChildren(list12);
obj4.setComponentName("TextField");
obj1.setFormComponentList(list3);
obj1.setFakeMode(true);
obj1.setTemplateEditUrl("https:///www.dingtalk.com");
obj1.setHidden(false);
ProcessConfig obj22 = new ProcessConfig();
obj22.setDisableFormEdit(false);
obj22.setDisableStopProcessButton(false);
obj22.setHidden(false);
obj22.setTemplateEditUrl("https:///www.dingtalk.com");
obj22.setDisableDeleteProcess(false);
obj22.setDisableResubmit(false);
obj22.setDisableHomepage(false);
obj22.setFakeTemplateEditUrl("https:///www.dingtalk.com");
obj1.setProcessConfig(obj22);
obj1.setCreateInstanceMobileUrl("https:///www.dingtalk.com");
obj1.setCreateInstancePcUrl("https:///www.dingtalk.com");
obj1.setDirId("abcd");
obj1.setOriginDirId("bcde");
obj1.setIcon("common");
req.setSaveProcessRequest(obj1);
OapiProcessSaveResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());

响应示例

  • JSON示例
{
    "errmsg":"成功",
    "errcode":0,
    "result":{
        "process_code":"PROC-CODE"
    }
}

异常示例

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

错误码解释

错误码 错误描述 解决方案

API工具

如何获得此API

FAQ

返回
顶部