企业内部开发 服务端API 审批 审批申请状态变化回调通知
审批申请状态变化回调通知
最后更新:2024/04/03
可联系渠道经理采购或代理智慧硬件接口已支持设备 联系渠道经理
审批申请状态变化回调通知
最后更新:2024/04/03

订阅后,当企业内指定类型的企业微信“审批应用”单据流程发生变化时,会将审批单最新的流程状态回调给开发者。

1.设置接收事件服务器

查看事件回调详细说明

1.1 设置入口

目前,支持将审批状态变化通知支持的应用类型如下:

应用类型权限要求接收事件开关
自建应用配置到「审批- 可调用接口的应用」中审批状态通知事件
代开发应用具有「审批」权限
第三方应用具有「审批」权限

其中,配置可调用接口的自建应用入口如下:
enter image description here

 

1.2 配置说明

1.2.1 参数设置

自建应用进入应用详情页,“设置API接收”,要求填写URL、Token、EncodingAESKey三个参数。

  • URL是企业后台接收企业微信推送请求的访问协议和地址,支持http或https协议(建议使用https)。
  • Token可由企业任意填写,用于生成签名。
  • EncodingAESKey用于消息体的加密,是AES密钥的Base64编码。

 

2.事件格式

当指定类型的审批申请发生状态变化时,企业微信将向回调地址发送相应的通知事件。
状态变化包括但不限于:催办、撤销、同意、驳回、转审、添加备注等情况。

示例:

<xml>
  <ToUserName><![CDATA[ww1cSD21f1e9c0caaa]]></ToUserName>
  <FromUserName><![CDATA[sys]]></FromUserName>
  <CreateTime>1571732272</CreateTime>
  <MsgType><![CDATA[event]]></MsgType>
  <Event><![CDATA[sys_approval_change]]></Event>
  <AgentID>3010040</AgentID>
  <ApprovalInfo>
    <SpNo>201910220003</SpNo>
    <SpName><![CDATA[示例模板]]></SpName>
    <SpStatus>1</SpStatus>
    <TemplateId><![CDATA[3TkaH5KFbrG9heEQWLJjhgpFwmqAFB4dLEnapaB7aaa]]></TemplateId>
    <ApplyTime>1571728713</ApplyTime>
    <Applyer>
      <UserId><![CDATA[WuJunJie]]></UserId>
      <Party><![CDATA[1]]></Party>
    </Applyer>
    <SpRecord>
      <SpStatus>1</SpStatus>
      <ApproverAttr>2</ApproverAttr>
      <Details>
        <Approver>
          <UserId><![CDATA[WangXiaoMing]]></UserId>
        </Approver>
        <Speech><![CDATA[]]></Speech>
        <SpStatus>1</SpStatus>
        <SpTime>0</SpTime>
      </Details>
      <Details>
        <Approver>
          <UserId><![CDATA[XiaoGangHuang]]></UserId>
        </Approver>
        <Speech><![CDATA[]]></Speech>
        <SpStatus>1</SpStatus>
        <SpTime>0</SpTime>
      </Details>
    </SpRecord>
    <SpRecord>
      <SpStatus>1</SpStatus>
      <ApproverAttr>1</ApproverAttr>
      <Details>
        <Approver>
          <UserId><![CDATA[XiaoHongLiu]]></UserId>
        </Approver>
        <Speech><![CDATA[]]></Speech>
        <SpStatus>1</SpStatus>
        <SpTime>0</SpTime>
      </Details>
    </SpRecord>
    <Notifyer>
      <UserId><![CDATA[ChengLiang]]></UserId>
    </Notifyer>
    <ProcessList>
    <NodeList>
        <NodeType>1</NodeType>
        <SpStatus>1</SpStatus>
        <ApvRel>2</ApvRel>
        <SubNodeList>
            <UserInfo>
                <UserId><![CDATA[userid1]]></UserId>
            </UserInfo>
            <Speech><![CDATA[]]></Speech>
            <SpYj>1</SpYj>
            <Sptime>0</Sptime>
        </SubNodeList>
        <SubNodeList>
            <UserInfo>
                <UserId><![CDATA[userid2]]></UserId>
            </UserInfo>
            <Speech><![CDATA[]]></Speech>
            <SpYj>1</SpYj>
            <Sptime>0</Sptime>
        </SubNodeList>
    </NodeList>
    <NodeList>
        <NodeType>2</NodeType>
        <SubNodeList>
            <UserInfo>
                <UserId><![CDATA[userid3]]></UserId>
            </UserInfo>
        </SubNodeList>
    </NodeList>
    </ProcessList>
    <Comments>
      <CommentUserInfo>
        <UserId><![CDATA[LiuZhi]]></UserId>
      </CommentUserInfo>
      <CommentTime>1571732272</CommentTime>
      <CommentContent><![CDATA[这是一个备注]]></CommentContent>
      <CommentId><![CDATA[6750538708562308220]]></CommentId>
    </Comments>
    <StatuChangeEvent>10</StatuChangeEvent>
  </ApprovalInfo>
