功能描述
若您配置了审核回调地址,在图片审核结束后,后台会将审核结果以 json 形式回调至您的回调地址。您可以通过回调内容,进行后续的文件处理操作。
回调内容分为简洁回调(Simple)和详细回调(Detail)。
回调内容说明
简洁回调(Simple)
回调通知为
HTTP
的POST
方法,含有 X-Ci-Content-Version: Simple
的头部。该响应体返回为 application/json 数据,包含完整节点数据的内容展示如下:
{"code": 0,"data": {"forbidden_status": 0,"event": "ReviewImage","porn_info": {"hit_flag": 0,"label": "","score": 9},"result": 0,"trace_id": "test_trace_id","url": "https://examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/test.jpg","cos_headers": {"x-cos-meta-xx": "xx"}},"message": "Test request when setting callback url"}
具体的数据内容如下:
参数名称 | 描述 | 类型 | 是否必选 |
code | Integer | 是 | |
message | 错误描述。 | String | 是 |
data | 图片审核结果的详细信息。 | Object | 是 |
data 的具体内容如下:
参数名称 | 描述 | 类型 | 是否必选 |
trace_id | 唯一 ID 标识。 | String | 是 |
url | 被审核图片的完整 URL 链接。 | String | 是 |
event | 触发的事件,此处固定为 ReviewImage。 | String | 是 |
result | 该字段表示本次判定的审核结果,您可以根据该结果,进行后续的操作;建议您按照业务所需,对不同的审核结果进行相应处理。有效值:0(审核正常),1 (判定为违规敏感文件),2(疑似敏感,建议人工复核)。 | Integer | 是 |
forbidden_status | 若您设置了自动冻结,该字段表示图片的冻结状态。0:未冻结,1:已被冻结,2:已转移文件。 | Integer | 是 |
cos_headers | 资源上传时设置的自定义 header 内容,若未设置则不返回。 | Object | 否 |
porn_info | 审核场景为色情性感的审核结果信息。 | Object | 否 |
ads_info | 审核场景为广告引导的审核结果信息。 | Object | 否 |
quality_info | 审核场景为图片低质量不清晰的审核结果信息。 | Object | 否 |
xx_info 的具体内容如下:
参数名称 | 描述 | 类型 | 是否必选 |
hit_flag | 用于返回该审核场景的审核结果,返回值:0:正常。1:确认为当前场景的违规内容。2:疑似为当前场景的违规内容。 | Integer | 是 |
score | 该字段表示审核结果命中审核信息的置信度,取值范围:0(置信度最低)-100(置信度最高 ),越高代表该内容越有可能属于当前返回审核信息。通常[0,60]分可以认为图片属于正常,[61,90]分表示图片疑似敏感,[91,100]分表示图片为敏感的。例如:色情 99,表明该内容非常有可能属于色情内容。 | Integer | 是 |
label | 命中的标签名称。 | String | 是 |
详细回调(Detail)
回调通知为
HTTP
的POST
方法,含有 X-Ci-Content-Version: Detail
的头部。该响应体返回为 application/json 数据,包含完整节点数据的内容展示如下:
{"EventName": "ReviewImage","JobsDetail": {"JobId": "xxxx","State": "Success","CreationTime": "","Object": "","Url": "https://examplebucket-1250000000.cos.ap-chengdu.myqcloud.com/test.jpg","Label": "Normal","Result": 0,"Score": 0,"Category": "","SubLabel": "","Text": "","PornInfo": {"HitFlag": 0,"Score": 0,"Label": "","Category": "","SubLabel": ""},"AdsInfo": {"HitFlag": 0,"Score": 0,"Label": "","Category": "","SubLabel": ""},"BucketId": "examplebucket-1250000000","Region": "ap-chongqing","ForbidState": 0,"CosHeaders": {"x-cos-meta-id": "xxxx"}}}
具体的数据内容如下:
节点名称(关键字) | 描述 | 类型 |
JobsDetail | 任务的详细结果信息 | Object |
EventName | 任务的类型,为 ReviewImage | String |
JobsDetail 的具体内容如下:
节点名称(关键字) | 描述 | 类型 |
Code | String | |
Message | 错误描述,只有 State 为 Failed 时返回。 | String |
JobId | 审核任务的 ID。 | String |
State | 审核任务的状态,值为 Submitted(已提交审核)、Success(审核成功)、Failed(审核失败)、Auditing(审核中)其中一个。 | String |
CreationTime | 审核任务的创建时间。 | String |
CompressionResult | 图片是否被压缩处理,值为 0(未压缩),1(正常压缩)。 | Integer |
Object | 被审核的图片文件名称。创建任务使用 Object 时返回。 | String |
Url | 被审核的图片文件链接。创建任务使用 Url 时返回。 | String |
Label | 该字段用于返回检测结果中所对应的优先级最高的恶意标签,表示模型推荐的审核结果,建议您按照业务所需,对不同违规类型与建议值进行处理。 返回值:Normal:正常,Porn:色情,Ads:广告,Quality:低质量,以及其他不安全或不适宜的类型。 | String |
Result | 该字段表示本次判定的审核结果,您可以根据该结果,进行后续的操作;建议您按照业务所需,对不同的审核结果进行相应处理。有效值:0(审核正常),1 (判定为违规敏感文件),2(疑似敏感,建议人工复核)。 | Integer |
Score | 该字段表示审核结果命中审核信息的置信度,取值范围:0(置信度最低)-100(置信度最高 ),越高代表该内容越有可能属于当前返回审核信息。通常[0,60]分可以认为图片属于正常,[61,90]分表示图片疑似敏感,[91,100]分表示图片为敏感的。例如:色情 99,则表明该内容非常有可能属于色情内容。 | Integer |
Category | 该字段为 Label 的子集,表示审核命中的具体审核类别。例如 Sexy,表示色情标签中的性感类别。 | String |
SubLabel | 该字段表示审核命中的具体子标签,例如:Porn 下的 SexBehavior 子标签。 注意:该字段可能返回空,表示未命中具体的子标签 | String |
Text | 图片 OCR 文本识别出的具体文本内容,当审核策略开启 OCR 内容检测时返回。 | String |
PornInfo | 审核场景为色情性感的审核结果信息。 | Object |
AdsInfo | 审核场景为广告引导的审核结果信息。 | Object |
QualityInfo | 审核场景为图片低质量不清晰的审核结果信息。 | Object |
BucketId | 审核操作所属的存储桶名称。 | String |
Region | 存储桶所在的地域。 | String |
ForbidState | 若您设置了自动冻结,该字段表示图片的冻结状态。0:未冻结,1:已被冻结,2:已转移文件。 | Integer |
CosHeaders | 资源上传到 COS 时设置的自定义 Header 内容,如果未设置则不返回。map 结构,key 为自定义 Header 的名称,value 为内容。 | Object |
UserInfo | 用户业务字段。 | Container Array |
ListInfo | 审核结果命中了业务字段风险库,将返回该字段。 | Container Array |
Container 节点 UserInfo 的内容:
节点名称(关键字) | 描述 | 类型 |
TokenId | 一般用于表示账号信息,长度不超过128字节。 | String |
Nickname | 一般用于表示昵称信息,长度不超过128字节。 | String |
DeviceId | 一般用于表示设备信息,长度不超过128字节。 | String |
AppId | 一般用于表示 App 的唯一标识,长度不超过128字节。 | String |
Room | 一般用于表示房间号信息,长度不超过128字节。 | String |
IP | 一般用于表示 IP 地址信息,长度不超过128字节。 | String |
Type | 一般用于表示业务类型,长度不超过128字节。 | String |
ReceiveTokenId | 一般用于表示接收消息的用户账号,长度不超过128字节。 | String |
Gender | 一般用于表示性别信息,长度不超过128字节。 | String |
Level | 一般用于表示等级信息,长度不超过128字节。 | String |
Role | 一般用于表示角色信息,长度不超过128字节。 | String |
Container 节点 ListInfo 的内容:
节点名称(关键字) | 描述 | 类型 |
ListResults | 命中的所有业务字段风险库结果。 | Container Array |
Container 节点 ListResults 的内容:
节点名称(关键字) | 描述 | 类型 |
ListType | 命中的业务字段风险库类型,取值为0(白库)和1(黑库)。 | Integer |
ListName | 命中的业务字段风险库名称。 | String |
Entity | 命中了业务字段风险库中的哪条内容。 | String |
PornInfo,AdsInfo,QualityInfo等的具体内容如下:
节点名称(关键字) | 描述 | 类型 |
HitFlag | 用于返回该审核场景的审核结果,返回值:0:正常。1:确认为当前场景的违规内容。2:疑似为当前场景的违规内容。 | Integer |
Score | 该字段表示审核结果命中审核信息的置信度,取值范围:0(置信度最低)-100(置信度最高 ),越高代表该内容越有可能属于当前返回审核信息。通常[0,60]分可以认为图片属于正常,[61,90]分表示图片疑似敏感,[91,100]分表示图片为敏感的。例如:色情 99,表明该内容非常有可能属于色情内容。 | Integer |
Label | 该字段表示该截图的综合结果标签(可能为 SubLabel,可能为人物名字等)。 | String |
Category | 该字段为 Label 的子集,表示审核命中的具体审核类别。例如 Sexy,表示色情标签中的性感类别。 | String |
SubLabel | 该字段表示审核命中的具体子标签,例如:Porn 下的 SexBehavior 子标签。 注意:该字段可能返回空,表示未命中具体的子标签。 | String |
OcrResults | 该字段表示 OCR 文本识别的详细检测结果,包括文本识别结果、命中的关键词等信息,有相关违规内容时返回。 | Container Array |
LibResults | 该字段用于返回基于风险库识别的结果。 注意:未命中风险库中样本时,此字段不返回。 | Container Array |
ObjectResults | 该字段用于返回物体检测模型的详细检测结果。 包括:实体、广告台标、二维码等内容命中的标签名称、标签分数、坐标信息、场景识别结果、建议操作等内容审核信息。 | Container Array |
Container 节点 LibResults 的内容:
节点名称(关键字) | 描述 | 类型 |
ImageId | 该字段表示命中的风险库中的图片样本 ID。 | String |
Score | 该字段用于返回当前标签下的置信度,取值范围:0(置信度最低)-100(置信度最高 ),越高代表当前的图片越有可能命中库中的样本。例如:色情 99,表明该数据非常有可能命中库中的色情样本。 | Integer |
OcrResults 的具体内容如下:
节点名称(关键字) | 描述 | 类型 |
Text | 图片 OCR 文本识别出的具体文本内容。 | String |
Keywords | 在当前审核场景下命中的关键词。 | Array |
SubLabel | 该字段表示审核命中的具体子标签。注意:该字段可能返回空。 | String |
Location | 该参数用于返回 OCR 检测框在图片中的位置(左上角 xy 坐标、长宽、旋转角度),以方便快速定位识别文字的相关信息。 | Object |
ObjectResults 的具体内容如下:
节点名称(关键字) | 描述 | 类型 |
Name | 该标签用于返回所识别出的实体名称,例如人名。 | String |
SubLabel | 该字段表示审核命中的具体子标签。注意:该字段可能返回空。 | String |
Location | 该参数用于返回检测结果在图片中的位置(左上角 xy 坐标、长宽、旋转角度),以方便快速定位相关信息。 | Object |
Location 的具体内容如下:
节点名称(关键字) | 描述 | 类型 |
X | 该参数用于返回检测框左上角位置的横坐标(x)所在的像素位置,结合剩余参数可唯一确定检测框的大小和位置。 | Float |
Y | 该参数用于返回检测框左上角位置的纵坐标(y)所在的像素位置,结合剩余参数可唯一确定检测框的大小和位置。 | Float |
Height | 该参数用于返回检测框的高度(由左上角出发在 y 轴向下延伸的长度),结合剩余参数可唯一确定检测框的大小和位置。 | Float |
Width | 该参数用于返回检测框的宽度(由左上角出发在 x 轴向右延伸的长度),结合剩余参数可唯一确定检测框的大小和位置。 | Float |
Rotate | 该参数用于返回检测框的旋转角度,该参数结合 X 和 Y 两个坐标参数可唯一确定检测框的具体位置;取值:0 - 360(角度制),方向为逆时针旋转。 | Float |
实际案例
案例一:简洁回调(Simple)
{"code": 0,"data": {"event":"ReviewImage","forbidden_status": 0,"porn_info": {"hit_flag": 0,"label": "","score": 9},"result": 0,"trace_id": "ixzt90jl2dfscxxxxxxxxxxxxxxxxx","url": "https://examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/test.jpg","cos_headers": {"x-cos-meta-id": "666666"}},"message": "success"}
案例二:详细回调(Detail)
{"EventName": "ReviewImage","JobsDetail": {"JobId": "xxxx","State": "Success","CreationTime": "2021-08-10T21:01:10+08:00","CompressionResult": 0,"Object": "1.jpg","Label": "Normal","Result": 0,"Score": 0,"Category": "","SubLabel": "","Text": "","PornInfo": {"HitFlag": 0,"Score": 0,"Label": "","Category": "","SubLabel": ""},"AdsInfo": {"HitFlag": 0,"Score": 0,"Label": "","Category": "","SubLabel": ""},"BucketId": "examplebucket-1250000000","Region": "ap-chongqing","ForbidState": 0,"CosHeaders": {"x-cos-meta-id": "xxxx"}}}