Updating a Yearly/Monthly Bandwidth
Function
This API is used to update information about a bandwidth in yearly/monthly billing mode.
URI
PUT /v2.0/{project_id}/bandwidths/{bandwidth_id}
Name |
Mandatory |
Description |
---|---|---|
project_id |
Yes |
Specifies the project ID. |
bandwidth_id |
Yes |
Specifies the bandwidth ID, which uniquely identifies the bandwidth. You can obtain it in Querying an EIP. |
Request Message
- Request parameter
Tabela 2 Request header parameter Parameter
Mandatory
Type
Description
X-Auth-Token
Yes
String
Specifies the user token. The token can be obtained by calling the IAM API used for obtaining a user token. The value of X-Subject-Token in the response header is the user token.
Tabela 3 Request parameter Name
Mandatory
Type
Description
bandwidth
Yes
bandwidth object
Specifies the bandwidth objects. For details, see Tabela 4.
extendParam
No
extendParam object
Specifies the extended parameter, which is used to apply for resources in yearly/monthly billing mode. For details, see Tabela 5.
Tabela 4 Description of the bandwidth field Name
Mandatory
Type
Description
name
No
String
- Specifies the bandwidth name.
- The value can contain 1 to 64 characters, including letters, digits, underscores (_), hyphens (-), and periods (.). If the value is left blank, the name of the bandwidth is not changed.
- Either name or size must be specified.
size
No
Integer
- Specifies the bandwidth size. The size of the bandwidth in yearly/monthly billing mode can only be changed to a larger value.
- The value ranges from 1 Mbit/s to 2000 Mbit/s by default. (The specific range may vary depending on the configuration in each region. You can see the available bandwidth range on the management console.) If the parameter is not included, the bandwidth size is not changed.
- Either name or size must be specified.
- The minimum increment for bandwidth adjustment varies depending on the bandwidth range. The details are as follows:
- The minimum increment is 1 Mbit/s if the allowed bandwidth ranges from 0 Mbit/s to 300 Mbit/s (with 300 Mbit/s included).
- The minimum increment is 50 Mbit/s if the allowed bandwidth ranges from 300 Mbit/s to 1000 Mbit/s (with 1000 Mbit/s included).
- The minimum increment is 500 Mbit/s if the allowed bandwidth is greater than 1000 Mbit/s.
- Example request
PUT https://{Endpoint}/v2.0/{project_id}/bandwidths/{bandwidth_id} { "bandwidth": { "name": "bandwidth123", "size": 10 }, "extendParam": { "is_auto_pay": "false" } }
Response Message
- Response parameter
Tabela 6 Response parameter Name
Type
Description
bandwidth
bandwidth object
Specifies the bandwidth object. This object is returned only when the value of the name parameter in the bandwidth fields is updated in the pay-per-use or yearly/monthly billing mode. For details, see Tabela 7.
order_id
String
Specifies the order ID. (yearly/monthly billing mode)
Tabela 7 Description of the bandwidth field Name
Type
Description
name
String
- Specifies the bandwidth name.
- The value can contain 1 to 64 characters, including letters, digits, underscores (_), hyphens (-), and periods (.).
size
Integer
- Specifies the bandwidth size.
- The value ranges from 5 Mbit/s to 2000 Mbit/s by default. (The specific range may vary depending on the configuration in each region. You can see the available bandwidth range on the management console.)
id
String
Specifies the bandwidth ID, which uniquely identifies the bandwidth.
share_type
String
- Specifies whether the bandwidth is shared or dedicated.
- The value can be PER or WHOLE.
- WHOLE: Shared bandwidth
- PER: Dedicated bandwidth
publicip_info
Array of publicip_info objects
- Specifies information about the EIP that uses the bandwidth. For details, see Tabela 8.
- The bandwidth, whose type is WHOLE, can be used by multiple EIPs. The bandwidth, whose type is PER, can be used by only one EIP.
tenant_id
String
Specifies the project ID.
bandwidth_type
String
- Specifies the bandwidth type. The default value for the shared bandwidth is share.
- The value can be share, bgp, or sbgp.
- share: Shared bandwidth
- bgp: Dynamic BGP
- sbgp: Static BGP
charge_mode
String
- Specifies whether the bandwidth is billed by traffic, bandwidth, or 95th percentile bandwidth (enhanced).
- Possible values can be bandwidth (billed by bandwidth), traffic (billed by traffic), or 95peak_plus (billed by enhanced 95th percentile bandwidth). If the value is an empty character string or no value is specified, value bandwidth is used.
- Only the shared bandwidth supports 95peak_plus (billed by enhanced 95th percentile bandwidth). If you use the enhanced 95th percentile bandwidth, specify the guaranteed bandwidth percentage. The default value is 20%. Shared bandwidth does not support billing by traffic. Yearly/monthly shared bandwidth does not support billing by enhanced 95th percentile bandwidth.
billing_info
String
Specifies the bill information.
If billing_info is specified, the bandwidth is in yearly/monthly billing mode.
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 (-). Value 0 indicates the default enterprise project.
- When creating a shared bandwidth, associate the enterprise project ID with the shared bandwidth.
status
String
- Specifies the bandwidth status.
- Values:
- FREEZED (Frozen)
- NORMAL (Normal)
created_at
String
- Specifies the time (UTC) when the bandwidth is created.
- Format: yyyy-MM-ddTHH:mm:ss
updated_at
String
- Specifies the time (UTC) when the bandwidth is updated.
- Format: yyyy-MM-ddTHH:mm:ss
enable_bandwidth_rules
boolean
- Specifies whether to enable QoS.
- The value can be true or false.
rule_quota
integer
Specifies the maximum number of grouping rules supported by the bandwidth.
bandwidth_rules
Array of bandwidth_rules objects
Specifies the bandwidth rules.
public_border_group
String
Specifies whether it is in a central site or an edge site.
Values:
- center
- Edge site name
This resource can only be associated with an EIP of the same region.
Tabela 8 publicip_info object Name
Type
Description
publicip_id
String
Specifies the ID of the EIP or IPv6 port that uses the bandwidth.
publicip_address
String
Specifies the obtained EIP if only IPv4 EIPs are available.
publicipv6_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.
- Possible values are as follows:
- 4: IPv4 address
- 6: IPv6 address
publicip_type
String
- Specifies the EIP type.
- The value can be 5_bgp (dynamic BGP) or 5_sbgp (static BGP).
- 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
- CN-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.
Tabela 9 bandwidth_rules object Name
Type
Description
id
string
Specifies the bandwidth rule ID.
name
string
Specifies the name of the bandwidth rule.
admin_state_up
boolean
Specifies the configuration status. The value False indicates that the configuration does not take effect.
egress_size
integer
- Specifies the maximum outbound bandwidth in Mbit/s.
- The value range ranges from 0 to n, where n indicates the shared bandwidth size. If the value is set to 0, the maximum bandwidth, that is the shared bandwidth size will be used.
egress_guarented_size
integer
- Specifies the guaranteed outbound bandwidth in Mbit/s.
- The value ranges from 0 to x, where x indicates the remaining bandwidth.
publicip_info
Array of publicip_info objects
- Specifies the EIP associated with the bandwidth.
- The bandwidth, whose type is set to WHOLE, can be used by multiple EIPs. The bandwidth, whose type is set to PER, can be used by only one EIP.
- Example response 1 (only the value of the name parameter in the bandwidth field is updated in the pay-per-use or yearly/monthly billing mode.)
{ "bandwidth": { "id": "3fa5b383-5a73-4dcb-a314-c6128546d855", "name": "bandwidth123", "size": 10, "share_type": "PER", "publicip_info": [ { "publicip_id": "6285e7be-fd9f-497c-bc2d-dd0bdea6efe0", "publicip_address": "161.xx.xx.9", "publicip_type": "5_bgp", "ip_version": 4 } ], "tenant_id": "8b7e35ad379141fc9df3e178bd64f55c", "created_at": "2020-04-21T08:56:42Z", "updated_at": "2020-04-21T08:56:42Z", "bandwidth_type": "bgp" } }
- Example response 2 (yearly/monthly bandwidth)
{ "order_id": "xxxx" }