Adding a Route Table of an Enterprise Router as an Attachment on a Central Network
Function
This API is used to add a route table of an enterprise router as an attachment on a central network.
Calling Method
For details, see Calling APIs.
URI
POST /v3/{domain_id}/gcn/central-network/{central_network_id}/er-route-table-attachments
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
domain_id |
Yes |
String |
Account ID. Minimum: 10 Maximum: 32 |
central_network_id |
Yes |
String |
Central network ID. Minimum: 36 Maximum: 36 |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
No |
String |
User token. Minimum: 0 Maximum: 2000000 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
central_network_er_route_table_attachment |
Yes |
Request body for adding an enterprise router to a central network as an attachment. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
name |
Yes |
String |
Resource name. |
description |
No |
String |
Resource description. Angle brackets (<>) are not allowed. Minimum: 0 Maximum: 255 |
enterprise_router_id |
Yes |
String |
Enterprise router ID. |
enterprise_router_project_id |
Yes |
String |
Project ID of the enterprise router. |
enterprise_router_region_id |
Yes |
String |
Region ID of the enterprise router. |
attachment_id |
No |
String |
Resource ID. |
enterprise_router_table_id |
Yes |
String |
Resource ID. |
attached_er_table_project_id |
Yes |
String |
Project ID. |
attached_er_table_region_id |
Yes |
String |
Region ID. |
attached_er_id |
Yes |
String |
Resource ID. |
attached_er_table_id |
Yes |
String |
Resource ID. |
central_network_plane_id |
Yes |
String |
Resource ID. |
hosted_cloud |
Yes |
String |
Default: HWCloud |
Response Parameters
Status code: 202
Parameter |
Type |
Description |
---|---|---|
request_id |
String |
Resource ID. Minimum: 32 Maximum: 36 |
central_network_er_route_table_attachment |
Details of the enterprise router route table used as an attachment. |
Parameter |
Type |
Description |
---|---|---|
id |
String |
Resource ID. |
name |
String |
Resource name. |
description |
String |
Resource description. Angle brackets (<>) are not allowed. Minimum: 0 Maximum: 255 |
domain_id |
String |
ID of the account that the instance belongs to. |
state |
String |
Central network connection status.
|
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. |
central_network_id |
String |
Central network ID. |
central_network_plane_id |
String |
ID of the central network plane. |
global_connection_bandwidth_id |
String |
Global connection bandwidth ID. |
is_frozen |
Boolean |
Whether the resource is frozen. |
bandwidth_type |
String |
Bandwidth type. The bandwidth types are as follows:
|
bandwidth_size |
Integer |
Bandwidth range, in Mbit/s. |
enterprise_router_id |
String |
Enterprise router ID. |
enterprise_router_project_id |
String |
Project ID of the enterprise router. |
enterprise_router_region_id |
String |
Region ID of the enterprise router. |
enterprise_router_attachment_id |
String |
Attachment ID of the enterprise router. |
enterprise_router_table_id |
String |
Resource ID. |
enterprise_router_site_code |
String |
Site code definition. |
attached_er_table_id |
String |
Resource ID. |
attached_er_table_region_id |
String |
Region ID. |
attached_er_table_project_id |
String |
Project ID. |
attached_er_table_site_code |
String |
Site code definition. |
attached_er_id |
String |
Resource ID. |
attached_er_attachment_id |
String |
Resource ID. |
approved_state |
String |
Approval status.
|
hosted_cloud |
String |
Huawei Cloud or partner cloud.
|
reason |
String |
Reason for rejecting an enterprise router route table as an attachment. Minimum: 0 Maximum: 1024 |
Example Requests
Adding a route table of an enterprise router as an attachment on a central network
POST /v3/{domain_id}/gcn/central-network/{central_network_id}/er-route-table-attachments { "central_network_er_route_table_attachment" : { "name" : "name", "description" : "description", "enterprise_router_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "enterprise_router_project_id" : "32f7402e18154ce5861c9989df956394", "enterprise_router_region_id" : "cn-north-4", "enterprise_router_table_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "attached_er_table_project_id" : "32f7402e18154ce5861c9989df956394", "attached_er_table_region_id" : "cn-north-4", "attached_er_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "attached_er_table_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "central_network_plane_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "hosted_cloud" : "HWCloud" } }
Example Responses
Status code: 202
The route table has been added as an attachment on the central network.
{ "request_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "central_network_er_route_table_attachment" : { "id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "name" : "name", "description" : "description", "domain_id" : "XXX", "state" : "AVAILABLE", "created_at" : "2023-10-09T10:09:28.908Z", "updated_at" : "2023-10-09T10:09:28.908Z", "central_network_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "central_network_plane_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "global_connection_bandwidth_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "bandwidth_type" : "BandwidthPackage", "bandwidth_size" : 20, "is_frozen" : false, "enterprise_router_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "enterprise_router_project_id" : "XXX", "enterprise_router_region_id" : "cn-north-4", "enterprise_router_attachment_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "enterprise_router_table_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "enterprise_router_site_code" : "cn-north-bj4", "attached_er_table_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "attached_er_table_region_id" : "cn-north-4", "attached_er_table_project_id" : "XXX", "attached_er_table_site_code" : "cn-north-bj4", "attached_er_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "attached_er_attachment_id" : "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", "approved_state" : "APPROVING", "hosted_cloud" : "HWCloud", "reason" : "APPROVING" } }
SDK Sample Code
The SDK sample code is as follows.
Adding a route table of an enterprise router as an attachment on a central network
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 59 60 61 |
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 CreateCentralNetworkErRouteTableAttachmentSolution { 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(); CreateCentralNetworkErRouteTableAttachmentRequest request = new CreateCentralNetworkErRouteTableAttachmentRequest(); CreateCentralNetworkErRouteTableAttachmentsRequestBody body = new CreateCentralNetworkErRouteTableAttachmentsRequestBody(); CreateCentralNetworkErRouteTableAttachment centralNetworkErRouteTableAttachmentbody = new CreateCentralNetworkErRouteTableAttachment(); centralNetworkErRouteTableAttachmentbody.withHostedCloud(CreateCentralNetworkErRouteTableAttachment.HostedCloudEnum.fromValue("HWCloud")) .withEnterpriseRouterId("a3bad420-33b8-4e26-9e9b-bdf67aa8e72b") .withEnterpriseRouterProjectId("32f7402e18154ce5861c9989df956394") .withEnterpriseRouterRegionId("cn-north-4") .withDescription("description") .withEnterpriseRouterTableId("a3bad420-33b8-4e26-9e9b-bdf67aa8e72b") .withCentralNetworkPlaneId("a3bad420-33b8-4e26-9e9b-bdf67aa8e72b") .withName("name") .withAttachedErTableRegionId("cn-north-4") .withAttachedErTableId("a3bad420-33b8-4e26-9e9b-bdf67aa8e72b") .withAttachedErTableProjectId("32f7402e18154ce5861c9989df956394") .withAttachedErId("a3bad420-33b8-4e26-9e9b-bdf67aa8e72b"); body.withCentralNetworkErRouteTableAttachment(centralNetworkErRouteTableAttachmentbody); request.withBody(body); try { CreateCentralNetworkErRouteTableAttachmentResponse response = client.createCentralNetworkErRouteTableAttachment(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()); } } } |
Adding a route table of an enterprise router as an attachment on a central network
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 |
# coding: utf-8 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 = __import__('os').getenv("CLOUD_SDK_AK") sk = __import__('os').getenv("CLOUD_SDK_SK") credentials = GlobalCredentials(ak, sk) \ client = CcClient.new_builder() \ .with_credentials(credentials) \ .with_region(CcRegion.value_of("<YOUR REGION>")) \ .build() try: request = CreateCentralNetworkErRouteTableAttachmentRequest() centralNetworkErRouteTableAttachmentbody = CreateCentralNetworkErRouteTableAttachment( hosted_cloud="HWCloud", enterprise_router_id="a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", enterprise_router_project_id="32f7402e18154ce5861c9989df956394", enterprise_router_region_id="cn-north-4", description="description", enterprise_router_table_id="a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", central_network_plane_id="a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", name="name", attached_er_table_region_id="cn-north-4", attached_er_table_id="a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", attached_er_table_project_id="32f7402e18154ce5861c9989df956394", attached_er_id="a3bad420-33b8-4e26-9e9b-bdf67aa8e72b" ) request.body = CreateCentralNetworkErRouteTableAttachmentsRequestBody( central_network_er_route_table_attachment=centralNetworkErRouteTableAttachmentbody ) response = client.create_central_network_er_route_table_attachment(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
Adding a route table of an enterprise router as an attachment on a central network
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.CreateCentralNetworkErRouteTableAttachmentRequest{} descriptionCentralNetworkErRouteTableAttachment:= "description" centralNetworkErRouteTableAttachmentbody := &model.CreateCentralNetworkErRouteTableAttachment{ HostedCloud: model.GetCreateCentralNetworkErRouteTableAttachmentHostedCloudEnum().HW_CLOUD, EnterpriseRouterId: "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", EnterpriseRouterProjectId: "32f7402e18154ce5861c9989df956394", EnterpriseRouterRegionId: "cn-north-4", Description: &descriptionCentralNetworkErRouteTableAttachment, EnterpriseRouterTableId: "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", CentralNetworkPlaneId: "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", Name: "name", AttachedErTableRegionId: "cn-north-4", AttachedErTableId: "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", AttachedErTableProjectId: "32f7402e18154ce5861c9989df956394", AttachedErId: "a3bad420-33b8-4e26-9e9b-bdf67aa8e72b", } request.Body = &model.CreateCentralNetworkErRouteTableAttachmentsRequestBody{ CentralNetworkErRouteTableAttachment: centralNetworkErRouteTableAttachmentbody, } response, err := client.CreateCentralNetworkErRouteTableAttachment(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 |
---|---|
202 |
The route table has been added as an attachment on the central network. |
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