Networking API v2.0

API versions

Lists information for all Networking API versions.

GET
/v2.0
Show API v2 details

Shows details for Networking API v2.0.

Normal response codes: 200 Error response codes:203,

Request

Response Parameters

Name In Type Description
location body string Full URL to a service or server.

Response Example

{
    "resources": [
        {
            "links": [
                {
                    "href": "http://23.253.228.211:9696/v2.0/subnets",
                    "rel": "self"
                }
            ],
            "name": "subnet",
            "collection": "subnets"
        },
        {
            "links": [
                {
                    "href": "http://23.253.228.211:9696/v2.0/networks",
                    "rel": "self"
                }
            ],
            "name": "network",
            "collection": "networks"
        },
        {
            "links": [
                {
                    "href": "http://23.253.228.211:9696/v2.0/ports",
                    "rel": "self"
                }
            ],
            "name": "port",
            "collection": "ports"
        }
    ]
}
GET
/
List API versions

Lists information about all Networking API versions.

Normal response codes: 200 Error response codes:300,

Request

Response Example

{
    "versions": [
        {
            "status": "CURRENT",
            "id": "v2.0",
            "links": [
                {
                    "href": "http://23.253.228.211:9696/v2.0",
                    "rel": "self"
                }
            ]
        }
    ]
}

Networks

Lists, shows details for, creates, updates, and deletes networks.

GET
/v2.0/networks/{network_id}
Show network details

Shows details for a network.

You can control which response parameters are returned by using the fields query parameter. For information, see Filtering and column selection.

The response might show extension response parameters. For information, see Networks multiple provider extension (networks).

Normal response codes: 200 Error response codes:404,401,

Request

Name In Type Description
network_id body string The UUID of the network.

Response Parameters

Name In Type Description
status body string The network status.
router:external (Optional) body boolean Indicates whether this network is externally accessible.
availability_zone_hints body array The availability zone candidate for the network.
availability_zones body array The availability zone for the network.
name (Optional) body string The network name.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
updated_at body string Time at which port has been updated.
changed_at body string Time at which the network has been created.
mtu body integer The MTU of a network resource.
qos_policy_id (Optional) body string The UUID of the QoS policy.
subnets body array The associated subnets.
shared (Optional) body boolean Admin-only. Indicates whether this network is shared across all tenants.
id body string The UUID of the network.
network body object A network object.

Response Example

{
    "network": {
        "status": "ACTIVE",
        "subnets": [
            "54d6f61d-db07-451c-9ab3-b9609b6b6f0b"
        ],
        "name": "private-network",
        "router:external": false,
        "admin_state_up": true,
        "tenant_id": "4fd44f30292945e481c7b8a0c8908869",
        "qos_policy_id": "6a8454ade84346f59e8d40665f878b2e",
        "created_at": "2016-03-08T20:19:41",
        "mtu": 0,
        "shared": true,
        "port_security_enabled": true,
        "updated_at": "2016-03-08T20:19:41",
        "id": "d32019d3-bc6e-4319-9c1d-6722fc136a22"
    }
}
PUT
/v2.0/networks/{network_id}
Update network

Updates a network.

Normal response codes: 200 Error response codes:404,403,401,400,

Request

Name In Type Description
router:external (Optional) body boolean Indicates whether this network is externally accessible.
network body object A network object.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
shared (Optional) body boolean Admin-only. Indicates whether this network is shared across all tenants.
port_security_enabled (Optional) body boolean The port security status. A valid value is enabled (true) or disabled (false).
name (Optional) body string The network name.
network_id body string The UUID of the network.

Request Example

{
    "network": {
        "name": "sample_network_5_updated"
    }
}

Response Parameters

