批量修改术语
按 id 批量修改项目术语库里的术语。单次最多 100 条,同步返回,逐条给出结果。
请求地址
POST {BASE_URL}/api/open/v1/terms/update鉴权 Header
和 创建翻译任务 完全一样。
请求参数(Body)
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
terms | array | 是 | 要修改的术语数组,最多 100 条 |
terms[] 条目字段
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
id | string | 是 | 术语行 id(从 /terms 响应里的 items[].id 拿到) |
content | string | 否 | 修改术语文本;传空串会被忽略 |
category | string | 否 | 修改分类 |
pic | string | 否 | 修改关联图片 |
translations | object | 否 | 要修改的语言 → 新值;未列出的语言不动 |
⚠️ 不支持修改
source_language—— 源语言是组合主键的一部分,若要改请先删除后用/terms/create重新上传。
响应
json
{
"success": true,
"code": 0,
"msg": "ok",
"trace_id": "...",
"data": {
"requested_count": 3,
"updated_count": 2,
"results": [
{ "id": "69e9b99c04e32e3f20afbbdb", "status": "updated", "modified": 1 },
{ "id": "invalid-id", "status": "invalid_id" },
{ "id": "a0000000000000000000000b", "status": "not_found" }
]
}
}results[].status 取值:
updated—— 命中并更新;modified=1表示确有字段发生变化,0表示传入的值和当前一致(未真正写入)not_found—— id 合法但在当前项目下找不到该行invalid_id—— id 格式不合法error—— 其它异常(具体原因在error字段)
错误码
| code | 说明 |
|---|---|
| 400 | terms 超过 100 / 形状错误 / 任何条目缺 id / translations 语言不在白名单 |
| 401 | 签名校验失败 / 时间戳过期 |
| 404 | appKey 无效 |
| 500 | 系统错误 |
示例
bash
APP_KEY="5685414646a54423c891d87194d87f3f"
APP_SECRET="<你的 App Secret>"
BASE_URL="https://api.loxily.com"
TIMESTAMP=$(date +%s)
BODY=$(cat <<'EOF'
{
"terms": [
{
"id": "69e9b99c04e32e3f20afbbdb",
"category": "Item",
"translations": { "en": "Combat Power", "zh-cn": "战斗力" }
},
{
"id": "69e9b99c04e32e3f20afbbda",
"content": "Rabbit Den Foreman",
"category": "Character"
}
]
}
EOF
)
SIGN=$(printf '%s' "${TIMESTAMP}${BODY}${APP_SECRET}" | md5)
curl -s -X POST "${BASE_URL}/api/open/v1/terms/update" \
-H "Content-Type: application/json" \
-H "X-Loxily-AppKey: ${APP_KEY}" \
-H "X-Loxily-Timestamp: ${TIMESTAMP}" \
-H "X-Loxily-Sign: ${SIGN}" \
--data "${BODY}"