更新语义条目¶
使用完整条目定义更新一个语义条目。
PUT https://moi.matrixorigin.cn/newmoi/semantic-models/{model_id}/entries/{entry_id}
调用前准备¶
先查询语义条目读取原条目,取得条目 ID 和现有定义,避免遗漏现有字段。准备有目标工作区访问权限的个人访问令牌和目标工作区 ID。
下方示例使用:
$AI_STUDIO_API_KEY:实际个人访问令牌,通过X-API-KeyHeader 传递。$WORKSPACE_ID:目标工作区 ID,通过X-Workspace-IDHeader 传递。$MODEL_ID:知识库 ID。$ENTRY_ID:要更新的语义条目 ID。
路径参数¶
参数 |
类型 |
说明 |
|---|---|---|
|
integer |
知识库 ID。 |
|
integer |
要更新的语义条目 ID。 |
请求体¶
更新使用完整替换语义。重新提交 kind、key 和 spec;需要保留关联表时,也重新提交 tables。已创建条目的 kind 不可更改。
字段 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
条目类型;必须与现有条目的类型一致,并决定 |
|
string |
是 |
知识库内的稳定引用键。 |
|
array[string] |
否 |
关联表名称;需要保留时重新提交。 |
|
object |
是 |
类型专属配置对象;完整字段和约束见创建语义条目。 |
请求示例¶
curl -X PUT "https://moi.matrixorigin.cn/newmoi/semantic-models/$MODEL_ID/entries/$ENTRY_ID" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"kind": "metric",
"key": "total_rows",
"spec": {
"expr": "COUNT(*)"
}
}'
成功响应¶
成功时返回 200。接口返回确认标记;如需读取最新条目定义,请重新查询条目列表。
{
"code": "OK",
"msg": "OK",
"data": {
"updated": true
}
}
响应字段如下。
字段 |
类型 |
说明 |
|---|---|---|
|
string |
成功时为 |
|
string |
成功时为 |
|
boolean |
|
错误响应¶
{
"code": "ErrNotFound",
"msg": "resource not found",
"data": null
}
常见 HTTP 错误¶
HTTP 状态码 |
错误代码 |
常见原因 |
建议操作 |
|---|---|---|---|
|
|
路径 ID 或完整条目定义无效,或请求中的 |
重新读取条目后,使用原 |
|
|
API Key 无效或已失效。 |
检查 API Key。 |
|
|
调用者没有更新权限。 |
检查工作区和对象授权。 |
|
|
知识库或条目不存在,或当前调用者不可见。 |
重新确认 ID。 |
|
|
条目键与现有定义冲突。 |
调整 |
|
|
服务未能更新条目。 |
保留脱敏后的响应信息后重试。 |
后续操作¶
查询语义条目读取更新后的最新条目定义。