Name In Type Description
status body string The network status.
router:external (Optional) body boolean Indicates whether this network is externally accessible.
availability_zone_hints body array The availability zone candidate for the network.
availability_zones body array The availability zone for the network.
name (Optional) body string The network name.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mtu body integer The MTU of a network resource.
qos_policy_id (Optional) body string The UUID of the QoS policy.
subnets body array The associated subnets.
shared (Optional) body boolean Admin-only. Indicates whether this network is shared across all tenants.
id body string The UUID of the network.
network body object A network object.

Response Example

{
    "network": {
        "status": "ACTIVE",
        "subnets": [],
        "name": "sample_network_5_updated",
        "provider:physical_network": null,
        "admin_state_up": true,
        "tenant_id": "4fd44f30292945e481c7b8a0c8908869",
        "qos_policy_id": "6a8454ade84346f59e8d40665f878b2e",
        "provider:network_type": "local",
        "router:external": false,
        "mtu": 0,
        "shared": false,
        "port_security_enabled": true,
        "id": "1f370095-98f6-4079-be64-6d3d4a6adcc6",
        "provider:segmentation_id": null
    }
}
DELETE
/v2.0/networks/{network_id}
Delete network

Deletes a network and its associated resources.

Error response codes:409,404,204,401,

Request

Name In Type Description
network_id body string The UUID of the network.
GET
/v2.0/networks
List networks

Lists networks to which the tenant has access.

Use the fields query parameter to filter the response. For information, see Filtering and Column Selection.

Use the tags, tags-any, not-tags, not-tags-any query parameter to filter the response with tags. For information, see REST API Impact.

Normal response codes: 200 Error response codes:401,

Request

Response Parameters

Name In Type Description
status body string The network status.
router:external (Optional) body boolean Indicates whether this network is externally accessible.
availability_zone_hints body array The availability zone candidate for the network.
availability_zones body array The availability zone for the network.
name (Optional) body string The network name.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
networks body array A list of network objects.
mtu body integer The MTU of a network resource.
subnets body array The associated subnets.
shared (Optional) body boolean Admin-only. Indicates whether this network is shared across all tenants.
id body string The UUID of the network.
qos_policy_id (Optional) body string The UUID of the QoS policy.

Response Example

{
    "networks": [
        {
            "status": "ACTIVE",
            "subnets": [
                "54d6f61d-db07-451c-9ab3-b9609b6b6f0b"
            ],
            "name": "private-network",
            "provider:physical_network": null,
            "admin_state_up": true,
            "tenant_id": "4fd44f30292945e481c7b8a0c8908869",
            "qos_policy_id": "6a8454ade84346f59e8d40665f878b2e",
            "provider:network_type": "local",
            "router:external": true,
            "mtu": 0,
            "shared": true,
            "id": "d32019d3-bc6e-4319-9c1d-6722fc136a22",
            "provider:segmentation_id": null
        },
        {
            "status": "ACTIVE",
            "subnets": [
                "08eae331-0402-425a-923c-34f7cfe39c1b"
            ],
            "name": "private",
            "provider:physical_network": null,
            "admin_state_up": true,
            "tenant_id": "26a7980765d0414dbc1fc1f88cdb7e6e",
            "qos_policy_id": "bfdb6c39f71e4d44b1dfbda245c50819",
            "provider:network_type": "local",
            "router:external": true,
            "mtu": 0,
            "shared": true,
            "id": "db193ab3-96e3-4cb3-8fc5-05f4296d0324",
            "provider:segmentation_id": null
        }
    ]
}
POST
/v2.0/networks
Create network

Creates a network.

A request body is optional. An administrative user can specify another tenant UUID, which is the tenant who owns the network, in the request body.

Error response codes:201,401,400,

Request

Request Example

{
    "network": {
        "name": "sample_network",
        "admin_state_up": true
    }
}

Response Parameters

Name In Type Description
status body string The network status.
router:external (Optional) body boolean Indicates whether this network is externally accessible.
availability_zone_hints body array The availability zone candidate for the network.
availability_zones body array The availability zone for the network.
name (Optional) body string The network name.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mtu body integer The MTU of a network resource.
qos_policy_id (Optional) body string The UUID of the QoS policy.
subnets body array The associated subnets.
shared (Optional) body boolean Admin-only. Indicates whether this network is shared across all tenants.
id body string The UUID of the network.
network body object A network object.
POST
/v2.0/networks
Bulk create networks

