Creating a Bandwidth Package
Function
This API is used to create a bandwidth package.
Debugging
You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.
URI
POST /v3/{domain_id}/ccaas/bandwidth-packages
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
domain_id |
Yes |
String |
Account ID. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
No |
String |
User token. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
bandwidth_package |
Yes |
CreateBandwidthPackage object |
Request body for creating a bandwidth package. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
name |
Yes |
String |
Instance name. |
description |
No |
String |
Resource description. Angle brackets (<>) are not allowed. |
enterprise_project_id |
No |
String |
ID of the enterprise project that the resource belongs to. |
project_id |
Yes |
String |
Project ID. |
local_area_id |
Yes |
String |
Geographic region. Cloud Connect is available in the following geographic regions:
|
remote_area_id |
Yes |
String |
Geographic region. Cloud Connect is available in the following geographic regions:
|
charge_mode |
Yes |
String |
Bandwidth package billing option. bandwidth: The bandwidth is billed by fixed bandwidth. |
billing_mode |
Yes |
Integer |
Billing mode of the bandwidth package on the Chinese Mainland website or the International website.
|
bandwidth |
Yes |
Integer |
Bandwidth range specified for the bandwidth package. |
resource_id |
No |
String |
ID of the resource that the bandwidth package is bound to. |
resource_type |
No |
String |
Type of the resource that the bandwidth package is bound to. cloud_connection: The bandwidth package is bound to a cloud connection. |
spec_code |
No |
String |
Specification code of the bandwidth package.
|
interflow_mode |
No |
String |
Bandwidth package applicability.
|
Response Parameters
Status code: 201
Parameter |
Type |
Description |
---|---|---|
request_id |
String |
Request ID. |
bandwidth_package |
BandwidthPackage object |
Bandwidth package. |
Parameter |
Type |
Description |
---|---|---|
id |
String |
Instance ID. |
name |
String |
Instance name. |
description |
String |
Resource description. Angle brackets (<>) are not allowed. |
domain_id |
String |
ID of the account that the instance belongs to. |
enterprise_project_id |
String |
ID of the enterprise project that the resource belongs to. |
project_id |
String |
Project ID. |
created_at |
String |
Time when the resource was created. The time is in the yyyy-MM-ddTHH:mm:ss format. |
updated_at |
String |
Time when the resource was updated. The time must be in the yyyy-MM-ddTHH:mm:ss format. |
resource_id |
String |
ID of the resource that the bandwidth package is bound to. |
resource_type |
String |
Type of the resource that the bandwidth package is bound to. cloud_connection: a cloud connection |
local_area_id |
String |
Geographic region. Cloud Connect is available in the following geographic regions:
|
remote_area_id |
String |
Geographic region. Cloud Connect is available in the following geographic regions:
|
spec_code |
String |
Specification code of the bandwidth package.
|
billing_mode |
Integer |
Billing mode of the bandwidth package on the Chinese Mainland website or the International website.
|
tags |
Array of Tag objects |
Resource tags. |
status |
String |
Status of the bandwidth package. ACTIVE: The bandwidth package is available. |
admin_state_up |
Boolean |
Administrative status of the bandwidth package. |
order_id |
String |
Order ID of the bandwidth package. |
product_id |
String |
Product ID of the bandwidth package. |
charge_mode |
String |
Bandwidth billing option. The bandwidth is billed by fixed bandwidth. |
bandwidth |
Integer |
Bandwidth range specified for the bandwidth package. |
interflow_mode |
String |
Bandwidth package applicability.
|
Parameter |
Type |
Description |
---|---|---|
key |
String |
Tag key. The key can contain a maximum of 128 Unicode characters, including letters, digits, hyphens (-), and underscores (_). |
value |
String |
Tag value. The value can contain a maximum of 255 Unicode characters, including letters, digits, hyphens (-), underscores (_), and periods (.). |
Example Requests
Creating a 5-Mbit/s bandwidth package with both geographic regions specified
POST https://{cc_endpoint}/v3/{domain_id}/ccaas/bandwidth-packages { "bandwidth_package" : { "project_id" : "XXX", "name" : "test_bwp_name", "local_area_id" : "Chinese-Mainland", "remote_area_id" : "Chinese-Mainland", "bandwidth" : 5, "charge_mode" : "bandwidth", "billing_mode" : 5, "interflow_mode" : "Area", "enterprise_project_id" : "0" } }
Example Responses
Status code: 201
The bandwidth package has been created.
{ "request_id" : "61126320a1802d5c6444f9d2d76526c2", "bandwidth_package" : { "bandwidth" : 5, "status" : "ACTIVE", "id" : "XXXXX", "name" : "test_bwp_name", "description" : "", "domain_id" : "XXX", "created_at" : "2023-09-20T08:37:15Z", "updated_at" : "2023-09-20T08:37:15Z", "project_id" : "XXX", "resource_type" : "", "resource_id" : "", "local_area_id" : "Chinese-Mainland", "remote_area_id" : "Chinese-Mainland", "admin_state_up" : true, "charge_mode" : "bandwidth", "billing_mode" : "3", "spec_code" : "bandwidth.cmtocm", "order_id" : "", "product_id" : "", "enterprise_project_id" : "0", "tags" : [ ], "interflow_mode" : "Area" } }
SDK Sample Code
The SDK sample code is as follows.
Creating a 5-Mbit/s bandwidth package with both geographic regions specified
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.GlobalCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.cc.v3.region.CcRegion; import com.huaweicloud.sdk.cc.v3.*; import com.huaweicloud.sdk.cc.v3.model.*; public class CreateBandwidthPackageSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); ICredential auth = new GlobalCredentials() .withAk(ak) .withSk(sk); CcClient client = CcClient.newBuilder() .withCredential(auth) .withRegion(CcRegion.valueOf("<YOUR REGION>")) .build(); CreateBandwidthPackageRequest request = new CreateBandwidthPackageRequest(); CreateBandwidthPackageRequestBody body = new CreateBandwidthPackageRequestBody(); CreateBandwidthPackage bandwidthPackagebody = new CreateBandwidthPackage(); bandwidthPackagebody.withBillingMode(CreateBandwidthPackage.BillingModeEnum.NUMBER_5) .withBandwidth(5) .withChargeMode(CreateBandwidthPackage.ChargeModeEnum.fromValue("bandwidth")) .withRemoteAreaId(CreateBandwidthPackage.RemoteAreaIdEnum.fromValue("Chinese-Mainland")) .withEnterpriseProjectId("0") .withProjectId("XXX") .withName("test_bwp_name") .withLocalAreaId(CreateBandwidthPackage.LocalAreaIdEnum.fromValue("Chinese-Mainland")) .withInterflowMode(CreateBandwidthPackage.InterflowModeEnum.fromValue("Area")); body.withBandwidthPackage(bandwidthPackagebody); request.withBody(body); try { CreateBandwidthPackageResponse response = client.createBandwidthPackage(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } } |
Creating a 5-Mbit/s bandwidth package with both geographic regions specified
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import GlobalCredentials from huaweicloudsdkcc.v3.region.cc_region import CcRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkcc.v3 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] credentials = GlobalCredentials(ak, sk) client = CcClient.new_builder() \ .with_credentials(credentials) \ .with_region(CcRegion.value_of("<YOUR REGION>")) \ .build() try: request = CreateBandwidthPackageRequest() bandwidthPackagebody = CreateBandwidthPackage( billing_mode=5, bandwidth=5, charge_mode="bandwidth", remote_area_id="Chinese-Mainland", enterprise_project_id="0", project_id="XXX", name="test_bwp_name", local_area_id="Chinese-Mainland", interflow_mode="Area" ) request.body = CreateBandwidthPackageRequestBody( bandwidth_package=bandwidthPackagebody ) response = client.create_bandwidth_package(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
Creating a 5-Mbit/s bandwidth package with both geographic regions specified
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/global" cc "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cc/v3" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cc/v3/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cc/v3/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") auth := global.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := cc.NewCcClient( cc.CcClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.CreateBandwidthPackageRequest{} remoteAreaIdBandwidthPackage:= model.GetCreateBandwidthPackageRemoteAreaIdEnum().CHINESE_MAINLAND enterpriseProjectIdBandwidthPackage:= "0" localAreaIdBandwidthPackage:= model.GetCreateBandwidthPackageLocalAreaIdEnum().CHINESE_MAINLAND interflowModeBandwidthPackage:= model.GetCreateBandwidthPackageInterflowModeEnum().AREA bandwidthPackagebody := &model.CreateBandwidthPackage{ BillingMode: model.GetCreateBandwidthPackageBillingModeEnum().E_5, Bandwidth: int32(5), ChargeMode: model.GetCreateBandwidthPackageChargeModeEnum().BANDWIDTH, RemoteAreaId: &remoteAreaIdBandwidthPackage, EnterpriseProjectId: &enterpriseProjectIdBandwidthPackage, ProjectId: "XXX", Name: "test_bwp_name", LocalAreaId: &localAreaIdBandwidthPackage, InterflowMode: &interflowModeBandwidthPackage, } request.Body = &model.CreateBandwidthPackageRequestBody{ BandwidthPackage: bandwidthPackagebody, } response, err := client.CreateBandwidthPackage(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.
Status Codes
Status Code |
Description |
---|---|
201 |
The bandwidth package has been created. |
Error Codes
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