Updating an EIP
Function
This API is used to update an EIP, for example, binding an EIP to a NIC, unbinding an EIP from a NIC, or converting the IP address version.
URI
PUT /v1/{project_id}/publicips/{publicip_id}
|
Name |
Mandatory |
Description |
|---|---|---|
|
project_id |
Yes |
Specifies the project ID. For details about how to obtain a project ID, see Obtaining a Project ID. |
|
publicip_id |
Yes |
Specifies the unique identifier of an EIP. |
Request Message
- Request parameter
Table 2 Request parameter Name
Mandatory
Type
Description
publicip
Yes
Object
Specifies the EIP object. For details, see Table 3.
Table 3 Description of the publicip field Name
Mandatory
Type
Description
port_id
No
String
- Specifies the port ID.
- The value must be an existing port ID. If this parameter is not included or the parameter value is left blank, the EIP is unbound. If the specified port ID does not exist or has already been bound with an EIP, an error message will be displayed. Either parameter port_id or ip_version can be updated.
ip_version
No
Integer
- Specifies the IP address version.
- The value can be 4 or 6.
- 4: IPv4 address
- 6: IPv6 address
- Constraints:
- The IP version must be supported by the system.
- The port_id and ip_version fields cannot be set at the same time.
- Example request 1 (Binding an EIP to a NIC)
PUT https://{Endpoint}/v1/{project_id}/publicips/{publicip_id} { "publicip": { "port_id": "f588ccfa-8750-4d7c-bf5d-2ede24414706" } }
- Example response 2 (Upgrading to IPv6 EIP)
PUT https://{Endpoint}/v1/{project_id}/publicips/{publicip_id} { "publicip": { "ip_version ": 6 } }
Response Message
- Response parameter
Table 4 Response parameter Name
Type
Description
publicip
Object
Specifies the EIP object. For details, see Table 5.
Table 5 Description of the publicips field Name
Type
Description
id
String
Specifies the unique identifier of an EIP.
status
String
- Specifies the EIP status.
- Possible values are as follows:
- FREEZED (Frozen)
- BIND_ERROR (Binding failed)
- BINDING (Binding)
- PENDING_DELETE (Releasing)
- PENDING_CREATE (Assigning)
- PENDING_UPDATE (Updating)
- DOWN (Unbound)
- ACTIVE (Bound)
- ELB (Bound to a load balancer)
- ERROR (Exceptions)
profile
Object
Specifies the additional parameters, including the order ID and product ID. For details, see Table 6.
If profile is specified, the EIP is in yearly/monthly billing mode.
type
String
- Specifies the EIP type.
- Possible values are 5_telcom (China Telecom), 5_union (China Unicom), 5_bgp (dynamic BGP), and 5_sbgp (static BGP).
- CN Northeast-Dalian: 5_telcom and 5_union
- CN South-Guangzhou: 5_bgp and 5_sbgp
- CN East-Shanghai1: 5_bgp and 5_sbgp
- CN East-Shanghai2: 5_bgp and 5_sbgp
- CN North-Beijing1: 5_bgp and 5_sbgp
- AP-Hong Kong: 5_bgp
- AP-Bangkok: 5_bgp
- AP-Singapore: 5_bgp
- AF-Johannesburg: 5_bgp
- CN Southwest-Guiyang1: 5_sbgp
- CN North-Beijing4: 5_bgp and 5_sbgp
- LA-Santiago: 5_bgp
- LA-Sao Paulo1: 5_bgp
- LA-Mexico City1: 5_bgp
- LA-Buenos Aires1: 5_bgp
- LA-Lima1: 5_bgp
- LA-Santiago2: 5_bgp
- Constraints:
- The configured value must be supported by the system.
- publicip_id is an IPv4 port. If publicip_type is not specified, the default value is 5_bgp.
public_ip_address
String
Specifies the obtained EIP if only IPv4 EIPs are available. Specifies the IPv4 address corresponding to the IPv6 address if IPv6 EIPs are available.
public_ipv6_address
String
Specifies the obtained EIP if IPv6 EIPs are available. This parameter does not exist if only IPv4 EIPs are available.
ip_version
Integer
Specifies the IP address version. The value can be 4 or 6.
- 4: IPv4 address
- 6: IPv6 address
private_ip_address
String
- Specifies the private IP address bound to the EIP.
- This parameter is returned only when a port is associated with the EIP.
port_id
String
- Specifies the port ID.
- This parameter is returned only when a port is associated with the EIP.
tenant_id
String
Specifies the project ID.
create_time
String
Specifies the time (UTC) when the EIP is assigned.
bandwidth_id
String
Specifies the ID of the EIP bandwidth.
bandwidth_size
Integer
Specifies the bandwidth (Mbit/s).
bandwidth_share_type
String
- Specifies the EIP bandwidth type.
- The value can be PER or WHOLE.
- PER: Dedicated bandwidth
- WHOLE: Shared bandwidth
- IPv6 addresses do not support bandwidth whose type is WHOLE.
bandwidth_name
String
Specifies the bandwidth name.
enterprise_project_id
String
- Specifies the enterprise project ID. The value can contain a maximum of 36 characters. It is string "0" or in UUID format with hyphens (-).
- When assigning an EIP, you need to associate an enterprise project ID with the EIP.
- Example response 1 (Binding an EIP to a NIC)
{ "publicip": { "id": "f6318bef-6508-4ea5-a48f-6152b6b1a8fb", "status": "ACTIVE", "type": "5_bgp", "port_id": "a135e9b8-1630-40d2-a6c5-eb534a61efbe", "public_ip_address": "10.xx.xx.162", "private_ip_address": "192.168.1.131", "tenant_id": "26ae5181a416420998eb2093aaed84d9", "create_time": "2019-03-27 01:33:18", "bandwidth_size": 7, "ip_version": 4 } }
- Example response 2 (Upgrading to IPv6 EIP)
{ "publicip": { "id": "f6318bef-6508-4ea5-a48f-6152b6b1a8fb", "status": "DOWN", "type": "5_bgp", "public_ip_address": "10.xx.xx.162", "public_ipv6_address": "cdcd:xx:xx:xx::a9a:4aa2", "tenant_id": "26ae5181a416420998eb2093aaed84d9", "create_time": "2019-03-27 01:33:18", "bandwidth_size": 7, "ip_version": 6 } }
Status Code
See Status Codes.
Error Code
See Error Codes.
Last Article: Querying EIPs
Next Article: Releasing an EIP
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.