推送模式

2022.08.18 18:03:00

    内容安全文本结果获取推送模式用于将文本异步检测或人工审核结果主动推送给客户,保证客户最快的获取结果。客户需要按照以下规范实现接收结果的接口。推送模式与轮询模式互斥,只能选取一种模式进行结果获取

    接口说明

    结果主动推送模式以数据为维度,将人工审核结果或者异步机器检测结果推送给客户,需客户在调用检测接口时设置回调地址callbackUrl参数,客户方需保证回调接收接口的可用性和稳定性,确保能正常接收推送过来的结果数据

    鉴权说明

    易盾内容安全服务使用签名方法对接口进行鉴权,所有接口每一次请求都需要包含签名信息(signature 参数),以验证用户身份,防止信息被恶意篡改。目前支持MD5,SHA1,SHA256,SM3几种加密算法,详细信息,请参见接口鉴权

    结果说明

    • 协议说明:检测接口请求参数中指定了回调地址参数callbackUrl(即一个http(s)协议接口的URL)。主动推送接口需要支持http协议,支持POST方法,传输数据编码采用utf-8
    • 接口性能:推送结果接口默认超时时间为2s,为了保证顺利接收数据,客户需保证接收接口可用性和性能稳定
    • 失败重试:客户接口处理结果数据,并返回应答。如果客户接口请求异常,超时或收到的应答不符合规范,易盾会认为推送失败;我们将每隔10分钟推送一次,如果一直失败,持续一天后不再推送
    • 幂等性:结果推送时同样的结果可能会多次请求客户接口。客户接口需要保证幂等性,能够正确处理重复结果数据

    接口耗时

    客户接收接口需保证接收接口可用性和性能稳定,易盾请求超时时间为2s,客户接口尽量保证在1s内返回应答,如有特殊要求,可联系易盾运营适当调整超时时间

    请求

    请求地址

    名称
    HTTP URL 回调地址callbackUrl
    HTTP Method POST

    请求头

    名称 类型 必填 描述
    Content-Type String 固定值:"application/x-www-form-urlencoded"

    请求参数

    名称 类型 必填 最大长度 描述
    secretId String 32 产品秘钥id,由易盾内容安全云服务分配,产品标识
    businessId String 32 业务id ,由易盾内容安全云服务分配,业务标识
    signature String 32 请求签名,用来验证此次请求的合法性,具体算法见接口鉴权
    callbackData String - 主动推送结果数据,格式为json字符串

    请求体示例

    signature=xxx&secretId=xxx&businessId=xxx
    

    callbackData为json字符串格式,请自行解析或者反转成json对象使用

    人工审核结果请求

    resultType为2时表示人工审核结果推送请求,callbackData详细字段信息如下:

    名称 类型 必填 描述
    callbackData String 回调数据
     ∟ antispam Object 文本内容安全检测结果
      ∟ taskId String 检测任务ID,示例值:"fx6sxdcd89fvbvg4967b4787d78a"
      ∟ dataId String 数据ID
      ∟ suggestion Number 建议动作,0:通过,2:不通过
      ∟ remark String 人审备注信息
      ∟ resultType Number 结果类型,1:机器结果,2:人审结果
      ∟ censorType Number 审核模式,0:纯机审,1:机审+部分人审,2:机审+全量人审
      ∟ callback String 产品调用文本同步检测文本批量同步检测传递的callback字段数据。
      ∟ censorLabels Object[] 审核标签信息
       ∟ code String 审核标签标签唯一编号
       ∟ desc String 选择标签填写的备注内容
       ∟ customCode String 自定义审核标签编号
       ∟ name String 审核标签的名称
      ∟ censorSource Number 审核来源,0:易盾人审,1:客户审核,2:易盾机审,3:用户质检,4:易盾质检
      ∟ censorRound Number 审核轮数
      ∟ censorTime Number 审核时间
      ∟ labels Object[] 命中的分类信息
       ∟ label Number 命中分类,示例值:100
       ∟ level Number 命中级别,示例值:1
       ∟ subLabels Object[] 细分类信息,可能包含多个
        ∟ subLabel Number 细分类,详细编码请参考下方对应细分类编码对照表
        ∟ details Object 命中的详细信息
         ∟ keywords Object[] 命中的敏感词信息
          ∟ word String 敏感词内容
         ∟ libInfos Object[] 命中的自定义库信息
          ∟ type Number 库类型,1:自定义用户名单库,2:自定义ip名单库
          ∟ entity String 自定义用户名单信息,自定义ip名单信息
         ∟ anticheat Object 命中的反作弊信息
          ∟ hitType Number 反作弊命中类型,详见hitType返回码及含义表
         ∟ hitInfos Object[] 命中的线索信息
          ∟ value String 线索内容
          ∟ positions Object[] 线索位置
           ∟ fieldName String 位置类型,content:正文,title:标题
           ∟ startPos Number 线索开始坐标
           ∟ endPos Number 线索结束坐标

    人工审核结果请求示例

    {
        "antispam":{
            "taskId":"3pk5pajkz8xhb52emuzp7cdg00109v5f",
            "dataId":"1656991913371",
            "suggestion":2,
            "resultType":2,
            "censorType":0,
            "censorSource":1,
            "censorRound":0,
            "censorTime":1656991951761,
            "censorLabels":[
                {
                    "code":"1604386821661",
                    "name":"审核标签名称",
    	        "customCode":"自定义标签编码",
                    "desc":""
                }
            ],
            "remark":"",
            "isRelatedHit":false,
            "labels":[
                {
                    "label":100,
                    "level":2,
                    "subLabels":[
                        {
                            "subLabel":"100001"
                        }
                    ]
                }
            ]
        }
    }
    

    异步检测结果请求

    resultType为1时表示异步机器检测结果推送请求,callbackData详细字段信息如下:

    名称 类型 必填 描述
    callbackData String 回调数据
     ∟ antispam Object 文本内容安全检测结果
      ∟ taskId String 检测任务ID,示例值:"fx6sxdcd89fvbvg4967b4787d78a"
      ∟ dataId String 数据ID
      ∟ suggestion Number 建议动作,0:通过,1:嫌疑,2:不通过
      ∟ suggestionLevel Number 嫌疑级别,只有命中嫌疑时返回,1:低嫌疑,2:高嫌疑,v5.2版本新增,默认不返回,如果需要返回请联系运营经理配置
      ∟ resultType Number 结果类型,1:机器结果,2:人审结果
      ∟ censorType Number 审核模式,0:纯机审,1:机审+部分人审,2:机审+全量人审
      ∟ callback String 产品调用文本异步检测文本批量异步检测传递的callback字段数据。
      ∟ strategyVersions Object[] 策略版本号,策略更新时该参数会更新,可用于追溯策略调优效果
       ∟ label Number 分类,示例值:100
       ∟ version String 版本号
      ∟ isRelatedHit Boolean 是否关联检测命中,true:关联检测命中,false:原文命中
      ∟ labels Object[] 命中的分类信息
       ∟ label Number 命中分类,示例值:100,分类信息,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,700:灌水,900:其他,1100:涉价值观
       ∟ rate Number 置信度分数,0-1之间取值,1为置信度最高,0为置信度最低
       ∟ level Number 命中级别,示例值:1
       ∟ subLabels Object[] 细分类信息,可能包含多个
        ∟ subLabel Number 细分类,详细编码请参考下方对应细分类编码对照表
        ∟ details Object 命中的详细信息
         ∟ keywords Object[] 命中的敏感词信息
          ∟ word String 敏感词内容
         ∟ libInfos Object[] 命中的自定义库信息
          ∟ type Number 库类型,1:自定义用户名单库,2:自定义ip名单库
          ∟ entity String 自定义用户名单信息,自定义ip名单信息
         ∟ anticheat Object 命中的反作弊信息
          ∟ hitType Number 反作弊命中类型,详见hitType返回码及含义表
         ∟ hitInfos Object[] 命中的线索信息
          ∟ value String 线索内容
          ∟ positions Object[] 线索位置
           ∟ fieldName String 位置类型,content:正文,title:标题
           ∟ startPos Number 线索开始坐标
           ∟ endPos Number 线索结束坐标
     ∟ emotionAnalysis Object 文本情感分析检测结果,如有需要请联系您的专属商务,未开通状态下不返回
      ∟ taskId String 检测任务ID,示例值:"fx6sxdcd89fvbvg4967b4787d78a"
      ∟ dataId String 数据ID
      ∟ details Object[] 命中的详细信息
       ∟ positiveProb Number 正向情绪倾向,取值0-1,分数越高,正向情绪越高
       ∟ negativeProb Number 负向情绪倾向,取值0-1,分数越高,负向情绪越高
       ∟ sentiment String 情感类型,negative(负向情绪),neutral(中性情绪),positive(正向情绪),unknown(未知)
     ∟ anticheat Object 文本反作弊检测结果,如有需要请联系您的专属商务,未开通状态下不返回
      ∟ taskId String 检测任务ID,示例值:"fx6sxdcd89fvbvg4967b4787d78a"
      ∟ dataId String 数据ID
      ∟ details Object[] 命中的详细信息
       ∟ suggesiton Number 检测结果,0:通过,10:嫌疑,20:不通过
       ∟ hitInfos Object[] 命中信息
        ∟ hitType Number 反作弊命中类型,详见hitType返回码及含义表
        ∟ hitMsg String 反作弊命中详情,可定制返回值
     ∟ userRisk Object 文本用户画像检测结果,如有需要请联系您的专属商务,未开通状态下不返回
      ∟ taskId String 检测任务ID,示例值:"fx6sxdcd89fvbvg4967b4787d78a"
      ∟ dataId String 数据ID
      ∟ details Object[] 命中的详细信息
       ∟ account String 账号信息
       ∟ accountLevel Number 账号等级,0:正常,1:嫌疑,2:删除
     ∟ language Object 文本语种检测结果,如有需要请联系您的专属商务,未开通状态下不返回
      ∟ taskId String 检测任务ID,示例值:"fx6sxdcd89fvbvg4967b4787d78a"
      ∟ dataId String 数据ID
      ∟ details Object[] 命中的详细信息
       ∟ type String 语种代码详见,语种代码表

    异步检测结果请求示例

    {
            "antispam": {
                "taskId": "fx6sxdcd89fvbvg4967b4787d78a",
                "dataId": "dataId",
                "suggestion": 1,
    	    "suggestionLevel":2,
                "resultType": 1,
                "censorType": 0,
                "callback": "callback",
                "censorLabels": [
                    {
                        "code": "code",
                        "desc": "description"
                    }
                ],
                "censorSource": 2,
                "censorRound": 0,
                "censorTime": 1621940490801,
                "labels": [
                    {
                        "label": 100,
    		    "rate":1,
                        "level": 1,
                        "subLabels": [
                            {
                                "subLabel": "100001",
                                "details": {
                                    "keywords": [
                                        {
                                            "word": "xxx"
                                        }
                                    ],
                                    "libInfos": [
                                        {
                                            "type": 1,
                                            "entity": "xxx"
                                        }
                                    ],
                                    "anticheat": 
                                        {
                                            "hitType": 5
                                        },
                                    "hitInfos": [
                                        {
                                            "value": "xxx",
                                            "positions": [
                                                {
                                                    "fieldName": "title",
                                                    "startPos": 0,
                                                    "endPos": 1
                                                }
                                            ]
                                         }
                                    ]
                                }
                            }
                        ]
                    }
                ]
            }
        }
    

    响应

    响应结果

    客户接口接收到我们回调的结果后,需要返回应答信息,接口响应HTTP状态码为200,当回调处理异常时,应答的HTTP状态码应为500,或者4xx; 应答信息为json格式,字段定义如下:

    名称 类型 必填 描述
    code Number 应答code,易盾方解析code为200表示推送成功
    msg String 具体描述信息

    响应体示例

    {
        "code": 200,
        "msg": "接收成功"
    }
    
    Online Chat Tel:95163223