Creating a Port
Function
This API is used to create a port.
URI
POST /v2.0/ports
Request Parameters
Attribute | Mandatory | Type | Description |
---|---|---|---|
name | No | String | Specifies the port name. |
network_id | Yes | String |
|
admin_state_up | No | Boolean | Specifies the administrative status. The default value is true. |
fixed_ips | No | Array of fixed_ip objects | Specifies the port IP address. For details, see Table 3. For example, the value is "fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}]. "fixed_ips": [{"subnet_id": "1fd001aa-6946-4168-86d9-924c7d3ef8fb", "ip_address": "2a07:b980:4030:14::1"}] |
security_groups | No | Array of strings | Specifies the UUID of the security group, for example, "security_groups": ["a0608cbf-d047-4f54-8b28-cd7b59853fff"]. This is an extended attribute. This parameter cannot be left blank. |
allowed_address_pairs | No | Array of allowed_address_pairs objects | Specifies the IP address and MAC address pair. This is an extended attribute. For details, see Table 4. Instructions:
|
extra_dhcp_opts | No | Array of extra_dhcp_opt objects | Specifies the extended DHCP option. This is an extended attribute. For details, see Table 5. |
binding:profile | No | Object |
|
binding:vnic_type | No | String | Specifies the type of the bound vNIC. normal: Softswitch |
device_owner | No | String | Specifies the device that the port belongs to. Currently, only "" and neutron:VIP_PORT are supported. neutron:VIP_PORT indicates the port of a virtual IP address. |
Attribute | Mandatory | Type | Description |
---|---|---|---|
subnet_id | No | String | Specifies the ID of the subnet to which the port belongs. This parameter cannot be updated. |
ip_address | No | String | Specifies the port IP address. This parameter cannot be updated. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
ip_address | Yes | String |
|
mac_address | No | String | Specifies the MAC address. By default, the MAC address of the local port is used. |
Attribute | Mandatory | Type | Description |
---|---|---|---|
opt_name | No | String | Specifies the option name. |
opt_value | No | String | Specifies the option value. |
Example Request
Create a port named port-test on network whose ID is 00ae08c5-f727-49ab-ad4b-b069398aa171.
POST https://{Endpoint}/v2.0/ports{"port": {"admin_state_up": true,"network_id": "00ae08c5-f727-49ab-ad4b-b069398aa171","name": "port-test"}}
Response Parameters
Attribute | Type | Description |
---|---|---|
id | String | Specifies the port ID. A maximum of 255 characters are allowed. This parameter is not mandatory when you query ports. |
name | String | Specifies the port name. |
network_id | String | Specifies the ID of the network to which the port belongs. |
admin_state_up | Boolean | Specifies the administrative status. The default value is true. |
mac_address | String | Specifies the port MAC address. For example, "mac_address": "fa:16:3e:9e:ff:55". This value can only be dynamically assigned by the system. |
fixed_ips | Array of fixed_ip objects | Specifies the port IP address. For details, see Table 8. For example, the value is "fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}]. "fixed_ips": [{"subnet_id": "1fd001aa-6946-4168-86d9-924c7d3ef8fb", "ip_address": "2a07:b980:4030:14::1"}] |
device_id | String | Specifies the device ID. This value is automatically maintained by the system and cannot be set or updated manually. The port with this field specified cannot be deleted. |
device_owner | String | Specifies the DHCP, router or Nova to which a device belongs. The value can be network:dhcp, network:router_interface_distributed, compute:xxx, neutron:VIP_PORT, neutron:LOADBALANCERV2, neutron:LOADBALANCERV3, network:endpoint_interface, network:nat_gateway, or network:ucmp. (In value compute:xxx, xxx specifies the AZ name, for example, compute:aa-bb-cc indicates that the private IP address is used by an ECS in the aa-bb-cc AZ). This parameter value cannot be updated. You can only set device_owner to neutron:VIP_PORT for a virtual IP address port during port creation. If this parameter of a port is not left blank, the port can only be deleted when this parameter value is neutron:VIP_PORT. The port with this field specified cannot be deleted. |
tenant_id | String | Specifies the project ID. |
status | String | Specifies the port status. The value can be ACTIVE, BUILD, or DOWN. The status of a HANA SR-IOV VM port is always DOWN. |
security_groups | Array of strings | Specifies the UUID of the security group, for example, "security_groups": ["a0608cbf-d047-4f54-8b28-cd7b59853fff"]. This is an extended attribute. This parameter cannot be left blank. |
allowed_address_pairs | Array of allowed_address_pairs objects | Specifies the IP address and MAC address pair. This is an extended attribute. For details, see Table 9. Instructions:
|
extra_dhcp_opts | Array of extra_dhcp_opt objects | Specifies the extended DHCP option. This is an extended attribute. For details, see Table 10. |
binding:vif_details | binding:vif_details object | For details, see Table 11. |
binding:profile | Object |
|
binding:vnic_type | String | Specifies the type of the bound vNIC. normal: Softswitch |
project_id | String | Specifies the project ID. For details about how to obtain a project ID, see Obtaining a Project ID. |
created_at | String | Specifies the time (UTC) when the port is created. Format: yyyy-MM-ddTHH:mm:ss |
updated_at | String | Specifies the time (UTC) when the port is updated. Format: yyyy-MM-ddTHH:mm:ss |
Attribute | Type | Description |
---|---|---|
subnet_id | String | Specifies the ID of the subnet to which the port belongs. This parameter cannot be updated. |
ip_address | String | Specifies the port IP address. This parameter cannot be updated. |
Attribute | Type | Description |
---|---|---|
ip_address | String | Specifies the IP address. This parameter cannot be 0.0.0.0. |
mac_address | String | Specifies the MAC address. |
Attribute | Type | Description |
---|---|---|
opt_name | String | Specifies the option name. |
opt_value | String | Specifies the option value. |
Parameter | Type | Description |
---|---|---|
primary_interface | Boolean | If the value is true, this is the primary NIC. |
port_filter | Boolean | Specifies the port used for filtering in security groups to protect against MAC or IP spoofing. |
ovs_hybrid_plug | Boolean | Specifies that OVS hybrid plug should be used by Nova APIs. |
Example Response
{"port": {"id": "a7d98f3c-b42f-460b-96a1-07601e145961","name": "port-test","status": "DOWN","admin_state_up": true,"fixed_ips": [],"mac_address": "fa:16:3e:01:f7:90","network_id": "00ae08c5-f727-49ab-ad4b-b069398aa171","tenant_id": "db82c9e1415a464ea68048baa8acc6b8","project_id": "db82c9e1415a464ea68048baa8acc6b8","device_id": "","device_owner": "","security_groups": ["d0d58aa9-cda9-414c-9c52-6c3daf8534e6"],"extra_dhcp_opts": [],"allowed_address_pairs": [],"binding:vnic_type": "normal","binding:vif_details": {},"binding:profile": {},"port_security_enabled": true,"created_at": "2018-09-20T01:45:26","updated_at": "2018-09-20T01:45:26"}}
Status Code
See Status Codes.
Error Code
See Error Codes.
- Function
- URI
- Request Parameters
- Example Request
- Response Parameters
- Example Response
- Status Code
- Error Code