## 接口地址 https://as.dun.163.com/v1/digital/callback/query (https://as.dun.163.com/v1/digital/callback/query) ## 接口描述 接口功能,在离线接口获取数据结果之后避免网络原因等数据丢失,可以在数字阅读解决方案查询接口获取数据,查询时限为30天内数据,建议您使用POST请求, 且仅接受 application/x-www-form-urlencoded 编码格式。 ## 接口请求频率 单次调用支持查询最多100条数据,QPS限制1s最多查询100个taskid。 ## 请求参数 请求公共参数详细见 请求公共参数 (/help/documents/477203617247420416) 参数名称 | 类型 | 是否必选 | 最大长度 | 描述 version | String | Y | 4 | 接口版本,当前版本为 v1.1 taskIds | json数组 | Y | 4 | 单次查询支持最多查询100条数据 ## 响应结果 响应字段如下,响应通用字段已省略,详细见 响应通用字段 (/help/documents/439201277949382656): ### result 数据结构 参数名称 | 类型 | 描述 antispam | json对象 | 内容安全检测结果 anticheat | json对象 | 反作弊检测结果 ### antispam 数据结构 参数名称 | 类型 | 描述 taskId | String | 数据请求标识,可以根据该标识查询融媒体数据最新结果 dataId | String | 调用融媒体检测时传递的dataId字段 callback | String | 调用检测时传递的callback字段 checkStatus | Number | 检测状态, 1:检测中 2:检测成功 3:检测失败 result | Number | 检测结果, 0:无结果(检测失败)1:正常 2:异常 3:疑似 resultType | Number | 审核类型,1:机器检测,2:审核 censorSource | Number | 审核来源,0:易盾人审,1:用户人审,2:易盾机审 censorRound | Number | 审核轮数,1:第1轮人审,2:第2轮人审,3:第3轮人审,4:第4轮人审,5:第5轮人审,未设置审核模式默认返回0 censorLabels | json数组 | 支持在智能审核系统自定义标签分类信息 evidences | json对象 | 机审证据信息 reviewEvidences | json对象 | 人审证据信息,接入人工审核后,参考人审证据信息 ### censorLabels 数据结构 参数名称 | 类型 | 描述 code | String | 在智能审核系统配置自定义标签之后会生成一个唯一的标签编号 desc | String | 在智能审核系统配置自定义标签备注 customCode | String | 自定义的标签code ### evidences 数据结构 参数名称 | 类型 | 描述 texts | json数组 | 文本证据信息 images | json数组 | 图片证据信息 audios | json数组 | 语音证据信息 videos | json数组 | 视频证据信息 audiovideos | json数组 | 语音视频证据信息 files | json数组 | 文档证据信息 #### texts 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id action | Number | 检测结果,0:通过,1:嫌疑,2:不通过 labels | json数组 | 分类信息 详细数据与文本在线检测labels数据结构一致 field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 labels 数据结构 参数名称 | 类型 | 描述 label | Number | 分类信息,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,700:灌水,900:其他 level | Number | 分类级别,0:通过, 1:嫌疑,2:不通过 details | json对象 | 其他信息 details 数据结构 参数名称 | 类型 | 描述 hint | json数组 | 线索信息,用于定位文本中有问题的部分,辅助人工审核 #### images 数据结构 参数名称 | 类型 | 描述 name | String | 图片标识 dataId | String | 提交检测时标识的数据id status | Number | 图片检测状态码,定义为:0:检测成功,610:图片下载失败,620:图片格式错误,630:其它 action | Number | 检测结果,0:通过,1:嫌疑,2:不通过 labels | json数组 | 分类信息 field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 labels 数据结构 参数名称 | 类型 | 描述 label | Number | 分类信息,100:色情,110:性感低俗,200:广告,210:二维码,260:广告法,300:暴恐,400:违禁,500:涉政,900:其他 level | Number | 分类级别,0:通过,1:嫌疑,2:不通过 rate | Number | 置信度分数,0-1之间取值,1为置信度最高,0为置信度最低。若level为正常,置信度越大,说明正常的可能性越高。若level为不确定或确定,置信度越大,说明垃圾的可能性越高 #### audios 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id asrStatus | Number | 音频翻译结果,2:检测中,3:检测完成,4:检测失败 asrResult | Number | 音频翻译检测失败原因,1:文件格式错误,2:文件下载失败,3:解析失败,4:音频流不存在 action | Number | 检测结果,0:通过,1:嫌疑,2:不通过 labels | json数组 | 分类信息 field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 labels 数据结构 参数名称 | 类型 | 描述 label | Number | 分类信息,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂 level | Number | 分类级别,0:通过,1:嫌疑,2:不通过 details | json对象 | 其他信息 details 数据结构 参数名称 | 类型 | 描述 hint | Number | 线索信息,用于定位文本中有问题的部分,辅助人工审核 hitType | Number | 命中检测器类型:10:用户名单 11:IP名单 12:设备名单 30:敏感词 110:IP地区限制 130:声纹检测 hint 数据结构 参数名称 | 类型 | 描述 value | String | 命中的敏感词或者声纹检测的分值 segments | json数组 | 命中敏感词或者声纹检测的音频时间点 segments 数据结构 参数名称 | 类型 | 描述 startTime | Number | 最近开始时间点,单位毫秒 endTime | Number | 最近结束时间点,单位毫秒 #### videos 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id status | Number | 视频处理状态码,定义为:0:检测成功,110:请求重复,120:参数错误,130:解析错误,140:数据类型错误 level | Number | 视频级别信息,分为0:正常,1:不确定,2:确定,其中不确定的建议人工复审 evidences | json对象数组 | 证据信息数组 field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 evidences 数据结构 参数名称 | 类型 | 描述 beginTime | Number | 证据开始相对时间,单位为毫秒,调用方获取后可自行格式化为可视化时间,如:149000 转换为"00:02:29" endTime | Number | 证据结束相对时间,单位为毫秒,调用方获取后可自行格式化为可视化时间,如:149000 转换为"00:02:29" type | Number | 1:图片,2:视频 url | String | 证据信息 labels | json对象数组 | 证据结果数组 labels 数据结构 参数名称 | 类型 | 描述 label | Number | 分类信息,100:色情,110:性感;200:广告,210:二维码,260:广告法,300:暴恐,400:违禁,500:涉政,1020:黑屏,1030:挂机 level | Number | 级别信息,分为1:不确定,2:确定 rate | Number | 分数 #### audiovideos 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id result | Number | 检测结果 0:无结果(检测失败), 1:正常 2:异常 3:嫌疑 evidences | json对象 | 证据信息数组 field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 evidences 数据结构 参数名称 | 类型 | 描述 audio | json对象 | 语音证据信息,结构与audios数组元素一致 video | json对象 | 语音证据信息,结构与videos数组元素一致 #### files 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id result | Number | 检测结果 0:无结果(检测失败), 1:正常 2:异常 3:嫌疑 failureReason | Number | 检测失败原因 evidences | json对象 | 证据信息数组 field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 failureReason 说明 错误码 | 描述 1000 | 文档大小超过上限 1001 | 文档格式不支持 1002 | 文档下载失败 2000 | 文档内容提取失败 2001 | 文档内容提取超时 3000 | 文档检测失败 3001 | 文档文本检测失败 3002 | 文档图片检测失败 evidences 数据结构 参数名称 | 类型 | 描述 texts | json对象数组 | 文本证据信息 images | json对象数组 | 图片证据信息 texts 数据结构 参数名称 | 类型 | 描述 taskId | String | 当前分段检测数据标识 sequence | Number | 当前文本在原始文档中的分段(5000字符/段)序号 startText | String | 每段文本的起始20个字符 endText | String | 每段文本的结尾20个字符 action | Number | 检测结果,0:通过,1:嫌疑,2:不通过 labels | json对象数组 | 分类信息 详细数据与文本在线检测labels数据结构一致 images 数据结构 参数名称 | 类型 | 描述 taskId | String | 当前图片检测数据标识 sequence | Number | 当前图片在原始文档中的序号 imageUrl | String | 图片下载地址 level | Number | 分类级别,0:正常,1:不确定,2:确定 labels | json对象数组 | 分类信息 详细数据与图片在线检测labels数据结构一致 ### reviewEvidences 数据结构 参数名称 | 类型 | 描述 reason | String | 判定原因 remark | String | 备注信息 detail | json数组 | 人审证据详细信息 detail 数据结构 参数名称 | 类型 | 描述 texts | json数组 | 文本证据信息 images | json数组 | 图片证据信息 audios | json数组 | 语音证据信息 videos | json数组 | 视频证据信息 audiovideos | json数组 | 语音视频证据信息 files | json数组 | 文档证据信息 texts 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 reviseContent | String | 修订后的文本内容 censorResult | Number | 字段审核模式下的人工审核结果,1:正常 2:异常 reasons | TextReason 数组 | 文本判定原因 TextReason 数据结构 参数名称 | 类型 | 描述 text | String | 人审标注文本 reason | String | 文本判定原因 images 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 censorResult | Number | 字段审核模式下的人工审核结果,1:正常 2:异常 reasons | ImageReason 数组 | 图片判定原因 ImageReason 数据结构 参数名称 | 类型 | 描述 url | String | 人审标注图片url reason | String | 图片判定原因 audios 和 videos 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 censorResult | Number | 字段审核模式下的人工审核结果,1:正常 2:异常 reasons | AudioVideoReason 数组 | 判定原因 audiovideos 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 censorResult | Number | 字段审核模式下的人工审核结果,1:正常 2:异常 videos | AudioVideoReason 数组 | 视频证据信息 audios | AudioVideoReason 数组 | 音频证据信息 AudioVideoReason 数据结构 参数名称 | 类型 | 描述 url | String | 人审标音频或视频url startTime | Number | 标注开始时间点,单位毫秒 endTime | Number | 标注结束时间点,单位毫秒 reason | String | 判定原因 files 数据结构 参数名称 | 类型 | 描述 dataId | String | 提交检测时标识的数据id field | String | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 censorResult | Number | 字段审核模式下的人工审核结果,1:正常 2:异常 texts | TextReason 数组(见上文) | 文本证据信息 images | ImageReason 数组(见上文) | 图片证据信息 ### anticheat 数据结构 参数名称 | 类型 | 描述 taskId | String | 本次请求数据标识,可以根据该标识查询数据最新结果 action | Number | 检测结果,0:通过,10:嫌疑,20:不通过 hitInfo | 数组 | 命中信息,其中hitType类型为int,含义是命中类型,详见 hitType返回码及含义表 。 ## 响应示例 查询结果返回如下 Code (json): { "code": 200, "msg": "ok", "result": [ { "antispam": { "taskId": "a56d264d8a4649dfaa5595fa93363a56", "dataId": "81016504", "callback": "xxx", "result": 2, "checkStatus": 2, "resultType": 1, "censorSource": 2, "evidences": { "texts": [ {"action":2,"dataId":"xxx","labels":[{"label":200,"level":2,"details":{"hint":[]}}],"field":"title"}, {"action":2,"dataId":"xxx","labels":[{"label":200,"level":2,"details":{"hint":[]}}],"field":"content"} ], "images": [ {"name":"xxx","dataId":"xxx","status":0,"action":2,"labels":[{"label":100,"level":2,"rate":1.0}],"field":"content"} ], "audios": [ { "action":2, "asrStatus":3, "asrResult":0, "dataId":"bad-audio", "labels":[{"label":500,"level":2,"details":{"hint":[{"value":"为何渴望回归中国","segments":[{"startTime":0,"endTime":8}]}],"hitType":30}}], "field":"content" } ], "videos": [ { "dataId": "bad-video", "status": 0, "level": 2, "evidences": [ { "type": 1, "url": "https://illegal-video.nosdn.127.net/xxx.jpg", "beginTime": 5000, "endTime": 5000, "labels": [ { "label": 400, "level": 2, "rate": 1.0 } ] } ], "field": "content" } ], "audiovideos": [ { "dataId": "bad-video", "result": 2, "evidences": { "audio": { "action": 0, "asrStatus": 3, "asrResult": 0, "labels": [] }, "video": { "status": 0, "level": 2, "evidences": [ { "type": 1, "url": "https://illegal-video.nosdn.127.net/36e87656738e4a379b4c15ff7fa8dfdf_1606874137263.jpg", "beginTime": 5000, "endTime": 5000, "labels": [ { "label": 400, "level": 2, "rate": 1.0 } ] } ] } }, "field": "content" } ], "files": [ { "dataId": "bad-file", "result": 2, "evidences": { "texts": [ { "taskId": "5eb773f887b54c08b433a9498dd20c0d", "sequence": 0, "startText": "\n\n\n\n\n\n\n\n\n\n", "endText": "\n\n\n\n\n\n\n\n\n\n", "action": 0, "labels": [ { "label": 0, "level": 0 } ] } ], "images": [ { "taskId": "59ab4ea3e06442ce965c79d6192ec42a", "sequence": 0, "imageUrl": "https://yidun-antispam.nos-eastchina1.126.net/59ab4ea3e06442ce965c79d6192ec42a?Signature=nxFs3kh%2FgvBricm8mq7j%2BgyeDO2QWsKbxC26s2QdqYg%3D&Expires=1609466135&NOSAccessKeyId=a681ebcbcd5646a488d275c33acb16bd", "level": 1, "labels": [ { "label": 400, "level": 1, "rate": 0.98845863 } ] } ] }, "resultType": 1, "field": "content" } ] } }, "anticheat": { "action": 20, "taskId": "a56d264d8a4649dfaa5595fa93363a56", "hitInfo": { "hitType": 3 } } } ] } 当获取人工审核离线结果时,输出示例如下: Code (json): { "code": 200, "msg": "ok", "result": [ { "antispam": { "taskId": "0c32b124e4bd43c69ed0e832c1ee1cb5", "dataId": "242365478655main", "callback": "callback", "result": 2, "checkStatus": 2, "resultType": 2, "censorSource": 1, "censorRound": 1, "censorLabels": [ { "code": "在智能系统配置自定义标签之后会生成一个唯一的标签", "desc": "备注", "customCode":"9000" } ], "reviewEvidences": { "reason": "其他", "remark": "备注", "detail": { "texts": [ { "field": "title", "dataId": "0c32b124e4bd43c69ed0e832c1ee1cb5", "reasons": [ { "text": "itle", "reason": "aaa" } ] }, { "field": "content", "dataId": "sample-text" } ], "images": [ { "field": "content", "dataId": "sample-image", "reasons": [ { "url": "https://yidun-antispam.nos-eastchina1.126.net/xxx", "reason": "sss" } ] } ], "audios": [ { "field": "content", "dataId": "bad-audio", "reasons": [ { "url": "https://yidun-antispam.nos-eastchina1.126.net/xxx", "startTime": 29, "endTime": 33 }, { "url": "https://yidun-antispam.nos-eastchina1.126.net/xxx", "startTime": 2, "endTime": 29 } ] } ], "videos": [ { "field": "content", "dataId": "bad-video", "reasons": [ { "url": "http://illegal-video.nosdn.127.net/xxx", "startTime": 0, "endTime": 0, "reason": "xxx" } ] } ], "audiovideos": [ { "field": "content", "dataId": "good-video", "videos": [ { "url": "http://illegal-video.nosdn.127.net/xxx", "startTime": 0, "endTime": 0, "reason": "aaa" }, { "url": "http://illegal-video.nosdn.127.net/xxx", "startTime": 0, "endTime": 0, "reason": "bb" } ], "audios": [ { "url": "http://illegal-video.nosdn.127.net/xxx", "startTime": 0, "endTime": 0, "reason": "fdfd" } ] } ], "files": [ { "field": "content", "dataId": "xxx", "texts": [ { "text": "想到了", "reason": "a" }, { "text": "布的张", "reason": "bb" } ], "images": [ { "url": "https://yidun-antispam.nos-eastchina1.126.net/xxx", "reason": "tt" } ] } ] } } } } ] } 当无最新离线结果需要获取时,输出示例如下: Code (json): { "code": 200, "msg": "ok", "result":[] }