Update Asset¶
Update asset information.
Operation Permissions¶
Required Authorization |
Required Operation Permission |
---|---|
Asset Tree Management |
Full Access |
Prerequisite¶
The asset to be updated must exist.
The fields to be updated must exist.
Request Format¶
POST https://{apigw-address}/asset-service/v2.1/assets?action=update
Request Parameters (URI)¶
Name |
Location (Path/Query) |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|---|
orgId |
Query |
Mandatory |
String |
The organization ID which the asset belongs to. How to get orgId>> |
(deprecated) isPatchUpdate |
Query |
Optional |
Boolean |
This parameter is deprecated. It is recommended to use
|
updateMode |
Query |
Optional |
String |
The update method. If both
|
Request Parameters (Body)¶
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
asset |
Mandatory |
AssetUpdateVo Struct |
The details for updating the asset. For more information, see AssetUpdateVo Struct. |
AssetUpdateVo Struct ¶
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
assetId |
Mandatory |
String |
The asset ID. How to get assetId>> |
name |
Optional |
StringI18n |
Specify the asset’s name in its respective locale’s language. For more details on the structure and locales supported, see Internationalized name struct. |
description |
Optional |
String |
The asset description. |
attributes |
|
Map (Key is of String type, and Value depends on the attribute defined in the model) |
Attributes of the model which the asset belongs to. Key is the attribute ID. For more information, see attributes representation. |
timezone |
Optional |
String |
For details, see Timezone representation. |
tags |
Optional |
Map (Key and Value are of String type) |
User-defined tags. For more information, see How to use tag. |
tagKeys |
Only applicable when |
String Array |
The list of tags under the asset to be deleted, defined by their tag keys. |
Error Codes¶
Code |
Message |
Description |
---|---|---|
12404 |
Asset is not existent |
The |
12958 |
Asset validate failed |
Update failed due to asset attribute verification failure. |
Samples¶
Request Sample¶
url: https://{apigw-address}/asset-service/v2.1/assets?action=update&orgId=yourOrgId&updateMode=tagDelete
method: POST
requestBody:
{
"asset": {
"assetId": "yourAssetId",
"name": {
"defaultValue": "instanceName",
"i18nValue": {
"en_US": "English name ",
"zh_CN": "Chinese name"
}
},
"description": "description",
"attributes": {
"number": 135
},
"timezone": "+08:00",
"tags": {
"year": "2000",
"author": "authorName"
},
"tagKeys": ["book1","book2"]
}
}
Return Sample¶
{
"code": 0,
"msg": "OK",
"requestId": "fa11232e-7e45-4176-a382-963c1240a27f"
}
Java SDK Sample¶
import com.envision.apim.poseidon.config.PConfig;
import com.envision.apim.poseidon.core.Poseidon;
import com.envisioniot.enos.asset_service.v2_1.UpdateAssetRequest;
import com.envisioniot.enos.asset_service.v2_1.UpdateAssetResponse;
import com.envisioniot.enos.asset_service.vo.AssetUpdateVo;
import java.util.HashMap;
import java.util.Map;
public class UpdateAsset {
private static String accessKey = "yourAccessKey";
private static String secretKey = "yourSecretKey";
private static String orgId = "yourOrgId";
private static String serverUrl = "https://{apigw-address}";
//Make sure that an asset with this asset ID and the fields to be updated exist.
public static void main(String[] args) {
UpdateAssetRequest request = new UpdateAssetRequest();
request.setOrgId(orgId);
request.setUpdateMode(UpdateAssetRequest.UPDATE_MODE_TAG_DELETE);
AssetUpdateVo asset = new AssetUpdateVo();
Map<String,String> tags = new HashMap<>();
tags.put("book1","book2");
asset.setTags(tags);
asset.setAssetId("yourAssetId");
request.setAsset(asset);
UpdateAssetResponse response = Poseidon.config(PConfig.init().appKey(accessKey).appSecret(secretKey).debug())
.url(serverUrl)
.getResponse(request, request.getResponseClass());
System.out.println(response);
}
}