钉钉如何 /workflow/processInstances创建审批实例?
可以按照以下步骤进行操作:
获取access_token:在使用钉钉API之前,需要先获取access_token。access_token是钉钉API的访问令牌,需要使用企业的CorpID和Secret来获取。具体的获取方式可以参考钉钉开放平台官方文档中的说明。
构造请求参数:根据钉钉API文档中的说明,构造相应的请求参数。创建审批实例需要的请求参数包括审批模板ID、发起人ID、审批人列表、抄送人列表、表单数据等。
发送请求:使用HTTP POST请求,将请求参数发送到钉钉API的接口地址。在发送请求时,需要将access_token和请求参数一并发送。
处理响应:钉钉API会返回相应的响应结果,包括请求是否成功、错误码、错误信息、实例ID等。根据响应结果进行相应的处理和判断。
示例代码如下:
python
Copy
import requests
import json
corpid = "your_corpid"
corpsecret = "your_corpsecret"
url = f"https://oapi.dingtalk.com/gettoken?corpid={corpid}&corpsecret={corpsecret}"
response = requests.get(url)
access_token = response.json()["access_token"]
template_id = "your_template_id"
userid = "your_userid"
approver_ids = ["approver_userid"]
cc_ids = ["cc_userid"]
form_data = {
"field_name1": "value1",
"field_name2": "value2"
}
data = {
"process_code": template_id,
"originator_user_id": userid,
"dept_id": "",
"approvers": approver_ids,
"cc_list": cc_ids,
"form_component_values": form_data
}
url = f"https://oapi.dingtalk.com/topapi/processinstance/create?access_token={access_token}"
headers = {'Content-Type': 'application/json'}
response = requests.post(url, headers=headers, data=json.dumps(data))
if response.status_code == 200 and response.json().get("errcode") == 0:
instance_id = response.json()["process_instance_id"]
print(f"审批实例创建成功,实例ID为{instance_id}")
else:
print("审批实例创建失败")
需要将上面的代码中的your_corpid、your_corpsecret、your_template_id、your_userid、approver_userid、cc_userid、field_name1、field_name2、value1、value2分别替换为您自己的企业ID、应用Secret、审批模板ID、发起人ID、审批人ID、抄送人ID、表单字段名和字段值。
在钉钉中,你可以通过/workflow/processInstances
接口来创建审批实例。以下是一般的请求示例:
POST /topapi/processinstance/create HTTP/1.1
Host:oapi.dingtalk.com
Content-Type: application/json;charset=utf-8
{
"process_code": "PROCESS_CODE",
"originator_user_id": "USER_ID",
"dept_id": "DEPT_ID",
"approvers": "APPROVER_USER_ID1, APPROVER_USER_ID2",
"form_component_values": [
{
"name": "field_name1",
"value": "field_value1"
},
{
"name": "field_name2",
"value": "field_value2"
}
],
"cc_list": "CC_USER_ID1, CC_USER_ID2"
}
其中,需要注意的参数如下:
process_code
:流程模板的唯一标识符,用于指定要使用的审批流程模板。originator_user_id
:发起人用户ID,即发起该审批流程的用户ID。dept_id
:发起人所属部门ID。approvers
:审批人用户ID列表,多个审批人使用逗号分隔。form_component_values
:表单字段值,以数组形式填入每个字段的name
和value
。另外,还有可选的参数:
cc_list
:抄送人用户ID列表,多个抄送人使用逗号分隔。版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。