审批通知服务

目录

简介

审批通知服务,主要用于程序调用,附带状态查询、结果通知、企业微信审批等。第一次使用本服务,需要先申请key,然后调用审批API。

注:
1、由于本服务依赖于企业微信消息通知服务,所以涉及到的各环节邮箱均需要在企业微信有对应用户存在,否则返回错误。
2、目前仅提供最近40条的审批记录页面查询,如有其他需求请及时联系。

key申请

  1. 发送审批邮件到项目负责人,请项目负责人审批通过后发送至devopsgroup@credithc.com,基本内容如下:
    接收人: devopsgroup@credithc.com;项目负责人

    邮件标题:审批通知服务key申请--项目名称
    邮件内容:
        申请邮件和企业微信API应用认证KEY
        项目名称:xxxxx
        负责人邮箱:xxxxx
        原因和使用场景:xxxx
  2. 审批成功后,key会通过企业微信发送至申请人。

接口调用

生产地址:
    [公网]http://opapproval.hengchang6.com/
    [内网]http://opapproval.service.hcinner/
测试地址:
    http://10.150.27.76:8818/

1. 请求方式

POST

2. 参数格式

JSON

3. 审批创建接口

3.1 接口地址

http://xxx.xxx.xxx.xxx/approval/create

3.2. 参数明细

基本参数
参数名 必要性 类型 说明
key 必须 string APP Key
subject 必须 string 项目名称,最长200。
applicant_email 必须 string 申请人邮箱,最长100,仅支持单人。
call_back_url 非必须 string 回调地址,最长500。
sync_url 非必须 string 数据同步地址,最长500。
info 必须 string 具体的审批信息。不支持html,可以使用回车换行和空格来控制样式。
task_id 必须 string 用户方唯一id,用于后期回调匹配审批工单。
approval_users 必须 string/list 审批人,支持英文分号切割或列表。默认为或签,调整参数请查阅高级参数

注:

  1. 会签表示该审批必须经过所有审批人(按照列表顺序)一致通过,才算完成审批。
  2. 或签表示提交的审批人中任何一人同意即代表审批完成。
  3. sync_url非必填,如果填写,本系统内审批中间环节会通过该接口发送数据,数据格式同查询数据返回
  4. 【1.3版本更新】applicant_email申请人不做邮箱和企业微信校验,不保证消息必须送达申请人。
高级参数
参数名 必要性 类型 说明
approval_cc_users 非必须 string/list 审批信息抄送人。
is_and_approval 非必须 bool 是否会签,默认False(或签)。
sync_email 非必须 bool 是否同步开启邮件通知,默认False,所有通知仅通过企业微信发送。
need_call_cuser 非必须 bool 是否将审批过程通知申请人,默认True。
approval_cc_type 非必须 0/1/2 抄送环节,默认1(审批后通知)。0、审批前,1、审批后,2、所有环节。

注: 1.邮件通知内容包含审批信息以及审批URL,需要点击进入审批页才能进行审批。

3.3 返回数据

{
   'code': 200,
   'message': 'success',
   'data': [
         {'task_id': 2}
      ]
}

注:

  1. code:int, 状态码,200为成功,其他为失败;
  2. message: str, 状态码对应的信息。
  3. data:list, 成功时包含返回对应审批工单的task_id,失败时返回task_id和error信息。

3.4. 回调参数

{
   'task_id': 2,
   'status': 1,
   'message': '已通过',
   'data': [
      {
      'approval_user': email,
      'name': name,
      'result': result,
      'annotation': annotation,
      'ctime': ctime
      },
      {
         'approval_user': email,
         'name': name,
         'result': result,
         'annotation': annotation,
         'ctime': ctime
      },
   ]
}

注:

  1. task_id:str, 对应审批工单的id;
  2. status: int, 状态码:0/1/2/3。
  3. message: str,状态码对应的信息:0、审批中, 1、已通过, 2、已驳回, 3、已撤销。
  4. data:list,各环节的具体审批情况。

4.审批撤销接口

4.1. 接口地址

http://xxx.xxx.xxx.xxx/approval/cancel_approval

4.2. 参数明细

参数名 必要性 类型 说明
key 必须 string APP Key
applicant_email 必须 string 申请人邮箱,最长100,仅支持单人。
task_id 必须 string 用户方唯一id,用于后期回调匹配审批工单。
annotation 必须 string 审批撤销理由。

4.3. 返回数据

{
   'code': 200,
   'message': 'success'
}

注:

  1. code:int, 状态码,200为成功,其他为失败;
  2. message: str, 状态码对应的信息。

    5.审批同步接口

    5.1. 接口地址

http://xxx.xxx.xxx.xxx/approval/sync_status

5.2. 参数明细

参数名 必要性 类型 说明
key 必须 string APP Key
approval_user 必须 string 操作人邮箱,最长100,仅支持单人。
result 必须 string 操作内容,[撤回, 批准, 驳回]三选一。
task_id 必须 string 用户方唯一id,用于后期回调匹配审批工单。
annotation 必须 string 操作理由。
ctime 可选 string 操作时间。

注:

  1. ctime会作为前缀加入操作理由。

5.3. 返回数据

{
   'code': 200,
   'message': 'success'
}

注:

  1. code:int, 状态码,200为成功,其他为失败;
  2. message: str, 状态码对应的信息。

6.审批信息查询接口

6.1. 接口地址

http://xxx.xxx.xxx.xxx/approval/get

6.2. 参数明细

参数名 必要性 类型 说明
key 必须 string APP Key
task_id 必须 string 用户方唯一id,用于后期回调匹配审批工单。

注:

  1. 目前只支持单条记录查询,如有其他需求请及时联系。

6.3. 返回数据

{
   'code': 200,
   'message': 'success',
   'data':[{'approval_user': 'xxx@credithc.com', 'name': 'xxx', 'result': '批准', 'annotation': '同意', 'ctime': '2020-04-20 18:59:18'},{'approval_user': 'xxx2', 'name': 'xxx2', 'result': '批准', 'annotation': '同意', 'ctime': '2020-04-20 18:59:18'}......]
}

注:

  1. code:int, 状态码,200为成功,其他为失败;
  2. message: str, 状态码对应的信息。

使用说明

入口

  1. 接口调用后,在企业微信通知中心(和邮箱)发现以下信息:
  2. 点击【需审批】消息进入具体审批页:
  3. 点击同意和驳回进行审批操作,相关人员(申请人、审批人、抄送人)审批状态区域可查看审批进度;
  4. 点击最下方【审批记录列表】可查看待审批列表、申请记录、通知(抄送给您的审批)、已审批记录列表以及批量审批操作:

results matching ""

    No results matching ""