检测提交接口
数字阅读解决方案提交接口用于数字阅读类产品检测数据的提交。
接口说明
该接口为数字阅读检测数据提交接口,支持http协议接口调用。可以配置结果同步返回或者结果异步返回:
-
文本、图片类型:可配置结果同步返回或异步返回
-
音频、视频以及文档:仅支持异步返回
默认都是异步返回结果,如果需要设置同步返回结果,请联系易盾策略经理进行配置。
鉴权说明
易盾内容安全服务使用签名方法对接口进行鉴权,所有接口每一次请求都需要包含签名信息(signature 参数),以验证用户身份,防止信息被恶意篡改。目前支持MD5,SHA1,SHA256,SM3几种加密算法,详细信息,请参见接口鉴权
检测数据要求
请求体限制:所有请求参数大小总和不能超过10M
文本要求
- 文本限制:单次请求<5000字符,字段长度超过5000字符,会提示参数错误
图片要求
- 图片支持类型:URL
- 图片支持格式:PNG、JPG、JPEG、BMP、GIF、WEBP、TIFF、ICO、HEIC
- 图片大小(适用于同步和异步检测): 单张<10M,像素建议不低于50px*50px,像素过低会影响识别效果
- 图片下载:下载时间限制为5秒内,如果下载时间超过5秒,接口检测失败
- 截帧说明:易盾自动将GIF图,长图(长宽比大于5的图片)截帧过检,最多5张,GIF图,长图均按照实际截图张数进行计费
音频要求
- 音频支持类型:URL
- 音频支持格式:wav、mp3、aac、amr、3gp、m4a、wma、ogg、ape、flac、alac、wavpack、silk_v3等
- 音频大小: 音频文件大小不超过550M
- 音频时长: 时长小于5小时
- 音频下载:下载时间限制为5秒内,如果下载时间超过5秒,接口检测失败
视频要求
- 视频支持类型:URL
- 视频支持格式:flv、mkv 、mp4 、rmvb 、avi 、wmv、3gp、ts、mov、rm、mpeg、wmf等
- 视频时长: 时长小于5小时
- 视频下载:下载时间限制为5秒内,如果下载时间超过5秒,接口检测失败
文档要求
- 文档支持类型:URL
- 文档支持格式: txt、doc、docx、ppt、pptx、xls、xlsx、pdf、zip、ofd
- 文档大小:单文档<150M
检测耗时
数字阅读检测接口根据设置的同步或异步返回的方式不同,接口耗时也不同,具体超时时间设置建议如下:
结果异步返回: 此时接口只是接收保存提交的检测任务,检测流程是异步进行的,整体耗时较短,建议设置为200ms
结果同步返回: 此时接口会执行同步检测流程,并同步返回检测结果
-
文本检测结果同步返回,响应时间依赖文本的长度,根据不同长度建议适当调整接口超时时间,200字以内建议200ms,200字以上建议设置为1s
-
图片检测结果同步返回,响应时间依赖图片的下载时间,请保证被检测图片所在的存储服务稳定可靠,建议适当调整接口超时时间,建议设置为10s
历史版本
请求
名称 | 值 |
---|---|
HTTP URL | https://as.dun.163.com/v2/digital/submit |
HTTP Method | POST |
请求头
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Content-Type | String | 是 | 固定值:"application/x-www-form-urlencoded" |
请求参数
请求参数由公共参数和业务参数两部分组成。
公共参数
公共参数包含密钥信息和参数签名信息,具体的公共参数请参考请求公共参数。
业务参数
名称 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
version | String | Y | 4 | 接口版本号,可选值v2 |
ip | String | N | 128 | 用户IP地址,建议抄送,辅助机审策略精准调优 |
account | String | N | 128 | 用户唯一标识,与易盾账号画像库匹配,建议抄送,辅助机审策略精准调优 |
deviceId | String | N | 128 | 用户设备id,与易盾设备画像库匹配,明文请转大写传入;MD5加密请明文转大写后MD5计算,再转大写传入,建议抄送 |
deviceType | Number | N | 4 | 用户设备id的类型,0:其他,10:IMEI,11:AndroidID,12:IDFA,13:IDFV,14:MAC ,20:IMEI_MD5,21:AndroidID_MD5,22:IDFA_MD5,23:IDFV_MD5,24:MAC_MD5,可选值-10000~10000 |
publishTime | Number | N | 13 | 发表时间,UNIX 时间戳(毫秒值) |
dataId | String | N | 128 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
title | String | N | 512 | 标题,可作为章节名称或标题使用 |
content | Object[] | N | 150000 | content为json数组格式 |
∟ type | String | Y | 10 | 类型,分别为text-文本,image-图片,audio-点播语音,audiovideo-点播视频,file-文档 |
∟ data | String | Y | 5000 | 检测数据,类型为text时最多传入20条文本内容,每条最长5000字符;类型为image时最多传入50张图片url,每张最长512字符;类型为audio时最多传入5条语音url,每条最长512字符;类型为audiovideo时最多传入5条音视频url,每条最长512字符;类型为file时最多传入10个文档url,每个最长512字符 |
∟ dataId | String | N | 128 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
自定义解析字段 | Object[] | N | 150000 | 格式同content字段。业务方自定义的解析检测或者解析不检测字段,支持同时设置多个自定义字段。确定字段名称、检测配置要求后,请联系易盾策略经理进行配置。注意:只要字段内容需要解析并展示在审核区域,就需要按此字段格式接入。 |
自定义不解析字段 | String | N | 1024 | 业务自定义非解析检测字段,非解析检测字段无法切换为检测字段。确认字段名称、非检测配置后,请联系易盾策略经理进行配置。支持同时设置多个自定义不解析字段,字段内容将展示在扩展信息区域,辅助人工审核。 |
callback | String | N | 512 | 数据回调参数,调用方根据业务情况自行设计,当调用数字阅读异步接口获取结果时,该接口会原样返回该字段。作为数据处理标识,因此该字段应该设计为能唯一定位到该次请求的数据结构,如对用户的昵称进行检测,dataId可设为用户标识(用户ID),用户修改多次,每次请求数据的dataId可能一致,但是callback参数可以设计成定位该次请求的数据结构,比如callback字段设计成json,包含dataId和请求的时间戳等信息,当然如果不想做区分,也可以直接把callback设置成dataId的值。 |
callbackUrl | String | N | 1024 | 异步结果回调通知到客户的URL。主动回调数据接口超时时间设置为2s,为了保证顺利接收数据,需保证接收接口性能稳定并且保证幂等性。 |
token | String | N | 256 | 内容安全与反作弊融合版专属字段,来自易盾反作弊SDK返回的token,接入SDK必传,接入流程请参考防刷版开发文档 |
chapterNumber | Number | N | 19 | 章节号,用于审核页面顺序展示章节 |
totalChapters | Number | N | 19 | 章节总数,若抄送,审核页面将会展示正文的命中原因及关键词提取信息,会统计不通过章节数/已审核章节数/总章节数 |
bookId | String | Y | 64 | 作品ID,以章节为主体抄送时,作品ID用于归类一个作品的章节 |
bookName | Object[] | N | 作品名称,可用于书籍、小说名称等 | |
∟ type | String | Y | 10 | 类型为text-文本 |
∟ data | String | Y | 5000 | 书籍或小说名称 |
∟ dataId | String | N | 128 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
bookCover | Object[] | N | 作品封面图片 | |
∟ type | String | Y | 10 | 类型 image-图片 |
∟ data | String | Y | 5000 | 作品封面图片url地址 |
∟ dataId | String | N | 128 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
bookInformation | Object[] | N | 150000 | 作品信息,json格式正文数据,默认支持提交文本内容,如果需要支持图片,点播语音,点播视频,点播语音&点播视频,文档业务,请联系易盾策略经理沟通配置 |
∟ type | String | Y | 10 | 类型,分别为text-文本,image-图片,audio-点播语音,audiovideo-点播视频,file-文档 |
∟ data | String | Y | 5000 | 检测数据,类型为text时最多传入20条文本内容,每条最长5000字符;类型为image时最多传入50张图片url,每张最长512字符;类型为audio时最多传入5条语音url,每条最长512字符;类型为audiovideo时最多传入5条音视频url,每条最长512字符;类型为file时最多传入10个文档url,每个最长512字符 |
∟ dataId | String | N | 128 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
authorName | String | N | 64 | 作者名 |
totalBooks | Number | N | 19 | 作者作品总数 |
totalFans | Number | N | 19 | 作者粉丝数 |
totalCreationDays | Number | N | 19 | 作者创作天数 |
authorRank | String | N | 64 | 作者等级 |
type | String | Y | 64 | 场景分类 1 提交只包含书的一章,2 表示提交包含整本书内容 |
请求体示例
content=[{"type":"image","data":"https://url/image1.jpg","dataId":"01"},{"type":"text","data":"检测文本","dataId":"02"}]
&version=v2
&signature=xxx
&secretId=xxx
响应
响应结果
根据配置的同步结果返回和异步结果不同,响应结果也有一定的区别,响应公共字段已省略,详细见响应公共字段。
异步结果返回
默认情况下是异步返回结果。
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
result | Object | 是 | 数字阅读结果 |
∟antispam | Object | 是 | 数字阅读检测任务提交结果 |
∟ taskId | String | 是 | 本次请求数据标识,可以根据该标识查询数据最新结果 |
∟ dataId | String | 否 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ callback | String | 否 | 数据回调参数,请求参数中传来的callback字段原样返回 |
同步结果返回
在开启文本和图片同步结果返回的情况下,返回的结构如下所示:
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
result | Object | 是 | 数字阅读结果 |
∟antispam | Object | 是 | 数字阅读任务机器检测结果 |
∟ taskId | String | 是 | 本次请求数据标识,可以根据该标识查询数据最新结果 |
∟ dataId | String | 否 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ callback | String | 否 | 数据回调参数,请求参数中传来的callback字段原样返回 |
∟ suggestion | Number | 是 | 建议动作,0:通过,1:嫌疑,2:不通过 |
∟ resultType | Number | 是 | 结果类型,1:机器结果,2:人审结果 |
∟ checkStatus | Number | 是 | 检测状态, 1:检测中 2:检测成功 3:检测失败 |
∟ evidences | Object | 否 | 机审证据信息 |
∟ texts | Object[] | 否 | 文本检测结果 |
∟ dataId | String | 否 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ field | String | 是 | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 |
∟ suggestion | Number | 是 | 建议动作,0:通过,1:嫌疑,2:不通过 |
∟ resultType | Number | 是 | 结果类型,1:机器结果,2:人审结果 |
∟ censorType | Number | 是 | 审核模式,0:纯机审,1:机审+部分人审,2:机审+全量人审 |
∟ strategyVersions | Object[] | 否 | 策略版本号,策略更新时该参数会更新,可用于追溯策略调优效果 |
∟ label | Number | 是 | 分类,示例值:100 |
∟ version | String | 是 | 版本号 |
∟ isRelatedHit | Boolean | 是 | 是否关联检测命中,true:关联检测命中,false:原文命中 |
∟ labels | Object[] | 是 | 命中的分类信息 |
∟ label | Number | 是 | 命中分类,示例值:100 |
∟ level | Number | 是 | 命中级别,示例值:1:嫌疑,2:不通过,0:正常,特殊策略下可返回“level=0”的数据,如果需要返回可以找策略经理配置 |
∟ subLabels | Object[] | 否 | 细分类信息,可能包含多个 |
∟ subLabel | Number | 是 | 细分类,详细编码请参考下方对应细分类编码对照表 |
∟ details | Object | 否 | 命中的详细信息 |
∟ keywords | Object[] | 否 | 命中的敏感词信息 |
∟ word | String | 是 | 敏感词内容 |
∟ libInfos | Object[] | 否 | 命中的自定义库信息 |
∟ type | Number | 是 | 库类型,1:自定义用户名单库,2:自定义ip名单库 |
∟ entity | String | 是 | 自定义库实体 |
∟ hintInfos | Object[] | 否 | 命中的线索信息 |
∟ value | String | 是 | 线索内容 |
∟ positions | Object[] | 是 | 线索位置 |
∟ startPos | Number | 是 | 线索开始坐标 |
∟ endPos | Number | 是 | 线索结束坐标 |
∟ images | Object[] | 否 | 图片检测结果 |
∟ dataId | String | 否 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ field | String | 是 | 数据来源字段名。当数据来自提交接口的 title 或 content 时,此字段值为 title 或 content,当数据来自提交接口扩展字段时,此字段值为扩展字段名 |
∟ name | String | 是 | 图片名称(或图片标识) |
∟ status | Number | 是 | 检测状态:2 检测成功、3 检测失败 |
∟ failureReason | Number | 否 | 检测失败原因,当status为3(检测失败)时返回:610 图片下载失败、620 图片格式错误、630 检测成功、630 其他 |
∟ suggestion | Number | 是 | 建议动作,0:通过,1:嫌疑,2:不通过 |
∟ resultType | Number | 是 | 结果类型,1:机器结果,2:人审结果 |
∟ labels | Object[] | 是 | 命中的分类信息 |
∟ label | Number | 是 | 分类信息,100:色情,110:性感低俗,200:广告,210:二维码,260:广告法,300:暴恐,400:违禁,500:涉政,800:恶心类,900:其他,1100:涉价值观 |
∟ level | Number | 是 | 命中级别,示例值:1:嫌疑,2:不通过,0:正常,特殊策略下可返回“level=0”的数据,如果需要返回可以找策略经理配置 |
∟ rate | Number | 是 | 置信度分数,0-1之间取值,1为置信度最高,0为置信度最低。若level为正常,置信度越大,说明正常的可能性越高。若level为不确定或确定,置信度越大,说明垃圾的可能性越高 |
∟ subLabels | Object[] | 是 | 细分类信息,可能包含多个 |
∟ subLabel | Number | 是 | 细分类,详细编码请参考下方对应细分类编码对照表 |
∟ rate | Number | 是 | 置信度分数,0-1之间取值,1为置信度最高,0为置信度最低 |
∟ details | Object | 否 | 命中的详细对象信息 |
∟ keywords | Object[] | 否 | 命中的自定义敏感词信息 |
∟ word | string | 是 | 敏感词内容 |
∟ x1 | Number | 否 | 位置信息,对应目标矩形左上角横坐标相对坐标 |
∟ y1 | Number | 否 | 位置信息,对应目标矩形左上角纵坐标相对坐标 |
∟ x2 | Number | 否 | 位置信息,对应目标矩形右下角横坐标相对坐标 |
∟ y2 | Number | 否 | 位置信息,对应目标矩形右下角纵坐标相对坐标 |
∟ libInfos | Object[] | 是 | 命中的自定义图片名单信息 |
∟ entity | String | 是 | 该图片命中自定义图片名单对应原始添加的根源图片url |
∟ hitCount | String | 是 | 历史针对该数据源图片命中所有次数 |
∟ value | String | 否 | 图片中包含的可识别内容 |
∟ group | String | 否 | value对应的分组名称,用于对value的解释 |
∟ hintInfos | Object[] | 是 | 命中的线索信息 |
∟ value | String | 是 | 图片中包含的可识别内容 |
∟ group | String | 否 | value对应的分组名称,用于对value的解释 |
∟ x1 | Number | 否 | 位置信息,对应目标矩形左上角横坐标相对坐标 |
∟ y1 | Number | 否 | 位置信息,对应目标矩形左上角纵坐标相对坐标 |
∟ x2 | Number | 否 | 位置信息,对应目标矩形右下角横坐标相对坐标 |
∟ y2 | Number | 否 | 位置信息,对应目标矩形右下角纵坐标相对坐标 |
∟valueAddService | Object | 是 | 增值服务信息,如有检测需求请联系易盾策略经理开启服务 |
∟ emotionAnalysis | Object | 否 | 情感分析检测结果 |
∟ texts | Object[] | 否 | 文本情感分析检测结果 |
∟ taskId | String | 是 | 检测任务ID |
∟ field | String | 是 | 数据来源字段名 |
∟ dataId | String | 是 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ details | Object[] | 否 | 命中的详细信息 |
∟ positiveProb | Number | 是 | 正向情绪倾向,取值0-1,分数越高,正向情绪越高 |
∟ negativeProb | Number | 是 | 负向情绪倾向,取值0-1,分数越高,负向情绪越高 |
∟ sentiment | String | 是 | 情感类型,negative(负向情绪),neutral(中性情绪),positive(正向情绪),unknown(未知) |
∟ language | Object | 否 | 语种检测结果 |
∟ texts | Object[] | 否 | 文本语种检测结果 |
∟ taskId | String | 是 | 检测任务ID |
∟ field | String | 是 | 数据来源字段名 |
∟ dataId | String | 是 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ details | Object[] | 否 | 命中的详细信息 |
∟ type | String | 是 | 语种代码详见,语种代码表 |
∟ ocr | Object | 否 | OCR结果信息 |
∟ images | Object[] | 否 | 图片OCR结果信息 |
∟ taskId | String | 是 | 检测任务ID |
∟ field | String | 是 | 数据来源字段名 |
∟ dataId | String | 否 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ height | Number | 是 | 图片高度,单位像素 |
∟ width | Number | 是 | 图片宽度,单位像素 |
∟ details | Object[] | 否 | 命中的详细信息 |
∟ content | String | 是 | 该图片中所有的文字信息集合 |
∟ lineContents | Object[] | 是 | OCR行信息 |
∟ lineContent | String | 是 | 每行的文字信息 |
∟ lang | String | 否 | 语种信息 |
∟ x1 | Number | 否 | 位置信息,对应目标矩形左上角横坐标相对坐标 |
∟ y1 | Number | 否 | 位置信息,对应目标矩形左上角纵坐标相对坐标 |
∟ x2 | Number | 否 | 位置信息,对应目标矩形右下角横坐标相对坐标 |
∟ y2 | Number | 否 | 位置信息,对应目标矩形右下角纵坐标相对坐标 |
∟ face | Object | 否 | 人脸检测信息 |
∟ images | Object[] | 否 | 图片人脸检测信息 |
∟ taskId | String | 是 | 检测任务ID |
∟ field | String | 是 | 数据来源字段名 |
∟ dataId | String | 否 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ details | Object[] | 否 | 命中的详细信息 |
∟ faceNumber | Number | 是 | 该图片中包含的人脸个数 |
∟ faceContents | Object[] | 是 | 人脸详细信息 |
∟ name | String | 是 | 人脸名字,不可识别则为空 |
∟ gender | String | 否 | 人脸性别,值为男(male)、女(female);不可识别则为空 |
∟ age | Integer | 否 | 人脸年龄,值为具体年龄(age);不可识别则为空 |
∟ type | String | 否 | 人脸类型,包含卡通脸(cartoon)、普通(normal) |
∟ category | String | 否 | 人物分类,包含名人(star)、普通(normal) |
∟ beautyScore | Number | 否 | 人脸颜值分数,保留4位小数 |
∟ sizeRatio | String | 否 | 人脸占比,百分比形式 |
∟ x1 | Number | 否 | 位置信息,对应目标矩形左上角横坐标相对坐标 |
∟ y1 | Number | 否 | 位置信息,对应目标矩形左上角纵坐标相对坐标 |
∟ x2 | Number | 否 | 位置信息,对应目标矩形右下角横坐标相对坐标 |
∟ y2 | Number | 否 | 位置信息,对应目标矩形右下角纵坐标相对坐标 |
∟ quality | Object | 否 | 图片质量检测结果 |
∟ images | Object[] | 否 | 图片质量检测结果 |
∟ taskId | String | 是 | 检测任务ID |
∟ field | String | 是 | 数据来源字段名 |
∟ dataId | String | 否 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ details | Object[] | 否 | 命中的详细信息 |
∟ aestheticsRate | Number | 否 | 美观度分数,0-1,分数越高美观度越高,建议0.5分以上可认为美观度较好,0.3分以下可认为美观度较差,具体视业务场景而定 |
∟ sharpnessRate | Number | 否 | 清晰度分数,0-1,分数越高清晰度越高,建议0.5分以上可认为清晰度较好,0.3分以下可认为清晰度较差,具体视业务场景而定 |
∟ metaInfo | Object | 否 | 图片基本信息 |
∟ byteSize | Number | 否 | 图片大小,单位byte |
∟ format | String | 否 | 图片格式 |
∟ height | Number | 否 | 图片高度,单位像素 |
∟ width | Number | 否 | 图片宽度,单位像素 |
∟ boarderInfo | Object | 否 | 图片背景信息 |
∟ hit | Boolean | 否 | 图片是否包含边框(任一边包含边框均视为包含)ture:包含边框;false:不包含边框 |
∟ top | Boolean | 否 | 图片顶部是否包含边框,ture:包含边框;false:不包含边框 |
∟ right | Boolean | 否 | 图片右侧是否包含边框,ture:包含边框;false:不包含边框 |
∟ bottom | Boolean | 否 | 图片底部是否包含边框,ture:包含边框;false:不包含边框 |
∟ left | Boolean | 否 | 图片左侧是否包含边框,ture:包含边框;false:不包含边框 |
∟ backgroundInfo | Object | 否 | 图片背景信息 |
∟ pureBackground | boolean | 否 | 纯色背景检测,ture:背景纯色;false:背景复杂 |
∟ logo | Object | 否 | logo检测结果,logo检测支持对图片中包含的通识logo进行识别 |
∟ images | Object[] | 否 | 图片logo检测结果 |
∟ taskId | String | 是 | 检测任务ID |
∟ field | String | 是 | 数据来源字段名 |
∟ dataId | String | 否 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ details | Object[] | 否 | 命中的详细信息 |
∟ logoName | String | 是 | logo名字,不可识别则为空 |
∟ x1 | Number | 否 | logo位置信息,对应logo矩形左上角横坐标相对坐标 |
∟ y1 | Number | 否 | logo位置信息,对应logo矩形左上角纵坐标相对坐标 |
∟ x2 | Number | 否 | logo位置信息,对应logo矩形右下角横坐标相对坐标 |
∟ y2 | Number | 否 | logo位置信息,对应logo矩形右下角纵坐标相对坐标 |
∟ discern | Object | 否 | 图片识别结果 |
∟ images | Object[] | 否 | 图片识别结果 |
∟ taskId | String | 是 | 检测任务ID |
∟ field | String | 是 | 数据来源字段名 |
∟ dataId | String | 否 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给策略经理查询 |
∟ details | Object[] | 否 | 命中的详细信息 |
∟ discernName | String | 是 | 识别物体名称 |
∟ rate | Number | 是 | 识别分数,0-1之间取值,1为置信度最高,0为置信度最低。 |
∟ type | Number | 是 | 图片识别类型,1 场景识别,2 地标识别,3 通用识别 |
∟anticheat | Object | 是 | 反作弊检测结果,如有检测需求请联系易盾策略经理开启服务 |
∟ taskId | String | 是 | 检测任务ID |
∟ suggestion | Number | 是 | 建议动作,0:通过,1:嫌疑,2:不通过 |
∟ hitInfo | Number | 是 | 命中信息 |
∟ hitType | Number | 是 | 反作弊命中类型,详见hitType返回码及含义表 |
响应示例
异步结果返回示例
{
"code": 200,
"msg": "ok",
"result": {
"antispam": {
"dataId": "131246",
"callback": "i am callback",
"taskId": "jk5wux0l0u6zjmotwc088svg05009pgr"
}
}
}
同步结果返回示例
文本和图片开启同步结果返回
{
"code": 200,
"msg": "ok",
"result": {
"antispam": {
"checkStatus": 2,
"dataId": "131246",
"suggestion": 2,
"callback": "i am callback",
"evidences": {
"images": [
{
"dataId": "792707",
"field": "image1",
"suggestion": 2,
"censorType": 0,
"name": "81uoe1igu601b2v2wfoik3fg05009pgr",
"resultType": 1,
"labels": [
{
"subLabels": [
{
"subLabel": "50003",
"rate": 1.0,
"details": {
"hitInfos": [
{
"y1": 0.1756,
"y2": 0.7165,
"x1": 0.1711,
"x2": 0.8457,
"value": "李四"
}
]
}
}
],
"level": 2,
"rate": 1.0,
"label": 500
},
{
"level": 0,
"rate": 1.0,
"label": 300
}
],
"status": 2
}
],
"texts": [
{
"dataId": "192470",
"field": "image1",
"suggestion": 2,
"censorType": 0,
"isRelatedHit": false,
"resultType": 1,
"labels": [
{
"subLabels": [
{
"subLabel": "100080",
"details": {
"hitInfos": [
{
"positions": [
{
"fieldName": "content",
"startPos": 0,
"endPos": 2
}
],
"value": "测试"
},
{
"positions": [
{
"fieldName": "content",
"startPos": 23,
"endPos": 24
}
],
"value": "江"
}
],
"keywords": [
{
"word": "测试"
}
]
}
},
{
"subLabel": "100002"
}
],
"level": 2,
"label": 100
},
{
"subLabels": [
{
"subLabel": "500001",
"details": {
"hitInfos": [
{
"positions": [
{
"fieldName": "content",
"startPos": 15,
"endPos": 18
}
],
"value": "测试1"
}
]
}
},
{
"subLabel": "500013",
"details": {
"hitInfos": [
{
"positions": [
{
"fieldName": "content",
"startPos": 15,
"endPos": 18
}
],
"value": "测试2"
}
]
}
}
],
"level": 2,
"label": 500
},
{
"level": 0,
"label": 200
},
{
"level": 0,
"label": 260
}
]
}
]
},
"resultType": 1,
"taskId": "81uoe1igu601b2v2wfoik3fg05009pgr"
},
"valueAddService": {
"emotionAnalysis": {
"texts": [
{
"dataId": "192470",
"field": "image1",
"details": [
{
"sentiment": "positive",
"positiveProb": 0.7576994299888611,
"negativeProb": 0.24208970367908478
}
],
"taskId": "81uoe1igu601b2v2wfoik3fg05009pgr"
}
]
},
"face": {
"images": [
{
"dataId": "792707",
"field": "image1",
"details": [
{
"faceContents": [
{
"maskType": "normal",
"expression": "happy",
"gender": "male",
"y1": 0.1756,
"name": "张三",
"y2": 0.7165,
"x1": 0.1711,
"x2": 0.8457,
"type": "normal",
"category": "normal",
"beautyScore": 0.49,
"age": 50
}
],
"faceNumber": 1
}
],
"taskId": "81uoe1igu601b2v2wfoik3fg05009pgr"
}
]
},
"imageDiscern": {
"images": [
{
"dataId": "792707",
"field": "image1",
"details": [
{
"rate": 0.9593,
"type": 3,
"discernName": "张三"
},
{
"rate": 0.755,
"type": 3,
"discernName": "人物特写"
},
{
"rate": 0.4752,
"type": 3,
"discernName": "人脸"
}
],
"taskId": "81uoe1igu601b2v2wfoik3fg05009pgr"
}
]
},
"logo": {
"images": [
{
"dataId": "792707",
"field": "image1",
"details": [
],
"taskId": "81uoe1igu601b2v2wfoik3fg05009pgr"
}
]
},
"language": {
"texts": [
{
"dataId": "192470",
"field": "image1",
"details": [
{
"type": "zh"
}
],
"taskId": "81uoe1igu601b2v2wfoik3fg05009pgr"
}
]
},
"imageQuality": {
"images": [
{
"dataId": "792707",
"field": "image1",
"details": [
{
"metaInfo": {
"byteSize": 124343,
"format": "png",
"width": 267,
"height": 333
},
"sharpnessRate": 0.7394,
"aestheticsRate": 0.6262,
"boarderInfo": {
"hit": false,
"top": false,
"left": false,
"bottom": false,
"right": false
},
"backgroundInfo": {
"pureBackground": false
}
}
],
"taskId": "81uoe1igu601b2v2wfoik3fg05009pgr"
}
]
},
"ocr": {
"images": [
{
"dataId": "792707",
"field": "image1",
"width": 267,
"details": [
],
"taskId": "81uoe1igu601b2v2wfoik3fg05009pgr",
"height": 333
}
]
}
}
},
"anticheat": {
"suggestion": 2,
"taskId": "81uoe1igu601b2v2wfoik3fg05009pgr",
"hitInfo": {
"hitType": 3
}
}
}
响应返回码
响应返回码见:响应返回码
示例代码
服务端 SDK 接入
推荐使用我们提供的服务端 SDK 进行接入(目前支持 Java 和 Go 两种语言),不但可以节省接入成本,实现更快速的集成,并享有灵活的请求配置选项,同时 SDK 内置了错误重试、熔断降级等功能,提升服务可用性。点击 服务端 SDK 接入指引 了解更多。