Creates multiple networks in a single request.

In the request body, specify a list of networks.

The bulk create operation is always atomic. Either all or no networks in the request body are created.

Error response codes:201,401,400,

Request

Name In Type Description
router:external (Optional) body boolean Indicates whether this network is externally accessible.
name (Optional) body string The network name.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
port_security_enabled (Optional) body boolean The port security status. A valid value is enabled (true) or disabled (false).
shared (Optional) body boolean Admin-only. Indicates whether this network is shared across all tenants.
networks body array A list of network objects.

Request Example

{
    "networks": [
        {
            "name": "sample_network3",
            "admin_state_up": true
        },
        {
            "name": "sample_network4",
            "admin_state_up": true
        }
    ]
}

Response Parameters

Name In Type Description
status body string The network status.
router:external (Optional) body boolean Indicates whether this network is externally accessible.
subnets body array The associated subnets.
name (Optional) body string The network name.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mtu body integer The MTU of a network resource.
shared (Optional) body boolean Admin-only. Indicates whether this network is shared across all tenants.
id body string The UUID of the network.
port_security_enabled (Optional) body boolean The port security status. A valid value is enabled (true) or disabled (false).
networks body array A list of network objects.

Subnets

Lists, shows details for, creates, updates, and deletes subnet resources.

GET
/v2.0/subnets
List subnets

Lists subnets to which the tenant has access.

Default policy settings returns exclusively subnets owned by the tenant submitting the request, unless the request is submitted by a user with administrative rights. You can control which attributes are returned by using the fields query parameter. You can filter results by using query string parameters.

Normal response codes: 200 Error response codes:401,

Request

Response Example

{
    "subnets": [
        {
            "name": "private-subnet",
            "enable_dhcp": true,
            "network_id": "db193ab3-96e3-4cb3-8fc5-05f4296d0324",
            "tenant_id": "26a7980765d0414dbc1fc1f88cdb7e6e",
            "dns_nameservers": [],
            "allocation_pools": [
                {
                    "start": "10.0.0.2",
                    "end": "10.0.0.254"
                }
            ],
            "host_routes": [],
            "ip_version": 4,
            "gateway_ip": "10.0.0.1",
            "cidr": "10.0.0.0/24",
            "id": "08eae331-0402-425a-923c-34f7cfe39c1b"
        },
        {
            "name": "my_subnet",
            "enable_dhcp": true,
            "network_id": "d32019d3-bc6e-4319-9c1d-6722fc136a22",
            "tenant_id": "4fd44f30292945e481c7b8a0c8908869",
            "dns_nameservers": [],
            "allocation_pools": [
                {
                    "start": "192.0.0.2",
                    "end": "192.255.255.254"
                }
            ],
            "host_routes": [],
            "ip_version": 4,
            "gateway_ip": "192.0.0.1",
            "cidr": "192.0.0.0/8",
            "id": "54d6f61d-db07-451c-9ab3-b9609b6b6f0b"
        }
    ]
}
POST
/v2.0/subnets
Create subnet

Creates a subnet on a network.

OpenStack Networking does not try to derive the correct IP version from the CIDR. If you do not specify the gateway_ip attribute, OpenStack Networking allocates an address from the CIDR for the gateway for the subnet.

To specify a subnet without a gateway, set the gateway_ip attribute to null in the request body. If you do not specify the allocation_pools attribute, OpenStack Networking automatically allocates pools for covering all IP addresses in the CIDR, excluding the address reserved for the subnet gateway. Otherwise, you can explicitly specify allocation pools as shown in the following example.

When you specify both the allocation_pools and gateway_ip attributes, you must ensure that the gateway IP does not overlap with the allocation pools; otherwise, the call returns the Conflict (409) response code.

