在调用无界API前,必须获取签名,签名是用户的访问令牌,包含了用户的身份、权限等信息,每个API的请求头都需要加上该签名信息。鉴权主要分为以下两步:
1.获取appid
、publicSecretKey
和privateSecretKey
。
2.获取签名。
1
获取appid、公私钥
当您成功完成企业认证后,可进入
企业控制后台。平台将提供
appid
、
公钥 (publicSecretKey)
和
私钥 (privateSecretKey)
,为了您的财产和服务安全请您妥善保管。

2
获取签名
签名流程

1.创建签名
创建签名原文{"appId":"appId","timestamp":当前时间戳}
(字段按字母顺序排序),使用私钥进行SHA256withRSA
签名,再进行Base64
处理。
2.将签名加到请求头
请将签名添加到HTTP请求中的Authorization
标头中,字段值格式为
{"secretKeyVersion":"1","appId":"你的appid","sign":"签名sign", "original": "签名原文"}
3.发起API请求
API鉴权成功,Http状态码会返回200
点击查看测试公私钥
{
"appId": "wja0q53lmql4cm2yd1",
"publicSecretKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrmkXAGJJg8Sjm3QuWDRpZbDAnZzTSxO9cxJr0nKgHTQgW394GsrXeQbTfb/mHWWKl0qvFpMoX0URxj2fzu80P+CNTCiu8DU3slZmq8DHwpEsSGuXKKiU1evHalmsiOvab0C2AasHyqojG7w2P1q76QPLkkT0jH4ibbcq+xIv61QIDAQAB",
"privateSecretKey": "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAKuaRcAYkmDxKObdC5YNGllsMCdnNNLE71zEmvScqAdNCBbf3gaytd5BtN9v+YdZYqXSq8WkyhfRRHGPZ/O7zQ/4I1MKK7wNTeyVmarwMfCkSxIa5coqJTV68dqWayI69pvQLYBqwfKqiMbvDY/WrvpA8uSRPSMfiJttyr7Ei/rVAgMBAAECgYA+R2IzInfVmRCYIPc4gQ7kD2C2nD1OlUyt5Wi7iDNvWuSpsJva4Hci78PeJ7xvA+DKf9f5hiIWXMuzTzGSAsGcBvY0rgghpBKfX58pL3Ete/cny4UGpBwuVWAgQo+HG4XywIti9KfWJaX8gzEdT/q81N5tOWJeVGdfECs+JDNRwQJBANJG7xdU+9XMZWmxXlm4W2WTDVGPMqPPqfy3oWiAa0Q9K5su0pIEeGEcobxF9CMWpuej5Ontxo2uM7T9h3ShFXECQQDQ6oa19wLnF5UIIAsTwNtgL2UIksQ+cEwSK/+cabkCGbCLHpuXjOUuOQIWVj73PZAAyknugF53bBbaXk9UozmlAkAFsSHbsdM3UFcWa1SwfQsMTtS3dnbadE6XpqjZ2VAOAtHhW30bsr9Hcaz3GbWoFX7jGk6h/mu3fhWsOoimIY4hAkAkWMk7G1CL+BRbp4eF1kXUhCplxXMTEeKKPtFn2xTvAp0udxLG2SJ+Wji8viCST0mgeZFHR1ooGMwZDdNrfEJpAkEApG6GgYbzqYSbxon2n2QuUif8j6XyOKpveQbLhjcCCy3BOGV1+JSYZ+iuueGBbHXnBxlfCXC8RJdhwpJjQRoV8Q=="
}
Http状态码#
状态码 | 描述 |
---|
400 | 参数不合法 |
401 | 权限不足 |
403 | 签名鉴权不通过 |
405 | 请求方式错误 |
429 | 请求API限流 |
415 | 传参的资源类型错误,需正确设置content-type:application/json |
业务响应报文#
业务返回值http状态码都是200,业务异常在body下面的code上标识{
"code": "200",
"data": {
},
"message": "success",
"success": true
}
回调机制#
部分异步任务接口,在提交请求时,若填写notify_url字段,则在任务完成时,会将结果信息送往此地址。
具体回调内容,见各接口文档。 回调重试规则#
1.
支持5级重试时间: 5, 10, 30, 60, 120 (单位:秒),也就是分别会在5s、10s、30s...时进行回调重试
2.
当回调通知方返回success
时,我们会认为您已经成功处理回调,并终止重试。
回调验签#
1.
从 Headers 的 Authorization
字段中获取签名原文original和签名后的字符串sign
2.
使用公钥验签,方法同上
MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAJxv9d5dRpaW7sB16Rx6OtIw7AaWj4JUslPYM4JVEfZDWni1MjjU7LGnToYmUkgxlP2SACCVxLyHVm40kM1DGUcCAwEAAQ==
注:回调场景必须使用该公钥验签!
异常码#
异常码 | 描述 |
---|
20110001 | 画面描述含有敏感词 |
20110002 | 底图链接信息有误或不支持 |
20110003 | 参考图含有敏感信息 |
20110009 | 作品状态改变,请刷新后查看 |
20110010 | 积分余额不足 |
20110011 | 该作品不在排队中,无法撤销 |
20010018 | 由锁竞争导致的作画失败(需要重新发起) |
20010015 | 暂时无法支持的尺寸/分辨率 |
20110017 | 检测资源 |
20110018 | 图片识别异常 |
20110019 | 未检测到人脸或人脸太小 |
20110020 | 检测到多张人脸 |
20110021 | 检测到侧脸 |
20110024 | 无可用模版 |
20110025 | 图片打标失败 |
20110026 | 排队时间超出上限 |