</xml>

参数说明:

参数说明
Event事件名称:sys_approval_change
SpNo审批编号
SpName审批申请类型名称(审批模板名称)
SpStatus申请单状态:1-审批中;2-已通过;3-已驳回;4-已撤销;6-通过后撤销;7-已删除;10-已支付
TemplateId审批模板id。可在“获取审批申请详情”、“审批状态变化回调通知”中获得,也可在审批模板的模板编辑页面链接中获得。
ApplyTime审批申请提交时间,Unix时间戳
Applyer申请人信息
└ UserId申请人userid
└ Party申请人所在部门pid
SpRecord审批流程信息,可能有多个审批节点。
└ SpStatus审批节点状态:1-审批中;2-已同意;3-已驳回;4-已转审
└ ApproverAttr节点审批方式:1-或签;2-会签
└ Details审批节点详情。当节点为标签或上级时,一个节点可能有多个分支
└ └ Approver分支审批人
└ └ └ UserId分支审批人userid
└ └ Speech审批意见字段
└ └ SpStatus分支审批人审批状态:1-审批中;2-已同意;3-已驳回;4-已转审
└ └ SpTime节点分支审批人审批操作时间,0为尚未操作
└ └ Attach节点分支审批人审批意见附件,赋值为media_id具体使用请参考:文档-获取临时素材
Notifyer抄送信息,可能有多个抄送节点
└ UserId节点抄送人userid
Comments审批申请备注信息,可能有多个备注节点
└ CommentUserInfo备注人信息
└ └ UserId备注人userid
└ CommentTime备注提交时间
└ CommentContent备注文本内容
└ CommentId备注id
└ Attach备注意见附件,值是附件media_id具体使用请参考:文档-获取临时素材
ProcessList审批流程列表
└ NodeList流程节点
└ └ NodeType节点类型 1 审批人 2 抄送人 3办理人
└ └ SpStatus节点状态 1-审批中;2-同意;3-驳回;4-转审;11-退回给指定审批人;12-加签;13-同意并加签;14-办理;15-转交
└ └ ApvRel多人办理方式 1-会签;2-或签 3-依次审批
└ └ SubNodeList子节点列表
└ └ └ UserInfo处理人信息
└ └ └ └ UserId处理人userid
└ └ └ Speech审批/办理意见
└ └ └ SpYj子节点状态 1-审批中;2-同意;3-驳回;4-转审;11-退回给指定审批人;12-加签;13-同意并加签;14-办理;15-转交
└ └ └ Sptime操作时间
└ └ └ MediaIds备注意见附件,值是附件media_id具体使用请参考:文档-获取临时素材
StatuChangeEvent审批申请状态变化类型:1-提单;2-同意;3-驳回;4-转审;5-催办;6-撤销;8-通过后撤销;10-添加备注;11-回退给指定审批人;12-添加审批人;13-加签并同意; 14-已办理; 15-已转交
上一篇
提交审批申请
下一篇
批量获取审批单号