A subnet can have one or more name servers and host routes. Hosts in this subnet use the name servers. Devices with IP addresses from this subnet, not including the local subnet route, use the host routes.

Specify the ipv6_ra_mode and ipv6_address_mode attributes to create subnets that support IPv6 configurations, such as stateless address autoconfiguration (SLAAC), DHCPv6 stateful, and DHCPv6 stateless configurations.

Error response codes:201,404,403,401,400,409,

Request

Request Example

{
    "subnet": {
        "network_id": "d32019d3-bc6e-4319-9c1d-6722fc136a22",
        "ip_version": 4,
        "cidr": "10.0.0.1"
    }
}
POST
/v2.0/subnets
Bulk create subnet

Creates multiple subnets in a single request. Specify a list of subnets in the request body.

The bulk create operation is always atomic. Either all or no subnets in the request body are created.

Error response codes:201,404,403,401,400,409,

Request

Request Example

{
    "subnets": [
        {
            "cidr": "192.168.199.0/24",
            "ip_version": 4,
            "network_id": "e6031bc2-901a-4c66-82da-f4c32ed89406"
        },
        {
            "cidr": "10.56.4.0/22",
            "ip_version": 4,
            "network_id": "64239a54-dcc4-4b39-920b-b37c2144effa"
        }
    ]
}
GET
/v2.0/subnets/{subnet_id}
Show subnet details

Shows details for a subnet.

Use the fields query parameter to filter the results.

Normal response codes: 200 Error response codes:404,401,

Request

Name In Type Description
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.

Response Example

{
    "subnet": {
        "name": "my_subnet",
        "enable_dhcp": true,
        "network_id": "d32019d3-bc6e-4319-9c1d-6722fc136a22",
        "tenant_id": "4fd44f30292945e481c7b8a0c8908869",
        "created_at": "2016-03-08T20:19:41",
        "dns_nameservers": [],
        "allocation_pools": [
            {
                "start": "192.0.0.2",
                "end": "192.255.255.254"
            }
        ],
        "host_routes": [],
        "ip_version": 4,
        "gateway_ip": "192.0.0.1",
        "cidr": "192.0.0.0/8",
        "updated_at": "2016-03-08T20:19:41",
        "id": "54d6f61d-db07-451c-9ab3-b9609b6b6f0b"
    }
}
PUT
/v2.0/subnets/{subnet_id}
Update subnet

Updates a subnet.

Some attributes, such as IP version (ip_version), and CIDR (cidr) cannot be updated. Attempting to update these attributes results in a 400 Bad Request error.

Normal response codes: 200 Error response codes:404,403,401,400,

Request

Name In Type Description
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.

Request Example

{
    "subnet": {
        "name": "my_subnet"
    }
}

Response Example

{
    "subnet": {
        "name": "my_subnet",
        "enable_dhcp": true,
        "network_id": "db193ab3-96e3-4cb3-8fc5-05f4296d0324",
        "tenant_id": "26a7980765d0414dbc1fc1f88cdb7e6e",
        "dns_nameservers": [],
        "allocation_pools": [
            {
                "start": "10.0.0.2",
                "end": "10.0.0.254"
            }
        ],
        "host_routes": [],
        "ip_version": 4,
        "gateway_ip": "10.0.0.1",
        "cidr": "10.0.0.0/24",
        "id": "08eae331-0402-425a-923c-34f7cfe39c1b"
    }
}
DELETE
/v2.0/subnets/{subnet_id}
Delete subnet

Deletes a subnet.

The operation fails if subnet IP addresses are still allocated.

Error response codes:409,404,204,401,

Request

Name In Type Description
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.

Ports

Lists, shows details for, creates, updates, and deletes ports.

GET
/v2.0/ports/{port_id}
Show port details

Shows details for a port.

Normal response codes: 200 Error response codes:404,401,

Request

