Dimension Value TopN Query Interface
Updated at:2025-11-03
API description
This API retrieves the TopN dimension values for a specified metric under certain dimensions associated with a cloud product instance.
Request parameters
| Name | Types | Description | Required or not | Parameter location |
|---|---|---|---|---|
| userId | String | User ID | Yes | Body |
| scope | String | Cloud product identifier. For values, refer to [Cloud Product Identifier List](BCM/Cloud Product Monitor List/Cloud Product Monitor Object Type List.md) | Yes | Body |
| region | String | Region identifier. For values, refer to [Region List](BCM/API Reference/Service domain.md) | Yes | Body |
| metricName | String | Monitor Metric | Yes | Body |
| statistics | String | Statistic method type. Optional values: average, maximum, minimum, sum, sampleCount. | Yes | Body |
| dimensions | Map<String, String> | Instance dimensions and metric dimensions, instance dimensions: Instance ID or parent instance ID (required); metric dimensions: Dimensions carried by the monitoring metric (optional) | Yes | Body |
| labels | Set<String> | Metric dimensions to be sorted | Yes | Body |
| startTime | String | Monitor data start time, refer to [Date and Time](BCM/API Reference/General Description.md), in UTC format | Yes | Body |
| endTime | String | Monitor data end time, refer to [Date and Time](BCM/API Reference/General Description.md), expressed in UTC date | Yes | Body |
| order | String | Sorting method, optional values top (descending), bottom (ascending), default top | No | Body |
| topNum | int | Number of topNum items retained after sorting, default: 10, maximum: 1000 | No | Body |
Parameter explanation
- For concepts like Scope, Metric, Statistic, and Dimension, refer to [Core Concepts](BCM/Product Description/Core concepts.md).
Response parameters
| Name | Types | Description |
|---|---|---|
| requestId | String | Request identifier ID |
| topDatas | List<TopData> | Sorted list of dimension values |
TopData
| Name | Types | Description |
|---|---|---|
| order | int | Ranking |
| dimensions | List<Dimension> | Dimension Information |
Dimension
| Name | Types | Description |
|---|---|---|
| name | String | Dimension name |
| value | String | Dimension value |
Request example
JSON
1// config of client
2String endpoint = "http://bcm.bj.baidubce.com";
3String userId = "a0d04d7c***************7b6752ce4";
4String ak = "ALTAK***************3hVCYG";
5String sk = "b2c53*******************f9993ac1";
6// create a bcm client
7BcmClientConfiguration config = new BcmClientConfiguration();
8config.setCredentials(new DefaultBceCredentials(ak, sk));
9config.setEndpoint(endpoint);
10BcmClient bcmClient = new BcmClient(config);
11TsdbDimensionTopQuery request = new TsdbDimensionTopQuery();
12request.setUserId(userId);
13request.setScope("BCE_NAT");
14request.setRegion("bj");
15request.setMetricName("ConnNumber");
16request.setStatistics("average");
17request.setStartTime("2024-04-27T07:10:01Z");
18request.setEndTime("2024-04-27T07:20:01Z");
19Map<String, String> dimensionMap = new HashMap<>();
20dimensionMap.put("NatId", "nat-bm********f8");
21request.setDimensions(dimensionMap);
22Set<String> labels = new HashSet<>();
23labels.add("FixIp");
24request.setLabels(labels);
25request.setTopNum(2);
26TsdbDimensionTopResult result = bcmClient.getMetricDimensionTop(request);
Response example
JSON
1{
2 "requestId": "34faaba47566446c9ba32cd1d2bf082b",
3 "topDatas": [
4 {
5 "order": 1,
6 "dimensions": [
7 {
8 "name": "FixIp",
9 "value": "192.168.0.16"
10 }
11 ]
12 },
13 {
14 "order": 2,
15 "dimensions": [
16 {
17 "name": "FixIp",
18 "value": "192.168.0.15"
19 }
20 ]
21 }
22 ]
23}
