Search Asset Tree¶
搜索符合条件的资产树。
如果你在使用 API 批量更新相关资产树信息后调用当前 API,建议两次调用间隔 2 秒左右,以免获取到未更新数据。
请求格式¶
POST https://{apigw-address}/asset-tree-service/v2.1/asset-trees?action=search
请求参数(URI)¶
名称 |
位置(Path/Query) |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|---|
orgId |
Query |
必需 |
String |
资产所属的组织 ID。如何获取 orgId 信息>> |
请求参数(body)¶
备注
可使用 expression
或 filter
进行搜索,但不能同时使用。EnOS Cloud 仅支持 expression
进行搜索,EnOS Edge 则支持 expression
或 filter
.
名称 |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|
expression |
可选 |
String |
查询表达式,目前查询的字段和对应的运算符清单如下。
不能将其与 |
filter |
可选 |
Filter 结构体 |
资产树需要满足的条件。支持对 tags 的搜索。缺省则返回所有的资产树,不能将其与 注:EnOS Cloud 不支持该参数。 |
pagination |
可选 |
Pagination 请求结构体 |
用于在接口请求中描述分页要求。如未指定,默认每页 100 条。每页最大记录数为 1000 条,但为获得最佳性能,建议每页不超过 50 条。不支持使用 |
projection |
可选 |
Projection 结构体 |
指定对返回结果的裁剪。对于符合条件的搜索仅返回符合条件的字段,不设置则默认返回全部字段。Projection 参数如何对结果集做裁剪>> |
Filter 结构体 ¶
名称 |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|
tags |
可选 |
Map (Key 和 Value 为 String) |
用户自定义标签。标签的作用与表示方法>> |
响应参数¶
名称 |
数据类型 |
描述 |
---|---|---|
data |
AssetTree 结构体数组 |
基于 assetId 的资产树信息。有关 AssetTree 结构体的定义,参见下表。 |
名称 |
数据类型 |
描述 |
---|---|---|
treeId |
String |
资产树 ID |
name |
StringI18n |
支持国际化的资产树名称。国际化名称结构体>> |
tags |
Tag 结构体 |
用户自定义的一组资产树标签。 |
asset |
Asset 结构体 |
资产树的根资产。其结构参见 Asset 结构体。 |
示例¶
请求示例¶
url: https://{apigw-address}/asset-tree-service/v2.1/asset-trees?action=search&orgId=yourOrgId
method: POST
requestBody:
{
"expression":"tags.k1 ='v1' ",
"pagination": {
"pageNo": 1,
"pageSize": 10
},
"projection": ["asset"]
}
返回示例¶
{
"code":0,
"msg":"OK",
"requestId":"82248518-6da4-49d2-8d07-cf7a0ff55b60",
"data":[
{
"treeId":"yourTreeId",
"tags":{
},
"asset":{
"modelId":"yourModelId",
"assetId":"yourAssetId",
"timezone":"+08:00",
"name":{
"i18nValue":{
"en_US":"zmTree604111zzz"
},
"defaultValue":"zmTree604"
},
"description":"",
"attributes":{
},
"inValid":false,
"label":"1",
"modelIdPath":"/NULLMODEL",
"tags":{
}
}
}
]
}
SDK 示例¶
你可以在 Github 上获取资产树服务 API 的 SDK 示例: