Assigning an EIP¶
Function¶
This API is used to assign an EIP.
The EIP service provides independent public IP addresses and bandwidth for Internet access. EIPs can be bound to or unbound from ECSss, BMSs, virtual IP addresses, NAT gateways, or load balancers.
Note
Note the following when you use EIPs of the Dedicated Load Balancer (5_gray) type:
In eu-de, no more new EIPs of this type can be assigned. You can assign EIPs of the BGP (5_bgp) type.
Existing EIPs of the Dedicated Load Balancer (5_gray) type can be bound to dedicated or shared load balancers.
The EIP console cannot be used to bind EIPs to or unbind them from dedicated load balancers.
You can use APIs to bind EIPs to or unbind them from dedicated load balancers. For details, see Binding an EIP and Unbinding an EIP.
EIPs of this type can be bound to or unbound from shared load balancers using the EIP console or APIs.
You are advised to bind or unbind BGP EIPs to or from dedicated load balancers.
5_gray EIPs cannot be added to the same shared bandwidth as EIPs of other types. If they are in the same shared bandwidth, the bandwidth limit settings will not take effect.
URI¶
POST /v1/{project_id}/publicips
Table 1 describes the parameters.
Parameter | Mandatory | Description |
---|---|---|
project_id | Yes | Specifies the project ID. |
Request Parameters¶
Parameter | Mandatory | Type | Description |
---|---|---|---|
publicip | Yes | publicip object | Specifies the EIP object. For details, see Table 3. |
bandwidth | Yes | bandwidth object | Specifies the bandwidth object. For details, see Table 4. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
type | Yes | String |
|
ip_version | No | Integer |
|
alias | No | String |
|
Parameter | Mandatory | Type | Description |
---|---|---|---|
name | Yes | String |
|
size | Yes | Integer |
|
id | No | String |
|
share_type | Yes | String |
|
charge_mode | No | String |
|
Example Request¶
Example request (IPv4 EIP with dedicated bandwidth)
POST https://{Endpoint}/v1/{project_id}/publicips
{
"publicip": {
"type": "5_bgp",
"ip_version": 4
},
"bandwidth": {
"name": "bandwidth123",
"size": 10,
"share_type": "PER"
}
}
Response Message¶
Response parameter
¶ Parameter
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)
NOTIFYING (Assigning)
NOTIFY_DELETE (Release)
DOWN (Unbound)
ACTIVE (Bound)
ELB (Bound to a load balancer)
VPN (Bound to a VPN)
ERROR (Exceptions)
type
String
Specifies the EIP type.
The value can be 5_bgp (Dynamic BGP), 5_mailbgp (Mail BGP), 5_gray (Dedicated Load Balancer), or 5_dualStack.
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.
ip_version
Integer
Specifies the IP address version. The value can be 4 or 6.
4: IPv4
6: IPv6 (IPv6 is not supported currently.)
tenant_id
String
Specifies the project ID.
create_time
String
Specifies the time (UTC) when the EIP is assigned.
Format: yyyy-MM-dd HH:mm:ss
bandwidth_size
Integer
Specifies the bandwidth (Mbit/s).
alias
String
Specifies the EIP name.
enterprise_project_id
String
Specifies the enterprise project ID. The value is 0 or a string that contains a maximum of 36 characters in UUID format with hyphens (-).
When you assign an EIP, associate an enterprise project ID with the EIP.
If this parameter is not specified, the default value is 0, which indicates that the default enterprise project is used.
public_border_group
String
Specifies whether it is in a central site or an edge site.
The value can be:
center
Edge site name
This resource can only be associated with an EIP of the same region.
Example Response¶
Example response (IPv4 EIP with dedicated bandwidth)
{
"publicip": {
"id": "f588ccfa-8750-4d7c-bf5d-2ede24414706",
"alias": "tom",
"public_border_group": "center",
"status": "PENDING_CREATE",
"type": "5_bgp",
"public_ip_address": "161.xx.xx.7",
"tenant_id": "8b7e35ad379141fc9df3e178bd64f55c",
"ip_version": 4,
"create_time": "2015-07-16 04:10:52",
"bandwidth_size": 0,
"enterprise_project_id": "b261ac1f-2489-4bc7-b31b-c33c3346a439"
}
}
Status Code¶
See Status Codes.
Error Code¶
See Error Codes.