Updated on 2022-01-25 GMT+08:00

Querying Networks

Function

This API is used to query all networks accessible to the tenant submitting the request.

URI

GET /v2.0/networks

Example:

GET https://{Endpoint}/v2.0/networks?id={network_id}&status={network_status}&name={network_name}&admin_state_up=${admin_state_up}&tenant_id={tenant_id}&shared={is_shared}&provider:network_type={geneve}

Example of querying ports by page

GET https://{Endpoint}/v2.0/networks?limit=2&marker=0133cd73-34d4-4d4c-bf1f-e65b24603206&page_reverse=False

Table 1 describes the parameters.

Table 1 Parameter description

Name

Mandatory

Type

Description

id

No

String

Specifies that the network ID is used as the filtering condition.

name

No

String

Specifies that the network name is used as the filtering condition.

admin_state_up

No

Boolean

Specifies that the admin state is used as the filtering condition.

The value can be true or false.

provider:network_type

No

String

Specifies that the network type is used as the filtering condition.

shared

No

Boolean

Specifies that whether the network can be shared by multiple tenants is used as the filtering condition.

The value can be true or false.

status

No

String

Specifies that the network status is used as the filtering condition.

The value can be ACTIVE, BUILD, or DOWN.

router:external

No

Boolean

Specifies whether the network is an external network is used as the filtering condition.

The value can be true or false.

tenant_id

No

String

Specifies that the project ID is used as the filtering condition.

marker

No

String

Specifies the start resource ID of pagination query. If the parameter is left blank, only resources on the first page are queried.

limit

No

Integer

Specifies the number of records on each page.

The value ranges from 0 to intmax.

Request Message

None

Response Message

Table 2 Response parameter

Parameter

Type

Description

networks

Array of network objects

Specifies the network list. For details, see Table 3.

networks_links

Array of networks_link objects

Specifies the pagination information. For details, see Table 4.

Table 3 network object

Attribute

Type

Description

status

String

Specifies the network status. The value can be ACTIVE, BUILD, DOWN, or ERROR.

subnets

Array of strings

Specifies IDs of the subnets associated with this network. The IDs are in a list.

Only one subnet can be associated with each network.

name

String

Specifies the network name.

The name cannot be the same as the admin_external_net value.

router:external

Boolean

Specifies whether the network is an external network. This is an extended attribute.

admin_state_up

Boolean

Specifies the administrative status.

The value can only be true.

tenant_id

String

Specifies the project ID.

shared

Boolean

Specifies whether the firewall rule can be shared by different tenants.

id

String

Specifies the network ID.

This parameter is not mandatory when you query networks.

provider:network_type

String

Specifies the network type. Only the VXLAN and GENEVE networks are supported. This is an extended attribute.

Tenants can create only networks whose type is geneve.

availability_zone_hints

Array of strings

Specifies the availability zones available to this network. The current version does not support cross-availability-zone network scheduling.

availability_zones

Array of strings

Specifies the availability zone of this network.

port_security_enabled

Boolean

Specifies whether the security option is enabled for the port. If the option is not enabled, the security group and DHCP snooping settings of all VMs in the network do not take effect.

dns_domain

String

Specifies the default private network DNS domain address. The system automatically sets this parameter, and you are not allowed to configure or change the parameter value.

project_id

String

Specifies the project ID.

created_at

String

Specifies the time (UTC) when the network is created.

Format: yyyy-MM-ddTHH:mm:ss

updated_at

String

Specifies the time (UTC) when the network is updated.

Format: yyyy-MM-ddTHH:mm:ss

Table 4 networks_link object

Parameter

Type

Description

href

String

Specifies the API link.

rel

String

Specifies the relationship between the API link and the API version.

Example:

Example request

GET https://{Endpoint}/v2.0/networks?limit=1

Example response

{
    "networks": [
        {
            "id": "0133cd73-34d4-4d4c-bf1f-e65b24603206",
            "name": "3804f26c-7862-43b6-ad3c-48445f42de89",
            "status": "ACTIVE",
            "shared": false,
            "subnets": [
                "423796f5-e02f-476f-bf02-2b88c8ddac8b"
            ],
            "availability_zone_hints": [],
            "availability_zones": [
                "az2.dc2",
                "az5.dc5"
            ],
            "admin_state_up": true,
            "tenant_id": "bbfe8c41dd034a07bebd592bf03b4b0c",
            "project_id": "bbfe8c41dd034a07bebd592bf03b4b0c",
            "provider:network_type": "vxlan",
            "router:external": false,
            "port_security_enabled": true,
            "created_at": "2018-03-23T03:51:58",
            "updated_at": "2018-03-23T03:51:58"
        }
    ]
}

Status Code

See Status Codes.

Error Code

See Error Codes.