更新语义条目

使用完整条目定义更新一个语义条目。

PUT https://moi.matrixorigin.cn/newmoi/semantic-models/{model_id}/entries/{entry_id}

调用前准备

查询语义条目读取原条目,取得条目 ID 和现有定义,避免遗漏现有字段。准备有目标工作区访问权限的个人访问令牌和目标工作区 ID。

下方示例使用:

  • $AI_STUDIO_API_KEY:实际个人访问令牌,通过 X-API-Key Header 传递。

  • $WORKSPACE_ID:目标工作区 ID,通过 X-Workspace-ID Header 传递。

  • $MODEL_ID:知识库 ID。

  • $ENTRY_ID:要更新的语义条目 ID。

路径参数

参数

类型

说明

model_id

integer

知识库 ID。

entry_id

integer

要更新的语义条目 ID。

请求体

更新使用完整替换语义。重新提交 kindkeyspec;需要保留关联表时,也重新提交 tables。已创建条目的 kind 不可更改。

字段

类型

是否必填

说明

kind

string

条目类型;必须与现有条目的类型一致,并决定 spec 的结构。

key

string

知识库内的稳定引用键。

tables

array[string]

关联表名称;需要保留时重新提交。

spec

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
  }
}

响应字段如下。

字段

类型

说明

code

string

成功时为 OK

msg

string

成功时为 OK

data.updated

boolean

true 表示更新已完成。

错误响应

{
  "code": "ErrNotFound",
  "msg": "resource not found",
  "data": null
}

常见 HTTP 错误

HTTP 状态码

错误代码

常见原因

建议操作

400

ErrParamInvalid

路径 ID 或完整条目定义无效,或请求中的 kind 与现有条目不一致。

重新读取条目后,使用原 kind 提交完整的 keytablesspec

401

ErrUnauthorized

API Key 无效或已失效。

检查 API Key。

403

ErrForbidden

调用者没有更新权限。

检查工作区和对象授权。

404

ErrNotFound

知识库或条目不存在,或当前调用者不可见。

重新确认 ID。

409

ErrConflict

条目键与现有定义冲突。

调整 key 或更新冲突条目。

500

ErrServer

服务未能更新条目。

保留脱敏后的响应信息后重试。

后续操作

查询语义条目读取更新后的最新条目定义。

最后更新于