# DescribeSubnets

## 1. 接口描述

本接口(DescribeSubnets)用于查询一台或多台指定子网的信息。用户可以根据Subnet ID、 区域、Subnet 名称等信息来搜索Subnet信息。

## 2. 请求参数

以下请求参数列表仅列出了接口中需要的请求参数

| 参数名称         | 必选 | 类型              | 描述                                                                                        |
| ------------ | -- | --------------- | ----------------------------------------------------------------------------------------- |
| subnetIds    | 否  | Array of String | <p>子网 ID。</p><p>取值可以由多个Subnet ID组成一个。最多支持100个ID查询。</p>                                    |
| cidrBlock    | 否  | String          | <p>子网的CIDR。<br>支持模糊查询。</p>                                                                |
| zoneId       | 否  | String          | 子网所属的可用区ID。                                                                               |
| subnetStatus | 否  | String          | [Subnet的状态。](https://docs.console.zenlayer.com/api/cn/compute/datastructure#subnetstatus) |
| subnetName   | 否  | String          | <p>子网的名称。<br>支持模糊查询。</p>                                                                  |
| pageSize     | 否  | Integer         | <p>返回的分页大小。</p><p>默认为20，最大为1000。</p>                                                      |
| pageNum      | 否  | Integer         | <p>返回的分页数。</p><p>默认为1。</p>                                                                |

## 3. 响应结果

| 参数名称       | 类型                                                                                               | 描述                                                       |
| ---------- | ------------------------------------------------------------------------------------------------ | -------------------------------------------------------- |
| requestId  | String                                                                                           | <p>唯一请求 ID。</p><p>每次请求都会返回。定位问题时需要提供该次请求的 RequestId。</p> |
| dataSet    | Array of [SubnetInfo](https://docs.console.zenlayer.com/api/cn/compute/datastructure#subnetinfo) | SubnetInfo结果集。                                           |
| totalCount | Integer                                                                                          | 符合条件的数据总数。                                               |

## 4. 代码示例

{% tabs %}
{% tab title="示例" %}
**1. 分页查询CidrBlock为“10.0.0.0/24”的Subnet列表**

```json
POST /api/v2/vm HTTP/1.1
Host: console.zenlayer.com
Content-Type: application/json
X-ZC-Action: DescribeSubnets
<Common Request Params>

Request:
{
  "cidrBlock": "10.0.0.0/24",
  "pageSize": 10,
  "pageNum": 1
}

Response:
{
    "requestId": "T1EB061B4-E20D-4CE5-8EF7-63073E1AB3E1",
    "response": {
        "requestId": "T1EB061B4-E20D-4CE5-8EF7-63073E1AB3E1",
        "dataSet": [
            {
                "subnetId": "914782535395847474",
                "instanceIdList": [
                    "instance001",
                    "instance002"
                ],
                "totalIpCount": 253,
                "createTime": "2023-06-16T03:49:36Z",
                "cidrBlock": "10.0.0.0/24",
                "cidrBlockList": [
                    "10.0.0.0/24"
                ],
                "zoneId": "SIN-Z",
                "subnetStatus": "Available",
                "subnetDescription": "Subnet SIN-Default",
                "usageIpCount": 2,
                "subnetName": "Subnet SIN-Default",
                "isDefault": true
            }
        ],
        "totalCount": 1
    }
}
```

{% endtab %}
{% endtabs %}

## 5. 开发者工具

Zenlayer Cloud API 2.0 提供了配套的[开发工具集（SDK）](https://docs.console.zenlayer.com/api/cn/api-introduction/toolkit)，未来会陆续支持更多开发语言，方便快速接入和使用Zenlayer的产品和服务。

## 6. 错误码

下面包含业务逻辑中遇到的错误码，其他错误码见[公共错误码](https://docs.console.zenlayer.com/api/cn/api-introduction/instruction/commonerrorcode)

| HTTP状态码 | 错误码                      | 说明         |
| ------- | ------------------------ | ---------- |
| 500     | DESCRIBE\_SUBNET\_FAILED | 查询异常       |
| 500     | UNKNOW\_SUBNET\_STATUS   | Subnet状态异常 |