Name In Type Description
port_id (Optional) path string The UUID of the port.

Response Parameters

Name In Type Description
opt_value (Optional) body string The extra DHCP option value.
status body string The network status.
name (Optional) body string The network name.
allowed_address_pairs (Optional) body array A set of zero or more allowed address pairs. An address pair contains an IP address and MAC address.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
network_id body string The UUID of the network.
ip_address (Optional) body string The IP address of an allowed address pair.
extra_dhcp_opts body array A set of zero or more extra DHCP option pairs. An option pair consists of an option value and name.
opt_name (Optional) body string The extra DHCP option name.
updated_at body string Time at which port has been updated.
id body string The UUID of the network.
port body object A port object.
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
device_owner (Optional) body string The UUID of the entity that uses this port. For example, a DHCP agent.
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mac_address (Optional) body string The MAC address of an allowed address pair.
port_security_enabled (Optional) body boolean The port security status. A valid value is enabled (true) or disabled (false).
fixed_ips (Optional) body array If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
created_at body string Time at which port has been created.
security_groups (Optional) body array One or more security group UUIDs.
device_id (Optional) body string The UUID of the device that uses this port. For example, a virtual server.

Response Example

{
    "port": {
        "status": "ACTIVE",
        "name": "",
        "allowed_address_pairs": [],
        "admin_state_up": true,
        "network_id": "a87cc70a-3e15-4acf-8205-9b711a3531b7",
        "tenant_id": "7e02058126cc4950b75f9970368ba177",
        "created_at": "2016-03-08T20:19:41",
        "extra_dhcp_opts": [],
        "device_owner": "network:router_interface",
        "mac_address": "fa:16:3e:23:fd:d7",
        "fixed_ips": [
            {
                "subnet_id": "a0304c3a-4f08-4c43-88af-d796509c97d2",
                "ip_address": "10.0.0.1"
            }
        ],
        "id": "46d4bfb9-b26e-41f3-bd2e-e6dcc1ccedb2",
        "updated_at": "2016-03-08T20:19:41",
        "security_groups": [],
        "device_id": "5e3898d7-11be-483e-9732-b2f5eccd2b2e"
    }
}
PUT
/v2.0/ports/{port_id}
Update port

Updates a port.

You can update information for a port, such as its symbolic name and associated IPs. When you update IPs for a port, any previously associated IPs are removed, returned to the respective subnet allocation pools, and replaced by the IPs in the request body. Therefore, this operation replaces the fixed_ip attribute when you specify it in the request body. If the updated IP addresses are not valid or are already in use, the operation fails and the existing IP addresses are not removed from the port.

When you update security groups for a port and the operation succeeds, any associated security groups are removed and replaced by the security groups in the request body. Therefore, this operation replaces the security_groups attribute when you specify it in the request body. If the security groups are not valid, the operation fails and the existing security groups are not removed from the port.

Normal response codes: 200 Error response codes:404,403,401,400,409,

Request

Name In Type Description
opt_value (Optional) body string The extra DHCP option value.
name (Optional) body string The network name.
allowed_address_pairs (Optional) body array A set of zero or more allowed address pairs. An address pair contains an IP address and MAC address.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
network_id body string The UUID of the network.
fixed_ips (Optional) body array If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
opt_name (Optional) body string The extra DHCP option name.
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
device_owner (Optional) body string The UUID of the entity that uses this port. For example, a DHCP agent.
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mac_address (Optional) body string The MAC address of an allowed address pair.
ip_address (Optional) body string The IP address of an allowed address pair.
port body object A port object.
security_groups (Optional) body array One or more security group UUIDs.
device_id (Optional) body string The UUID of the device that uses this port. For example, a virtual server.
port_id (Optional) path string The UUID of the port.

Request Example

{
    "port": {
        "name": "test-for-port-update",
        "admin_state_up": true,
        "device_owner": "compute:nova",
        "binding:host_id": "test_for_port_update_host"
    }
}

