Update Logical Asset


更新全部或部分逻辑资产的信息。

操作权限


使用此 API 前,确保服务账号已被授予包含下列服务和操作权限的策略。有关授权服务账号的更多信息,参见 管理服务账号

需授权的服务 操作权限
资产树 Full Access

约束条件

  • 需要更新的逻辑资产必须存在。
  • 需要更新的目标字段必须存在。

请求格式

POST https://{apigw-address}/asset-service/v2.1/logical-assets?action=update

请求参数(URI)

名称 位置(Path/Query) 必需/可选 数据类型 描述
orgId Query 必需 String 资产所属的组织 ID。如何获取 orgId 信息>>
isPatchUpdate Query 可选 Boolean

是否只更新一部分信息。

  • true (默认):表示只更新一部分指定的字段。
  • false:表示更新所有字段。如果有些字段没有指定更新的值,其值将被置空。当 isPatchUpdatefalse 时,必需指定 timezonename 的值。

请求参数(Body)

名称 必需/可选 数据类型 描述
assetUpdateVo 必需 AssetUpdateVo 结构体

用于资产更新。

  • isPatchUpdatetrue 时,则只更新 asset 结构体中声明的需要更新的字段;未被声明的参数,其值会被保留。
  • isPatchUpdatefalse 时,更新 asset 声明的所有参数的值。未被声明的参数,其值将被置空。
asset 的结构见 AssetUpdateVo 结构体>>

AssetUpdateVo 结构体

名称 必需/可选 数据类型 描述
assetId 必需 String 资产 ID。如何获取 Asset ID 信息>>
name 可选 StringI18n 该资产的各语言名称。结构请见 国际化名称结构体>>
description 可选 String 资产描述
attributes
  • 如果 isPatchUpdatefalseattributes 必填,且必须包括所有模型功能定义中已规定的属性,并为他们赋值。
  • 如果 isPatchUpdatetrueattributes 选填,其对应的模型功能定义中的属性也都是选填的,属性的值也可以留空。
Map(Key 为 String,Value 的数据类型由模型功能定义决定) 资产所属的模型属性,Key 为属性 ID。更多信息,参见 attributes 的表示方法>>
timezone 可选 String 时区。时区表示方法>>
tags 可选 Map (Key 和 Value 为 String) 用户自定义标签。标签的作用与表示方法>>

错误码

代码 错误信息 描述
17404 Logical asset does not exist assetId 未找到或不存在。
17958 Asset validation failed 根据模型校验资产失败。

示例

请求示例

url: https://{apigw-address}/asset-service/v2.1/logical-asset?action=update&orgId=yourOrgId&isPatchUpdate=true
method: POST
requestBody:
{
    "assetUpdateVo":{
        "assetId":"yourAssetId",
        "name":{
            "defaultValue":"instanceName",
            "i18nValue":{
                "en_US":"English name ",
                "zh_CN":"Chinese name"
            }
        },
        "description":"description",
        "attributes":{
         "color": "blue",
         "number": 135
        },
        "timezone":"+08:00",
        "tags":{
            "year":"2000",
            "author":"authorName"
        }
    }
}

返回示例

{
 "code": 0,
 "msg": "OK",
 "requestId": "fa11232e-7e45-4176-a382-963c1240a27f"
}

SDK 示例


你可以在 Github 上获取资产服务 API 的 SDK 示例: