图片标注回调 API
更新时间:
接口说明
图片人工标注完成后,平台会将图片原始审核数据和人工修改结果推送至客户配置的回调 URL。
在“项目查看 > 服务配置 > 标注 API 回调”中配置回调 URL。配置完成后,人工标注结果默认进行回调。人工标注支持在“项目查看 > 数据查询”中对单条或多条数据进行修改。
请求规范
- 请求 URL:客户在“标注 API 回调”中配置的回调 URL
- 请求方法:
POST
- 请求体格式:
application/json;charset=UTF-8
请求 Header
Header
值
是否必需
描述
Content-Type
application/json;charset=UTF-8
必需
请求体类型
Accept
application/json;charset=UTF-8
必需
接受的返回类型
X-AppId
必需
项目的唯一标识,即“控制台 > 服务配置”中的项目编号
X-TimeStamp
必需
请求的 UTC 时间戳,按 W3C 标准格式化,例如 2010-01-31T23:59:59Z
Authorization
必需
签名值,计算方式见 Authorization 签名
请求参数
请求体为 JSON 对象。
参数
是否必需
类型
描述
appId
必需
String
项目编号
imageData
必需
Array
图片的原始审核数据
markData
必需
Object
人工修改后的标注数据
请求示例
{
"appId": "81000001",
"imageData": [
{
"taskId": "us_b0db751223584cf5af9d5c469bb9e4d1_1694159664104",
"strategyId": "DEFAULT",
"url": "https://example.com/image.jpg",
"displayUrl": "https://example.com/image.jpg",
"code": 0,
"result": 0,
"imageCheckType": [],
"tags": [],
"subTags": [],
"userId": null,
"md5": "CC6300BC04E46883944D0C38BCDA6A02"
}
],
"markData": {
"markResult": "2",
"markTag": [
"130"
]
}
}
Authorization 签名
通过 HTTP 请求 Header 发送签名:
Authorization: ****
签名计算步骤如下:
-
将请求体 JSON 字符串按 UTF-8 编码并计算 SHA-256,再转换为十六进制字符串。结果不是 Base64 字符串。
CanonicalizedQueryString = hex(sha256(jsonBody))
-
按以下格式构造待签名字符串。各部分之间使用一个 ASCII 换行符 \n:
StringToSign = HTTPMethod + "\n"
+ CallbackUrl + "\n"
+ CanonicalizedQueryString + "\n"
+ "X-AppId:" + SAME_APPID_IN_HEADER + "\n"
+ "X-TimeStamp:" + SAME_TIMESTAMP_IN_HEADER
其中:
HTTPMethod 为 POST。
CallbackUrl 为客户在“标注 API 回调”中配置的回调 URL。
SAME_APPID_IN_HEADER 和 SAME_TIMESTAMP_IN_HEADER 必须分别与请求 Header 中的 X-AppId 和 X-TimeStamp 完全一致。
-
以 StringToSign 为待签名字符串、secretKey 为密钥,使用 HMAC-SHA256 计算签名。
-
将计算结果转换为 Base64 字符串。
-
将 Base64 字符串写入请求 Header 的 Authorization 字段。
接口说明
图片人工标注完成后,平台会将图片原始审核数据和人工修改结果推送至客户配置的回调 URL。
在“项目查看 > 服务配置 > 标注 API 回调”中配置回调 URL。配置完成后,人工标注结果默认进行回调。人工标注支持在“项目查看 > 数据查询”中对单条或多条数据进行修改。
请求规范
- 请求 URL:客户在“标注 API 回调”中配置的回调 URL
- 请求方法:
POST - 请求体格式:
application/json;charset=UTF-8
请求 Header
| Header | 值 | 是否必需 | 描述 |
|---|---|---|---|
| Content-Type | application/json;charset=UTF-8 |
必需 | 请求体类型 |
| Accept | application/json;charset=UTF-8 |
必需 | 接受的返回类型 |
| X-AppId | 必需 | 项目的唯一标识,即“控制台 > 服务配置”中的项目编号 | |
| X-TimeStamp | 必需 | 请求的 UTC 时间戳,按 W3C 标准格式化,例如 2010-01-31T23:59:59Z |
|
| Authorization | 必需 | 签名值,计算方式见 Authorization 签名 |
请求参数
请求体为 JSON 对象。
| 参数 | 是否必需 | 类型 | 描述 |
|---|---|---|---|
| appId | 必需 | String | 项目编号 |
| imageData | 必需 | Array | 图片的原始审核数据 |
| markData | 必需 | Object | 人工修改后的标注数据 |
请求示例
{
"appId": "81000001",
"imageData": [
{
"taskId": "us_b0db751223584cf5af9d5c469bb9e4d1_1694159664104",
"strategyId": "DEFAULT",
"url": "https://example.com/image.jpg",
"displayUrl": "https://example.com/image.jpg",
"code": 0,
"result": 0,
"imageCheckType": [],
"tags": [],
"subTags": [],
"userId": null,
"md5": "CC6300BC04E46883944D0C38BCDA6A02"
}
],
"markData": {
"markResult": "2",
"markTag": [
"130"
]
}
}
Authorization 签名
通过 HTTP 请求 Header 发送签名:
Authorization: ****
签名计算步骤如下:
-
将请求体 JSON 字符串按 UTF-8 编码并计算 SHA-256,再转换为十六进制字符串。结果不是 Base64 字符串。
CanonicalizedQueryString = hex(sha256(jsonBody)) -
按以下格式构造待签名字符串。各部分之间使用一个 ASCII 换行符
\n:StringToSign = HTTPMethod + "\n" + CallbackUrl + "\n" + CanonicalizedQueryString + "\n" + "X-AppId:" + SAME_APPID_IN_HEADER + "\n" + "X-TimeStamp:" + SAME_TIMESTAMP_IN_HEADER其中:
HTTPMethod为POST。CallbackUrl为客户在“标注 API 回调”中配置的回调 URL。SAME_APPID_IN_HEADER和SAME_TIMESTAMP_IN_HEADER必须分别与请求 Header 中的X-AppId和X-TimeStamp完全一致。
-
以
StringToSign为待签名字符串、secretKey为密钥,使用 HMAC-SHA256 计算签名。 -
将计算结果转换为 Base64 字符串。
-
将 Base64 字符串写入请求 Header 的
Authorization字段。