Response Parameters

Name In Type Description
opt_value (Optional) body string The extra DHCP option value.
status body string The network status.
name (Optional) body string The network name.
allowed_address_pairs (Optional) body array A set of zero or more allowed address pairs. An address pair contains an IP address and MAC address.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
network_id body string The UUID of the network.
ip_address (Optional) body string The IP address of an allowed address pair.
extra_dhcp_opts body array A set of zero or more extra DHCP option pairs. An option pair consists of an option value and name.
opt_name (Optional) body string The extra DHCP option name.
updated_at body string Time at which port has been updated.
id body string The UUID of the network.
port body object A port object.
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
device_owner (Optional) body string The UUID of the entity that uses this port. For example, a DHCP agent.
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mac_address (Optional) body string The MAC address of an allowed address pair.
port_security_enabled (Optional) body boolean The port security status. A valid value is enabled (true) or disabled (false).
fixed_ips (Optional) body array If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
created_at body string Time at which port has been created.
security_groups (Optional) body array One or more security group UUIDs.
device_id (Optional) body string The UUID of the device that uses this port. For example, a virtual server.

Response Example

{
    "port": {
        "status": "DOWN",
        "binding:host_id": "test_for_port_update_host",
        "allowed_address_pairs": [],
        "extra_dhcp_opts": [],
        "device_owner": "compute:nova",
        "binding:profile": {},
        "fixed_ips": [
            {
                "subnet_id": "898dec4a-74df-4193-985f-c76721bcc746",
                "ip_address": "20.20.0.4"
            }
        ],
        "id": "43c831e0-19ce-4a76-9a49-57b57e69428b",
        "security_groups": [
            "ce0179d6-8a94-4f7c-91c2-f3038e2acbd0"
        ],
        "device_id": "",
        "name": "test-for-port-update",
        "admin_state_up": true,
        "network_id": "883fc383-5ea1-4c8b-8916-e1ddb0a9f365",
        "tenant_id": "522eda8d23124b25bf03fe44f1986b74",
        "binding:vif_details": {},
        "binding:vnic_type": "normal",
        "binding:vif_type": "binding_failed",
        "mac_address": "fa:16:3e:11:11:5e"
    }
}
DELETE
/v2.0/ports/{port_id}
Delete port

Deletes a port.

Any IP addresses that are associated with the port are returned to the respective subnets allocation pools.

Error response codes:404,403,204,401,

Request

Name In Type Description
port_id (Optional) path string The UUID of the port.
GET
/v2.0/ports
List ports

Lists ports to which the tenant has access.

Default policy settings return only those ports that are owned by the tenant who submits the request, unless the request is submitted by a user with administrative rights. Users can control which attributes are returned by using the fields query parameter. You can use query parameters to filter the response.For information, see Filtering and Column Selection.

Normal response codes: 200 Error response codes:401,

Request

Response Parameters

Name In Type Description
opt_value (Optional) body string The extra DHCP option value.
status body string The network status.
name (Optional) body string The network name.
allowed_address_pairs (Optional) body array A set of zero or more allowed address pairs. An address pair contains an IP address and MAC address.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
network_id body string The UUID of the network.
ip_address (Optional) body string The IP address of an allowed address pair.
extra_dhcp_opts body array A set of zero or more extra DHCP option pairs. An option pair consists of an option value and name.
opt_name (Optional) body string The extra DHCP option name.
updated_at body string Time at which port has been updated.
id body string The UUID of the network.
ports body array A list of port objects.
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
device_owner (Optional) body string The UUID of the entity that uses this port. For example, a DHCP agent.
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mac_address (Optional) body string The MAC address of an allowed address pair.
port_security_enabled (Optional) body boolean The port security status. A valid value is enabled (true) or disabled (false).
fixed_ips (Optional) body array If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
created_at body string Time at which port has been created.
security_groups (Optional) body array One or more security group UUIDs.
device_id (Optional) body string The UUID of the device that uses this port. For example, a virtual server.

