合同智能相关回调
一. 合同风险审查完成回调通知
1. 回调触发时机
在合同风险审查任务完成之后进行回调
2. 回调消息类型
FlowRiskIdentify
3. 其他说明
会出现回调的审查完成状态类型
审查状态 | 对应Status |
---|---|
成功 | Succeed |
失败 | Failed |
4. 回调结构体
MsgData结构体定义
参数名称 | 参数类型 | 参数描述 |
---|---|---|
TaskId | String | 合同风险审查任务ID,为32位字符串 |
Status | String | 合同风险审查任务状态 |
Message | String | 审查任务失败附带的消息 |
Risks | Array of Risk | 风险点信息列表 |
Risk结构体定义
参数名称 | 参数类型 | 参数描述 |
---|---|---|
Id | String | 风险id |
Type | String | 风险类型名称 |
Description | String | 风险描述 |
Level | Integer | 风险等级,取值 0 高风险, 1 中风险, 2 低风险 |
RiskyTextIndex | Integer | 有风险的文本内容如果在文中出现过多次,那么此风险点应该对应第几次出现。从0开始。如果没有风险文本内容,index为-1. |
Position | TextRange | 需要在文档上添加风险相关comment的段落位置,适用于类型为doc/docx的文档 |
Field | RiskField | 风险文本的坐标范围和页号信息,适用于类型为pdf或平台发起的合同文档 |
TextRange结构体定义
适用类型为DOC/DOCX的合同风险文本定位(左闭右开区间)
参数名称 | 参数类型 | 参数描述 |
---|---|---|
Begin | Integer | 范围起始下标,-1表示位置不存在 |
End | Integer | 范围结束下标,-1表示位置不存在 |
RiskField结构体定义
适用类型为PDF或平台发起的合同(FLOW)风险文本的坐标范围, 页号信息
参数名称 | 参数类型 | 参数描述 |
---|---|---|
PageNumber | Integer | 页号 |
BoundingBox | BoundingBox | 坐标范围bbox,采用coco style |
BoundingBox结构体定义
pdf合同风险点的位置信息 | 参数名称 | 参数类型 | 参数描述 | | --------- | --------- | ----- | | X | Float | 横坐标,左上为原点 | | Y | Float | 纵坐标,左上为原点 | | Width | Float | 宽 | | Height | Float | 高 |
5. 示例
示例一: 合同风险审查任务执行成功
{
"MsgId": "yDCZcUUpn2u39fUEgx6BkuO4vSKPp2gq",
"MsgType": "FlowRiskIdentify",
"MsgVersion": "CustomApp",
"MsgData": {
"TaskId": "yDCZcUUpn2uk2jUEgx6BkCcndpEAgghZ",
"Status": "Succeed",
"Risks": [
{
"Id": "0",
"Type": "收付款时间缺失",
"Description": "建议确定具体的收付款日期,精确到“日”级别,例如“2023 年 10 月 10 日”。或在满足特定条件后的“x 个工作日/自然日”之内。",
"Level": 0,
"RiskyText": "1.预付款:甲方需在签订合同后24小时内支付乙方预付款,为费用总额的30%,即人民币 元。",
"RiskyTextIndex": 0,
"Position": {
"Begin": 960,
"End": 1012
}
},
{
"Id": "1",
"Type": "收付款时间缺失",
"Description": "建议确定具体的收付款日期,精确到“日”级别,例如“2023 年 10 月 10 日”。或在满足特定条件后的“x 个工作日/自然日”之内。",
"Level": 0,
"RiskyText": "2.验收款:甲方在乙方开发第一阶段界面效果图确认完成时需要支付合同款项的50%,即人民币 元。",
"RiskyTextIndex": 0,
"Position": {
"Begin": 1012,
"End": 1066
}
},
{
"Id": "2",
"Type": "收付款时间缺失",
"Description": "建议确定具体的收付款日期,精确到“日”级别,例如“2023 年 10 月 10 日”。或在满足特定条件后的“x 个工作日/自然日”之内。",
"Level": 0,
"RiskyText": "3.项目尾款:项目审核结束,即本合同合作期满,APP程序制作及调试完成,由甲方进行项目的整体验收合格后并签定验收单,支付乙项目总额的20%,即验收完成后24小时内进行尾款清付,人民币 元整。",
"RiskyTextIndex": 0,
"Position": {
"Begin": 1066,
"End": 1168
}
},
{
"Id": "3",
"Type": "收付款时间缺失",
"Description": "建议确定具体的收付款日期,精确到“日”级别,例如“2023 年 10 月 10 日”。或在满足特定条件后的“x 个工作日/自然日”之内。",
"Level": 0,
"RiskyText": "(六)甲方应当及时按每单执行合同的约定时间付款。",
"RiskyTextIndex": 0,
"Position": {
"Begin": 1884,
"End": 1909
}
},
{
"Id": "4",
"Type": "知识产权条款需审查",
"Description": "识别到知识产权有明确归属方,建议与法务确认是否符合实际需求。",
"Level": 0,
"RiskyText": "(三)经甲方授权后由乙方传播出去的任何文字、图像及影视资料,乙方不具有版权,不得进行如下行为包括但不限于二次转载、编辑加工、评论等。",
"RiskyTextIndex": 0,
"Position": {
"Begin": 2019,
"End": 2086
}
},
{
"Id": "5",
"Type": "知识产权条款需审查",
"Description": "识别到知识产权有明确归属方,建议与法务确认是否符合实际需求。",
"Level": 0,
"RiskyText": "第四条 知识产权保护及保密条款",
"RiskyTextIndex": 0,
"Position": {
"Begin": 2287,
"End": 2304
}
},
{
"Id": "6",
"Type": "知识产权条款需审查",
"Description": "识别到知识产权有明确归属方,建议与法务确认是否符合实际需求。",
"Level": 0,
"RiskyText": "(四)乙方承诺在完成的程序上所使用的一切元素(包括但不限于图片、模板等)皆未侵占他人知识产权,否则因此引起的一切损失由乙方承担。但是侵权之元素由甲方提供者除外",
"RiskyTextIndex": 0,
"Position": {
"Begin": 2929,
"End": 3009
}
},
{
"Id": "7",
"Type": "免责条款需审查",
"Description": "识别到合同参与方可不承担违约责任,建议与法务部门核实是否符合公司规定。",
"Level": 0,
"RiskyText": "由于无法预见不可避免的不可抗力事件,例如战争、地震、罢工、暴乱或司法、政府限制等超出各方合理控制范围的突发事件的发生,导致任何一方不能执行本执行合同中的部分或全部义务时,修改方应及时通知对方,对方可根据实际情况部分或全部免除其承担违约责任。",
"RiskyTextIndex": 0,
"Position": {
"Begin": 3019,
"End": 3140
}
},
{
"Id": "8",
"Type": "诉讼管辖法院需审查",
"Description": "识别到特定诉讼管辖法院,建议确认是否符合实际需求。",
"Level": 1,
"RiskyText": "本执行合同及服务订单履行事宜发生争议,双方应本着诚信原则协商解决,协商不成的由 人民法院诉讼管辖。",
"RiskyTextIndex": 0,
"Position": {
"Begin": 3331,
"End": 3388
}
},
{
"Id": "9",
"Type": "银行信息缺失",
"Description": "建议补充完整的收款银行信息,包括收款账户的公司名称、开户行以及银行账户。",
"Level": 0,
"RiskyText": "",
"RiskyTextIndex": -1,
"Position": {
"Begin": 0,
"End": 1
}
},
{
"Id": "10",
"Type": "付款渠道缺失",
"Description": "建议约定明确的支付渠道(如:银行转账、汇票、支票、支付宝、微信支付、Paypal等)。",
"Level": 1,
"RiskyText": "",
"RiskyTextIndex": -1,
"Position": {
"Begin": 0,
"End": 1
}
}
],
"Message": ""
}
}
示例二: 合同风险审查任务执行失败
{
"MsgId": "yDCZYUUckpyo4dwoUusiyOcknVwAZYLC",
"MsgType": "FlowRiskIdentify",
"MsgVersion": "CustomApp",
"MsgData": {
"TaskId": "yDCZYUUckpyo4dwtUusiyOczKTgg4sI9",
"Status": "Failed",
"Risks": [],
"Message": "合同风险审查任务执行失败"
}
}