Creating a Port
Function
This API is used to create a port.
URI
POST /v2.0/ports
Request Parameters
Parameter |
Type |
Mandatory |
Description |
---|---|---|---|
port |
port object |
Yes |
Specifies the port object list. For details, see Table 2. |
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. |
Name |
Mandatory |
Type |
Description |
---|---|---|---|
ip_address |
Yes |
String |
|
mac_address |
No |
String |
Specifies the MAC address. |
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
Parameter |
Type |
Description |
---|---|---|
port |
port object |
Specifies the port information. For details, see Table 7. |
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. |
Name |
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.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot