合同相关回调
一. 合同状态变动通知
1. 回调触发时机
在合同的发起,个人签署,企业签署等各个状态变化时
2. 回调消息类型
FlowStatusChange
3. 其他说明
会出现回调的合同状态
| 合同状态 | 对应FlowStatus | 备注 | 
|---|---|---|
| 合同创建 | INIT | - | 
| 合同签署中 | PART | - | 
| 合同签署完成 | ALL | 合同终态 | 
| 合同拒签 | REJECT | 合同终态,某一个签署人拒签此合同 | 
| 合同撤回 | CANCEL | 合同终态,发起方取消此合同 | 
| 合同即将过期 | WILLEXPIRE | - | 
| 合同流签(合同过期) | DEADLINE | 合同终态,到达合同的过期时时还没有签署完成 | 
| 已解除 | RELIEVED | 合同终态 | 
| 合同已失效 | INVALID | 合同终态 | 
| 合同异常 | EXCEPTION | 合同终态,签署期间有签署人改名等原因导致 | 
签署人状态
| 签署人状态 | 对应ApproveStatus | 
|---|---|
| 待签署 | PENDING | 
| 已签署 | ACCEPT | 
| 拒绝 | REJECT | 
| 过期没人处理 | DEADLINE | 
| 流程已撤回 | CANCEL | 
| 流程已终止 | STOP | 
| 待领取 | WAITPICKUP | 
| 待填写 | FILLPENDING | 
| 填写完成 | FILLACCEPT | 
| 已转他人处理 | FORWARD | 
| 已解除 | RELIEVED | 
| 拒绝填写 | FILLREJECT | 
| 异常 | EXCEPTION | 
合同组状态
| 合同组状态 | 对应FlowGroupStatus | 
|---|---|
| 待我处理 | TOSIGN | 
| 待他人处理 | WAITSIGN | 
| 部分合同已失效 | PART | 
| 已完成 | ALL | 
| 已失效 | INVALID | 
| 合同处理中 | PROCESSING | 
| 未定义 | UNDEFINED | 
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ApplicationId | String | 第三方应用的应用编号 | 
| ProxyOrganizationOpenId | String | 第三方平台子客企业的唯一标识,定义Agent中的ProxyOrganizationOpenId一样, 可以参考Agent结构体 | 
| ProxyOperatorOpenId | String | 第三方平台子客企业员工的唯一标识,定义和Agent.ProxyOperator.OpenId一样, 可以参考Agent结构体 | 
| CustomerData | String | 用PDF文件创建签署流程和用模板创建签署流程创建签署流程时候传递的CustomerData参数 | 
| FlowId | String | 触发回调的合同流程ID,为32位字符串 | 
| TemplateId | String | 发起合同时候所使用的模板ID,为32位字符串 | 
| FlowName | String | 触发回调的合同流程的名称 | 
| FlowType | String | 触发回调的合同流程的类别分类 这个字段即将废弃,不再建议使用,请使用 UserFlowType | 
| UserFlowType | UserFlowType | 自定义合合同类型 | 
| FlowStatus | String | 合同状态,具体含义可以参考上述其他说明中的 会出现回调的合同状态 | 
| FlowMessage | String | 当合同流程状态为合同拒签, 合同撤回等状态时,此字段为拒签或撤销原因,其他状态时此字段为空值 | 
| CreateOn | Integer | 合同流程的创建时间戳,格式为Unix标准时间戳(秒) | 
| Deadline | Integer | 签署流程的签署截止时间,格式为Unix标准时间戳(秒) | 
| CcInfo | Array of CcInfo | 合同(流程)关注方信息列表, 结构体定义可以查看开发者中的CcInfo | 
| FlowApproverInfo | Array of FlowApproverDetail | 合同(流程)签署人信息列表, 结构体的定义可以参考下面的FlowApproverDetail | 
| FlowGroupMessage | FlowGroupMessageDetail | 如果合同归属合同组, 此结构体为合同组的信息, 结构体的定义可以参考下面的FlowGroupMessageDetail | 
| OccurTime | Integer | 此回调触发的时间,格式为Unix标准时间戳(秒) | 
| ReleaseFlowId | String | 合同解除后(FlowStatus=RELIEVED)返回此字段,表示合同对应的解除协议编号 | 
FlowApproverDetail结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ProxyOperatorOpenId | String | 如果第三方子客员工签署, 此字段为第三方子客员工的唯一标识 | 
| ProxyOrganizationName | String | 如果第三方子客员工签署, 此字段为第三方子客的名称 | 
| OrganizationName | String | 如果saas企业员工签署, 此字段为saas企业的名称 | 
| ProxyOrganizationOpenId | String | 如果第三方子客员工签署, 此字段为第三方子客的唯一标识 | 
| PhoneNumber | String | 对应签署人的手机号 | 
| SignOrder | Integer | 如果合同是顺序签署, SignOrder对应签署人的签署顺序 | 
| RecipientId | String | 对应签署人的参与角色ID | 
| ApproveName | String | 对应签署人的名字 | 
| ApproveStatus | String | 对应签署人的状态, 具体含义可以参考上述其他说明中的 签署人状态 | 
| ApproveMessage | String | 对应签署人状态的简单描述, 如: 已签署或者拒签的原因等 | 
| ApproveTime | String | 对应签署人签署此合同的时间,格式为Unix标准时间戳(秒) | 
| CaSign | String | 对应签署人签署此合同的证书信息, 此功能为白名单功能, 使用前请联系对接的客户经理沟通。 | 
| ApproverDeadline | int64 | 对应签署人的签署截止时间,格式为Unix标准时间戳(秒) | 
FlowGroupMessageDetail结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| FlowGroupId | String | 合同组的ID,为32位字符串 | 
| FlowGroupName | String | 合同组的名称 | 
| CreateOn | Integer | 合同组的创建时间戳,格式为Unix标准时间戳(秒) | 
| FlowsInfo | Array of GroupFlowsInfoDetail | 合同组中每个合同流程的信息, 结构体的定义可以参数下面的 GroupFlowsInfoDetail | 
| FlowGroupStatus | String | 合同组状态,具体含义可以参考上述其他说明中的 合同组状态 | 
GroupFlowsInfoDetail结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| FlowId | String | 合同组里边流程的ID,为32位字符串 | 
UserFlowType结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| UserFlowTypeId | String | 自定义合同类型ID,为32位字符串 | 
| Name | String | 自定义合同类型名称 | 
5. 示例
{
  "MsgId": "yDwFdUUckpswdrniUuzcbXw8N43W6Kcz",
  "MsgType": "FlowStatusChange",
  "MsgVersion": "ThirdPartyApp",
  "MsgData": {
    "ApplicationId": "yDwFkUUckpstzjhfUugNAWf1KibXqS26",
    "ProxyOrganizationOpenId": "org_dianziqian",
    "ProxyOperatorOpenId": "user_openid",
    "CustomerData": "data",
    "FlowId": "yDwFdUUckpsveo27UEQPEVo14KnASuGI",
    "TemplateId": "yDtIcUUckp9d8yxaUxdI5uCRvkiaZpYO",
    "FlowName": "2023年采购西红柿50吨合同",
    "FlowType": "采购合同", //即将废弃,不再建议使用
    "UserFlowType":{"name":"采购合同","user_flow_type_id":"yDt3KUUckpxijrgtUuvdERZxeyn8Wg2M"},
    "FlowStatus": "REJECT",
    "FlowMessage": "张三因为合同中的价格问题不满意而拒绝合同",
    "CreateOn": 1563968167,
    "Deadline": 1573968167,
    "CcInfo": [],
    "FlowApproverInfo": [
      {
        "ProxyOperatorOpenId": "n9527",
        "PhoneNumber": "13200000000",
        "ProxyOrganizationName": "典子谦示例企业",
        "ProxyOrganizationOpenId": "org_dianziqian",
        "OrganizationName": "",
        "SignOrder": 1,
        "recipientId": "yDwFkUUckpstzjhfUugNAWf1KibXqS26",
        "ApproveName": "典子谦",
        "ApproveStatus": "ACCEPT",
        "ApproveMessage": "已签署",
        "ApproveTime": 1563968000,
        "CaSign": "",
        "ApproverDeadline": 1563968167
      },
      {
        "ProxyOperatorOpenId": "",
        "PhoneNumber": "18888888888",
        "ProxyOrganizationName": "",
        "ProxyOrganizationOpenId": "",
        "OrganizationName": "",
        "SignOrder": 2,
        "recipientId": "yDRS4UUgygqdcj56UuO4zjExBQcOiB68",
        "ApproveName": "张三",
        "ApproveStatus": "PENDING",
        "ApproveMessage": "待签署",
        "ApproveTime": 1563968100,
        "CaSign": "",
        "ApproverDeadline": 1563968167
      }
    ],
    "FlowGroupMessage": {
      "FlowGroupId": "yDRS4UUgygqdcj2tUuO4zjEEFuP35Swc",
      "FlowGroupName": "2023年蔬菜采购合作组",
      "FlowGroupStatus": "WAITSIGN",
      "FlowsInfo": [
        {
          "FlowId": "yDwFdUUckpsveo27UEQPEVo14KnASuGI"
        },
        {
          "FlowId": "yDRSRUUgygj6qnwfUuO4zjEwc193c2hH"
        }
      ],
      "CreateOn": 1562968167
    },
    "OccurTime": 1563968167
  }
}
二. 转交签署任务
1. 回调触发时机
合同经办人将合同转交给同企业其他经办人时触发
2. 回调消息类型
ForwardFLow
3. 其他说明
无
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ApplicationId | String | 第三方应用的应用编号 | 
| ProxyOrganizationOpenId | String | 第三方平台子客企业的唯一标识,定义Agent中的ProxyOrganizationOpenId一样, 可以参考Agent结构体 | 
| ProxyOperatorOpenId | String | 转交此合同的第三方平台子客企业员工的唯一标识, 为转发动作的发起方 | 
| FlowId | String | 转交的合同流程ID,为32位字符串 | 
| ForwardedOpenId | String | 接收此合同的第三方平台子客企业员工的唯一标识, 为转发动作的目的方 | 
触发场景:;
5. 示例
{
  "MsgId": "yDRIGUUgygs8aey1UuO4zjEuM18ffkaK",
  "MsgType": "ForwardFLow",
  "MsgVersion": "ThirdPartyApp",
  "MsgData": {
    "ApplicationId": "yDwFkUUckpstzjhfUugNAWf1KibXqS26",
    "ProxyOrganizationOpenId": "org_dianziqian",
    "ProxyOperatorOpenId": "n9527",
    "FlowId": "yDwFmUUckpstqfvzUE1h3jo1f3cqjkGm",
    "ForwardedOpenId": "n13579"
  }
}
三. 合同发起扣费通知(已废弃)
已废弃,请使用 费用相关回调。
1. 回调触发时机
合同发起成功并扣费成功后触发
2. 回调消息类型
FlowCost
3. 其他说明
无
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ApplicationId | String | 第三方应用的应用编号 | 
| ProxyOrganizationOpenId | String | 第三方平台子客企业的唯一标识,定义Agent中的ProxyOrganizationOpenId一样, 可以参考Agent结构体 | 
| ProxyOperatorOpenId | String | 发起此合同的第三方平台子客企业员工的唯一标识 | 
| FlowId | String | 转交的合同流程ID,为32位字符串 | 
| Cost | Integer | 此合同流程消耗的合同份额, 固定为1 | 
| CostChannel | String | 此合同流程消耗对应计费版本, 现在的计费版本有企业版,在线签约,战略签约,群闪签,单方签章等, 一般为企业版 | 
| IsResell | Boolean | 此合同流程消耗是否是分销场景下的消费 | 
5. 示例
{
  "MsgId": "yDRspUUgyg17u3j8Ux9XTPkBnnXZyvdT",
  "MsgType": "FlowCost",
  "MsgVersion": "ThirdPartyApp",
  "MsgData": {
    "ApplicationId": "yDwFkUUckpstzjhfUugNAWf1KibXqS26",
    "ProxyOrganizationOpenId": "org_dianziqian",
    "ProxyOperatorOpenId": "n9527",
    "Cost": 1,
    "CostChannel": "企业版",
    "FlowId": "yDRspUUgyg17u3jwUx9XTPkysXSTG8jO",
    "IsResell": false
  }
}
四. 合同撤销扣费返还通知(已废弃)
已废弃,请使用 费用相关回调。
1. 回调触发时机
合同撤销时触发合同消费额度的返还
2. 回调消息类型
FLowCost
3. 其他说明
无
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ApplicationId | String | 第三方应用的应用编号 | 
| ProxyOrganizationOpenId | String | 第三方平台子客企业的唯一标识,定义Agent中的ProxyOrganizationOpenId一样, 可以参考Agent结构体 | 
| FlowId | String | 转交的合同流程ID,为32位字符串 | 
| Cost | Integer | 此合同流程返还的合同份额,  注意: 此字段为负数表示返回额度 | 
| CostChannel | String | 此合同流程消耗对应计费版本, 现在的计费版本有企业版,在线签约,战略签约,群闪签,单方签章等, 一般为企业版 | 
| IsResell | Boolean | 此合同流程消耗是否是分销场景下的消费 | 
5. 示例
{
  "MsgId": "yDRspUUgyg17u3j8Ux9XTPkBnnXZyvdT",
  "MsgType": "FlowCost",
  "MsgVersion": "ThirdPartyApp",
  "MsgData": {
    "ApplicationId": "yDwFkUUckpstzjhfUugNAWf1KibXqS26",
    "ProxyOrganizationOpenId": "org_dianziqian",
    "Cost": -1,
    "CostChannel": "企业版",
    "FlowId": "yDRspUUgyg17u3jwUx9XTPkysXSTG8jO",
    "IsResell": false
  }
}
五. 发起合同审核通知
1. 回调触发时机
在嵌入式页面场景下,若调用创建发起流程web页面接口时设置了NeedCreateReview 参数进行发起操作的审批控制,则在审批发起、通过或者拒绝时会进行回调。
2. 回调消息类型
CreateFlowReview
3. 其他说明
无
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ApplicationId | String | 第三方应用的应用编号 | 
| ProxyOrganizationOpenId | String | 第三方平台子客企业的唯一标识,定义Agent中的ProxyOrganizationOpenId一样, 可以参考Agent结构体 | 
| ProxyOperatorOpenId | String | 执行对应审核动作的第三方平台子客企业员工的唯一标识 | 
| FlowId | String | 审核的合同流程ID,为32位字符串 | 
| DocumentId | String | 审核的合同流程的PDF文档的编号ID,为32位字符串 | 
| FlowName | String | 审核的合同流程的名称 | 
| Operate | String | 审核动作, 具体的含义参考下面的Operate说明 | 
| CustomerData | String | 用PDF文件创建签署流程和用模板创建签署流程创建签署流程时候传递的CustomerData参数 | 
Operate含义
- CreateFlowReviewStart:提交发起审核
 - CreateFlowReviewPass:发起审核通过
 - CreateFlowReviewReject:发起审核拒绝
 
5. 示例
{
  "MsgId": "yDwFhUUckps95bm2UElNO1L1rQ8x9p0Q",
  "MsgType": "CreateFlowReview",
  "MsgVersion": "ThirdPartyApp",
  "MsgData": {
    "ApplicationId": "yDwFUckpstzjhfUugNAWf1KibXqS96",
    "ProxyOrganizationOpenId": "org_dianziqian",
    "ProxyOperatorOpenId": "n9527",
    "DocumentId": "yDRS4UUgygqdcjjhUuO4zjEBpXdcsHWX",
    "Operate": "CreateFlowReviewStart",
    "FlowId": "yDwFdUUckpsveo27UEQPEVo14KnASuGI",
    "CustomerData": "data",
    "FlowName": "2023年采购西红柿50吨合同"
  }
}
六. 动态签署人领取合同通知
1. 回调触发时机
在合同含有动态签署人时,即通过接口文件发起合同、模板发起合同发起合同指定了动态签署人签署人设置后,则可以通过接口补充签署流程签署人信息指定具体签署人或者获取跳转至腾讯电子签小程序的签署链接生成动态签署人链接前往页面进行领取,领取完成后进行回调。
2. 回调消息类型
ReceiveFlow
3. 其他说明
无
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| FlowId | String | 合同流程ID,为32位字符串 | 
| CallbackType | String | 回调的类型: Dynamic:动态签署人领取合同回调  | 
| ApproverType | Integer | 参与者类型,  0:企业 1:个人 3:企业自动签署 7:个人自动签署  | 
| RecipientId | String | 对应签署人的参与角色ID, 为32位字符串 | 
| OrganizationName | String | 领取人的企业名称,签署人类型为企业时有值 | 
| Name | String | 领取人的姓名 | 
| Mobile | String | 领取人的手机号码 | 
| OrganizationOpenId | String | 领取人的企业OpenId,签署人类型为第三方应用企业时有值 | 
| OpenId | String | 领取人的OpenId,签署人类型为第三方应用企业时有值 | 
| ReceiveTime | Integer | 领取时间 | 
5. 示例
{
  "MsgId": "yDSLgUUckp**************gvRRiu2QzL9",
  "MsgType": "ReceiveFlow",
  "MsgVersion": "ThirdPartyApp",
  "MsgData": {
    "FlowId": "yDSLaUUck**************OqxaEcHip4W",
    "CallbackType": "Dynamic",
    "ApproverType": 0,
    "RecipientId": "yDSLaUUckp**************ROqBRg91hfFA",
    "OrganizationName": "**科技有限公司",
    "Name": "张三",
    "Mobile": "1591***5678",
    "OrganizationOpenId": "",
    "OpenId": "",
    "ReceiveTime": 1701313404
  }
}
七. 领取未归属合同通知
1. 回调触发时机
通过接口文件发起合同、模板发起合同发起合同时未指定具体签署人,则可以通过接口领取未归属的合同或者生成子客登录链接登陆控制台查看并领取合同。
2. 回调消息类型
ReceiveFlow
3. 其他说明
无
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| FlowId | String | 合同流程ID,为32位字符串 | 
| CallbackType | String | 回调的类型: Bound:未归属合同领取回调  | 
| ApproverType | Integer | 参与者类型,  0:企业 1:个人 3:企业自动签署 7:个人自动签署  | 
| RecipientId | String | 对应签署人的参与角色ID, 为32位字符串 | 
| OrganizationName | String | 领取人的企业名称,签署人类型为企业时有值 | 
| Name | String | 领取人的姓名 | 
| Mobile | String | 领取人的手机号码 | 
| OrganizationOpenId | String | 领取人的企业OpenId | 
| OpenId | String | 领取人的OpenId | 
| ReceiveTime | Integer | 领取时间 | 
5. 示例
{
  "MsgId": "yDSLaUUckp********jukyHDpgLMZF",
  "MsgType": "ReceiveFlow",
  "MsgVersion": "ThirdPartyApp",
  "MsgData": {
    "FlowId": "yDSLgUUckpt********8nkx64wWVjfv",
    "CallbackType": "Bound",
    "ApproverType": 0,
    "RecipientId": "yDSLgUUckp********8nkumOxreQuC",
    "OrganizationName": "**科技有限公司",
    "Name": "张三",
    "Mobile": "1591***5678",
    "OrganizationOpenId": "d7c13a8b***********68c0ee248f04",
    "OpenId": "00498cc***********3aff766cac",
    "ReceiveTime": 1701313404
  }
}
八. 签署人签署截止时间过期通知
1. 回调触发时机
在通过接口文件发起合同、模板发起合同发起合同时指定了签署人的签署截止时间,若合同状态正常,且签署人在签署截止时间前未完成签署操作,会触发此回调。 若还需要签署人继续签署,可通过接口 管理签署流程截止时间延长签署人截止时间以便继续签署。 注:此消息会在签署人签署截止时间前3小时触发。
2. 回调消息类型
ApproverDeadlineExpired
3. 其他说明
无
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ApplicationId | String | 第三方应用的应用编号,为32位字符串 | 
| ProxyOrganizationOpenId | String | 发起方企业在第三方平台子客企业的唯一标识,可以参考Agent结构体 | 
| FlowId | String | 合同流程ID,为32位字符串 | 
| FlowName | String | 合同名称 | 
| FlowStatus | string | 合同状态 见上方合同状态变动通知中FlowStatus定义 | 
| FlowDeadline | int64 | 合同的签署截止时间 | 
| FlowUnordered | Boolean | 合同是否有序 | 
| OrganizationId | String | 发起方企业ID | 
| ApproverInfo | ApproverInfo | 过期签署人的信息 | 
ApproverInfo结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| SignOrder | int64 | 当前签署人的顺序,如果是有序合同的话需要关注,有序从1开始 | 
| RecipientId | String | 签署人编号 | 
| ApproverType | int64 | 参与者类型,  0:企业 1:个人 3:企业自动签署 7:个人自动签署  | 
| ApproverName | int64 | 签署人姓名 | 
| ApproverMobile | string | 签署人手机号 | 
| OrganizationName | String | 签署人企业名称 | 
| ProxyOrganizationOpenId | String | 签署人企业OpenId,签署人类型为第三方应用企业时有值 | 
| ProxyOperatorOpenId | String | 签署人OpenId,签署人类型为第三方应用企业时有值 | 
| ApproverDeadline | int64 | 对应签署人的签署截止时间,格式为Unix标准时间戳(秒) | 
5. 示例
{
  "MsgId": "yDCNsUUckpvqfrz7UuGjzgvBW2KDYTh9",
  "MsgType": "ApproverDeadlineExpired",
  "MsgVersion": "ThirdPartyApp",
  "MsgData": {
    "ApplicationId": "yDCNGUUckpvjp7xfUuj6rPu4Bnbumbbb",
    "ProxyOrganizationOpenId": "example-proxy-organization-open-id",
    "FlowId": "yDCNsUUckpvqzv1zUxu0h4ax87hzcag7",
    "FlowName": "示例合同",
    "FlowStatus": "INIT",
    "FlowDeadline": 1706085980,
    "FlowUnordered": true,
    "ApproverInfo": {
      "SignOrder": 0,
      "RecipientId": "yDCNsUUckpvqzv2eUxu0h3a1W9TswxMn",
      "ApproverType": 0,
      "ApproverName": "典子谦",
      "ApproverMobile": "18200000000",
      "ProxyOrganizationOpenId": "example-proxy-organization-open-id",
      "ProxyOperatorOpenId": "example-proxy-operator-open-id",
      "ApproverStatus": "PENDING",
      "OrganizationName": "电子签示例企业",
      "ApproverDeadline": 1706083980
    }
  }
}
九. 批量撤销结果回调
1. 回调触发时机
在通过接口批量撤销合同流程或者 获取批量撤销合同流程的腾讯电子签小程序链接进行批量撤销操作后,若批量撤销任务完成,则会触发此回调。
2. 回调消息类型
CancelFlows
3. 其他说明
无
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ApplicationId | String | 第三方应用的应用编号,为32位字符串 | 
| ProxyOrganizationOpenId | String | 发起方企业在第三方平台子客企业的唯一标识,可以参考Agent结构体 | 
| TaskId | String | 批量撤销任务编号,为32位字符串 | 
| SuccessFlowIds | Array of String | 撤销成功的合同流程ID列表 | 
| FailureFlows | Array of FailureFlow | 撤销失败的合同流程列表 | 
FailureFlow结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| FlowId | String | 签署流程编号,为32位字符串 | 
| Reason | String | 撤销失败的原因 | 
5. 示例
{
    "MsgId": "yDCVWUUckpwkg3d4UxFDY7lRXuH9tIjX",
    "MsgType": "CancelFlows",
    "MsgVersion": "ThirdPartyApp",
    "MsgData": {
        "ApplicationId": "yDCNGUUckpvjp7xfUuj6rPu4Bnbumbbb",
        "ProxyOrganizationOpenId": "example-proxy-organization-open-id",
        "TaskId": "yDCVWUUckpwk3b05UyEZnO0xOn4snWWY",
        "SuccessFlowIds": [
            "yDwFQUUckpswz8sbUywdl3m11huHBekH"
        ],
        "FailureFlows": [
            {
                "FlowId": "yDCNGUUckpvjdelbUuyImI8pY8I5Mep7",
                "Reason": "合同当前状态不支持撤销"
            },
            {
                "FlowId": "yDw9jUUgyg34g2mdUxawbT71HrwMQ2gF",
                "Reason": "合同信息不存在或非本企业发起的合同"
            }
        ]
    }
}
十. 合同组状态变动回调
1. 回调触发时机
当合同组状态(参考上述其他说明中的 合同组状态 )处于终态:部分合同已失效,已完成,已失效 时 ,则会触发此回调。
2. 回调消息类型
FlowGroupStatusChange
3. 其他说明
每个合同组仅会回调一次
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ApplicationId | String | 第三方应用的应用编号,为32位字符串 | 
| ProxyOrganizationOpenId | String | 发起方企业在第三方平台子客企业的唯一标识,可以参考Agent结构体 | 
| ProxyOperatorOpenId | String | 第三方平台子客企业员工的唯一标识,定义和Agent.ProxyOperator.OpenId一样, 可以参考Agent结构体 | 
| FlowGroupId | String | 合同组编号,为32位字符串 | 
| FlowGroupName | String | 合同组名称 | 
| FlowGroupStatus | String | 合同组状态,具体含义可以参考上述其他说明中的 合同组状态 | 
5. 示例
{
    "MsgId": "yDCVWUUckpwkg3d4UxFDY7lRXuH9tIjX",
    "MsgType": "FlowGroupStatusChange",
    "MsgVersion": "ThirdPartyApp",
    "MsgData": {
        "ApplicationId": "yDCNGUUckpvjp7xfUuj6rPu4Bnbumbbb",
        "ProxyOrganizationOpenId": "example-proxy-organization-open-id",
        "ProxyOperatorOpenId": "user_openid",
        "FlowGroupId": "yDRS4UUgygqdcj2tUuO4zjEEFuP35Swc",
        "FlowGroupName": "2023年蔬菜采购合作组",
        "FlowGroupStatus": "ALL"
    }
}
十一. 合同文档合成完成回调
1. 回调触发时机
当发起的合同中存在高耗时合成任务时(如发起方控件填写,动态表格合成),文档合成完成后进行回调。
目前覆盖的场景:
1.通过用模板创建签署流程时,若模板配置了发起方填写控件,则在文档合成完成后进行回调。
2.通过用模板创建签署流程进行预览操作时(外层参数NeedPreview设置为true),当使用的模板中存在动态表格控件时,完整预览链接可通过此回调获取。
2. 回调消息类型
DocumentFill
3. 其他说明
无
4. 回调结构体
MsgData结构体定义
| 参数名称 | 参数类型 | 参数描述 | 
|---|---|---|
| ApplicationId | String | 第三方应用的应用编号 | 
| ProxyOrganizationOpenId | String | 第三方平台子客企业的唯一标识,定义Agent中的ProxyOrganizationOpenId一样, 可以参考Agent结构体 | 
| TaskId | String | 合成任务Id, 可以使用 TaskId 通过 ChannelGetTaskResultApi 接口获取文档任务状态 | 
| DocumentFileStatus | String | 处理状态,一般是成功-SUCCESS | 
| ResourceUrl | String | PDF文档资源链接 | 
5. 示例
{
    "MsgId": "yDwFdUUckpswdrniUuzcbXw8N43W6Kcz",
    "MsgType": "DocumentFill",
    "MsgVersion": "ThirdPartyApp",
    "MsgData": {
        "ApplicationId": "c17bdf9c2a7bdcb32611f4d0200fef3d",
        "ProxyOrganizationOpenId": "00498cc8500be9cxxxxxxx3aff766cac",
        "TaskId": "yDwFdUUckxxxxxxxxxxxN43W6Kca",
        "DocumentFileStatus": "SUCCESS",
        "ResourceUrl": "https://xxx.com/files/DOCUMENT/xxx"
    }
}