Search Topology Path


查询拓扑结构从根到最末的节点路径,并返回路径中所有节点的信息。支持场站内和场站外拓扑结构。

操作权限


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

需授权的策略 所需操作权限
设备管理 Read
资产树管理员 Read

约束条件


当前 OU 已绑定 OU 模板,且模板内已配置拓扑规则。

请求格式


POST https://{apigw-address}/amc/v1.0/topology?action=searchTopologyPath

请求参数(URI)


名称 位置(Path/Query) 必需/可选 数据类型 描述
orgId Query 必需 String 拓扑结构所属的组织 ID。获取 orgId 信息>>
topologyId Query 必需 String 拓扑结构 ID

请求参数(Body)


名称 必需/可选 数据类型 描述
pagination 可选 pagination 请求结构体 分页请求。每页最大记录数为 200 条。如未指定,默认分页大小是 10。仅支持指定 pageNopageSize 参数。查询结果将新创建的场站靠前排列。

响应参数


名称 数据类型 描述
data TopologyPath 结构体 拓扑树上从根到最末的节点路径与节点信息。
pagination EnosPageDataV2 结构体 当前节点总数量等信息。

TopologyPath 结构体


名称 数据类型 描述
assetPaths List<List<String>> 拓扑树上的所有节点路径,以及节点的资产 ID。
assets Map(Key 为 String, Value 为 Asset 结构体) 拓扑树挂载的资产信息。 Key 为资产 ID, Value 为对应的资产信息。

EnosPageDataV2 结构体


名称 数据类型 描述
pageNo Integer 请求页数。
pageSize Integer 每页记录数。
totalSize Integer 总记录数。

Asset 结构体


名称 数据类型 描述
assetId String 节点所挂载的资产 ID。
name StringI18n 节点名称(与挂载资产的名称一致)。
modelId String 对象所属的模型 ID。
timezone String 对象所在时区。
description String 对象描述。
attributes Map(Key 为 String,Value 为对象)
对象属性。
Key 为属性 ID,Value 为属性值。
tags Map(Key 为 String,Value 为 String)
对象的标签。
Key 为标签键,Value 为标签值。
typeInfo Metadata 结构体 对象所属类型。

Metadata 结构体

名称 数据类型 描述
identifier String 分组类型、设备类型或场站类型的标识符。
name StringI18n 分组类型、设备类型或场站类型的名称。
type String 对象分类:NODE、DEVICE、SITE。

错误码


代码 错误信息 描述
99500 Internal server error 服务器内部错误,请联系 EnOS 技术支持团队。
99400 Invalid pagination parameters pagination 参数无效,请检查请求参数。
99400 pageSize value cannot exceed 200 paginationpageSize 值不能大于 200。

示例

请求示例

URL: https://{apigw-address}/amc/v1.0/topology?action=searchTopologyPath&orgId=yourOrgId&topologyId=yourTopologyId

method: POST

requestBody:
{
    "pagination":{
        "pageNo":1,
        "pageSize":1
    }
}

返回示例

{
    "code":0,
    "msg":"OK",
    "requestId":"f1b464f9-d014-4b1a-95a8-a9747c968570",
    "data":{
        "assetPaths":[
            [
                "HnfxM8Rc",
                "GUPUw1bM"
            ],
            [
                "HnfxM8Rc",
                "0Wyf0SwT"
            ]
        ],
        "assets":{
            "0Wyf0SwT":{
                "assetId":"0Wyf0SwT",
                "name":{
                    "defaultValue":"1",
                    "i18nValue":{

                    }
                },
                "modelId":"EnOS_Solar_OMT_Generic",
                "timezone":"+08:00",
                "description":null,
                "attributes":{
                    "connectMode":"R",
                    "joinDate":"2021-03-09",
                    "scale":1,
                    "slope":1
                },
                "tags":{
                    "amc_assetGroup_HnfxM8Rc":"HnfxM8Rc",
                    "AMC_MOUNTED_hxaSSfM5":"hxaSSfM5",
                    "amc_modelNo":"Others6",
                    "amc_source":"amc",
                    "amc_manufacturer":"ID099",
                    "amc_deviceType":"OtherMeter",
                    "amc_classType":"Device",
                    "AMC_MOUNTED_LyQOvJa3":"LyQOvJa3"
                },
                "typeInfo":{
                    "identifier":"OtherMeter",
                    "name":{
                        "defaultValue":"Other Meter",
                        "i18nValue":{
                            "en_US":"Other Meter",
                            "zh_CN":"其他表"
                        }
                    },
                    "type":"Device"
                }
            },
            "GUPUw1bM":{
                "assetId":"GUPUw1bM",
                "name":{
                    "defaultValue":"1",
                    "i18nValue":{

                    }
                },
                "modelId":"EnOS_Solar_WST_Generic",
                "timezone":"+08:00",
                "description":"",
                "attributes":{
                    "calcMode":"A"
                },
                "tags":{
                    "amc_assetGroup_HnfxM8Rc":"HnfxM8Rc",
                    "AMC_MOUNTED_hxaSSfM5":"hxaSSfM5",
                    "amc_modelNo":"Others7",
                    "amc_source":"amc",
                    "amc_manufacturer":"ID099",
                    "amc_deviceType":"WeatherStation",
                    "amc_classType":"Device",
                    "AMC_MOUNTED_LyQOvJa3":"LyQOvJa3"
                },
                "typeInfo":{
                    "identifier":"WeatherStation",
                    "name":{
                        "defaultValue":"Weather Station",
                        "i18nValue":{
                            "en_US":"Weather Station",
                            "zh_CN":"气象站"
                        }
                    },
                    "type":"Device"
                }
            },
            "HnfxM8Rc":{
                "assetId":"HnfxM8Rc",
                "name":{
                    "defaultValue":"123",
                    "i18nValue":{

                    }
                },
                "modelId":"EnOS_Solar_Site",
                "timezone":"+08:00",
                "description":null,
                "attributes":{
                    "altitude":123,
                    "latitude":123,
                    "combinerBoxAmount":1,
                    "capacity":123,
                    "omtAmount":1,
                    "bxtfAmount":1,
                    "emtAmount":1,
                    "wstAmount":1,
                    "acCbxAmount":2,
                    "equipmentAmount":1,
                    "gmtAmount":1,
                    "strInvAmount":0,
                    "longitude":123
                },
                "tags":{
                    "amc_source":"amc",
                    "amc_deviceType":"SolarSite",
                    "amc_classType":"Site"
                },
                "typeInfo":{
                    "identifier":"SolarSite",
                    "name":{
                        "defaultValue":"Solar Site",
                        "i18nValue":{
                            "en_US":"Solar Site",
                            "zh_CN":"光伏场站"
                        }
                    },
                    "type":"Site"
                }
            }
        }
    },
    "pagination":{
        "sortedBy":null,
        "pageNo":1,
        "pageSize":2,
        "totalSize":3
    }
}