Response Example

{
    "ports": [
        {
            "status": "ACTIVE",
            "name": "",
            "allowed_address_pairs": [],
            "admin_state_up": true,
            "network_id": "70c1db1f-b701-45bd-96e0-a313ee3430b3",
            "tenant_id": "",
            "extra_dhcp_opts": [],
            "device_owner": "network:router_gateway",
            "mac_address": "fa:16:3e:58:42:ed",
            "fixed_ips": [
                {
                    "subnet_id": "008ba151-0b8c-4a67-98b5-0d2b87666062",
                    "ip_address": "172.24.4.2"
                }
            ],
            "id": "d80b1a3b-4fc1-49f3-952e-1e2ab7081d8b",
            "security_groups": [],
            "device_id": "9ae135f4-b6e0-4dad-9e91-3c223e385824"
        },
        {
            "status": "ACTIVE",
            "name": "",
            "allowed_address_pairs": [],
            "admin_state_up": true,
            "network_id": "f27aa545-cbdd-4907-b0c6-c9e8b039dcc2",
            "tenant_id": "d397de8a63f341818f198abb0966f6f3",
            "extra_dhcp_opts": [],
            "device_owner": "network:router_interface",
            "mac_address": "fa:16:3e:bb:3c:e4",
            "fixed_ips": [
                {
                    "subnet_id": "288bf4a1-51ba-43b6-9d0a-520e9005db17",
                    "ip_address": "10.0.0.1"
                }
            ],
            "id": "f71a6703-d6de-4be1-a91a-a570ede1d159",
            "security_groups": [],
            "device_id": "9ae135f4-b6e0-4dad-9e91-3c223e385824"
        }
    ]
}
POST
/v2.0/ports
Create port

Creates a port on a network.

To define the network in which to create the port, specify the network_id attribute in the request body.

Error response codes:201,404,403,401,400,503,

Request

Name In Type Description
opt_value (Optional) body string The extra DHCP option value.
name (Optional) body string The network name.
allowed_address_pairs (Optional) body array A set of zero or more allowed address pairs. An address pair contains an IP address and MAC address.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
network_id body string The UUID of the network.
fixed_ips (Optional) body array If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
opt_name (Optional) body string The extra DHCP option name.
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
device_owner (Optional) body string The UUID of the entity that uses this port. For example, a DHCP agent.
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mac_address (Optional) body string The MAC address of an allowed address pair.
ip_address (Optional) body string The IP address of an allowed address pair.
port body object A port object.
security_groups (Optional) body array One or more security group UUIDs.
device_id (Optional) body string The UUID of the device that uses this port. For example, a virtual server.

Request Example

{
    "port": {
        "network_id": "a87cc70a-3e15-4acf-8205-9b711a3531b7",
        "name": "private-port",
        "admin_state_up": true
    }
}

Response Parameters

Name In Type Description
opt_value (Optional) body string The extra DHCP option value.
status body string The network status.
name (Optional) body string The network name.
allowed_address_pairs (Optional) body array A set of zero or more allowed address pairs. An address pair contains an IP address and MAC address.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
network_id body string The UUID of the network.
ip_address (Optional) body string The IP address of an allowed address pair.
extra_dhcp_opts body array A set of zero or more extra DHCP option pairs. An option pair consists of an option value and name.
opt_name (Optional) body string The extra DHCP option name.
updated_at body string Time at which port has been updated.
id body string The UUID of the network.
port body object A port object.
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
device_owner (Optional) body string The UUID of the entity that uses this port. For example, a DHCP agent.
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mac_address (Optional) body string The MAC address of an allowed address pair.
port_security_enabled (Optional) body boolean The port security status. A valid value is enabled (true) or disabled (false).
fixed_ips (Optional) body array If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
created_at body string Time at which port has been created.
security_groups (Optional) body array One or more security group UUIDs.
device_id (Optional) body string The UUID of the device that uses this port. For example, a virtual server.
POST
/v2.0/ports
Bulk create ports

Creates multiple ports in a single request. Specify a list of ports in the request body.

Guarantees the atomic completion of the bulk operation.

Error response codes:201,404,403,401,400,503,409,

Request

Name In Type Description
opt_value (Optional) body string The extra DHCP option value.
name (Optional) body string The network name.
allowed_address_pairs (Optional) body array A set of zero or more allowed address pairs. An address pair contains an IP address and MAC address.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
network_id body string The UUID of the network.
fixed_ips (Optional) body array If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
opt_name (Optional) body string The extra DHCP option name.
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
device_owner (Optional) body string The UUID of the entity that uses this port. For example, a DHCP agent.
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mac_address (Optional) body string The MAC address of an allowed address pair.
ip_address (Optional) body string The IP address of an allowed address pair.
ports body array A list of port objects.
security_groups (Optional) body array One or more security group UUIDs.
device_id (Optional) body string The UUID of the device that uses this port. For example, a virtual server.

Request Example

{
    "ports": [
        {
            "name": "sample_port_1",
            "admin_state_up": false,
            "network_id": "a87cc70a-3e15-4acf-8205-9b711a3531b7"
        },
        {
            "name": "sample_port_2",
            "admin_state_up": false,
            "network_id": "a87cc70a-3e15-4acf-8205-9b711a3531b7"
        }
    ]
}

Response Parameters

Name In Type Description
opt_value (Optional) body string The extra DHCP option value.
status body string The network status.
name (Optional) body string The network name.
allowed_address_pairs (Optional) body array A set of zero or more allowed address pairs. An address pair contains an IP address and MAC address.
admin_state_up (Optional) body boolean The administrative state of the network, which is up (true) or down (false).
network_id body string The UUID of the network.
ip_address (Optional) body string The IP address of an allowed address pair.
extra_dhcp_opts body array A set of zero or more extra DHCP option pairs. An option pair consists of an option value and name.
opt_name (Optional) body string The extra DHCP option name.
updated_at body string Time at which port has been updated.
id body string The UUID of the network.
ports body array A list of port objects.
subnet_id (Optional) body string If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
device_owner (Optional) body string The UUID of the entity that uses this port. For example, a DHCP agent.
tenant_id (Optional) body string The UUID of the tenant who owns the network. Only administrative users can specify a tenant UUID other than their own. You cannot change this value through authorization policies.
mac_address (Optional) body string The MAC address of an allowed address pair.
port_security_enabled (Optional) body boolean The port security status. A valid value is enabled (true) or disabled (false).
fixed_ips (Optional) body array If you specify only a subnet UUID, OpenStack Networking allocates an available IP from that subnet to the port. If you specify both a subnet UUID and an IP address, OpenStack Networking tries to allocate the address to the port.
created_at body string Time at which port has been created.
security_groups (Optional) body array One or more security group UUIDs.
device_id (Optional) body string The UUID of the device that uses this port. For example, a virtual server.

Service providers

Lists service providers.

GET
/v2.0/service-providers
List service providers

Lists service providers and their associated service types.

Normal response codes: 200 Error response codes:404,409,401,400,

Request

Response Parameters

Name In Type Description
default body boolean Defines whether the provider is the default for the service type. If this value is true, the provider is the default. If this value is false, the provider is not the default.
service_type body string The service type, which is CORE, DUMMY, FIREWALL, FLAVORS, L3_ROUTER_NAT, LOADBALANCER, LOADBALANCERV2, METERING, QOS, or VPN.
service_providers body array A list of service_provider objects.
name (Optional) body string The network name.

Response Example

{
    "service_providers": [
        {
            "service_type": "LOADBALANCER",
            "default": true,
            "name": "haproxy"
        }
    ]
}

Table Of Contents

Previous topic

Networking Service APIs

Next topic

Networking API v2.0 extensions

Other Versions

Project Source

This Page