Adds a route to a route table of an Enterprise Edition transit router.
Operation description
CreateTransitRouterRouteEntry is an asynchronous operation. After you send a request, the route ID is returned but the operation is still being performed in the system background. You can call ListTransitRouterRouteEntries to query the status of a route.
- If a route is in the Creating state, the route is being created. In this case, you can query the route but cannot perform other operations.
- If a route is in the Active state, the route is created.
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- The required resource types are displayed in bold characters.
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
cen:CreateTransitRouterRouteEntry | create |
|
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
ClientToken | string | No | The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters. Note
If you do not specify this parameter, the system automatically uses the request ID as the client token. The request ID is different for each request.
| 02fb3da4-130e-11e9-8e44-001**** |
TransitRouterRouteEntryName | string | No | The name of the route. The name must be 1 to 128 characters in length, and cannot start with http:// or https://. You can also leave this parameter empty. | testname |
TransitRouterRouteEntryDescription | string | No | The description of the route. The description must be 1 to 256 characters in length, and cannot start with http:// or https://. You can also leave this parameter empty. | testdesc |
TransitRouterRouteTableId | string | Yes | The ID of the route table of the Enterprise Edition transit router. | vtb-bp1dudbh2d5na6b50**** |
TransitRouterRouteEntryNextHopType | string | Yes | The type of the next hop. Valid values:
| BlackHole |
TransitRouterRouteEntryDestinationCidrBlock | string | Yes | The destination CIDR block of the route entry. IPv4 and IPv6 addresses are supported. | 192.168.0.0/24 |
TransitRouterRouteEntryNextHopId | string | No | The ID of the network instance connection that you want to specify as the next hop. | tr-attach-nls9fzkfat8934**** |
DryRun | boolean | No | Specifies whether to perform only a dry run, without performing the actual request. Valid values:
| false |
Response parameters
Examples
Sample success responses
JSON
format
{
"TransitRouterRouteEntryId": "rte-75eg4jprkvk0pw****",
"RequestId": "835E7F4B-B380-4E0F-96A5-6EA572388047"
}
Error codes
HTTP status code | Error code | Error message | Description |
---|---|---|---|
400 | DryRunOperation | Request validation has been passed with DryRun flag set. | The error message returned because the dry run request passed the precheck. |
400 | InvalidTransitRouterRouteTableId.NotFound | TransitRouterRouteTableId is not found. | The error message returned because the specified route table ID of the transit router does not exist. |
400 | TransitRouterRouteEntryNextHopId.NotFound | TransitRouterRouteEntryNextHopId is not found. | The error message returned because the specified next hop ID of the transit router does not exist. |
400 | OperationFailed.CreateRouteEntryWithCCNAttachment | Operation failed because Create RouteEntry to CCN Attachment does not support. | The error message returned because routes that point to a CCN attachment are not supported. |
400 | QuotaExceeded.TransitRouterRoutEntry | TransitRouterRoutEntry quota exceeded. | The error message returned because the number of routes has reached the upper limit. |
400 | IllegalParam.TransitRouterDestinationCidrBlock | TransitRouterDestinationCidrBlock is illegal. | The error message returned because the specified destination CIDR block for the transit router (TransitRouterDestinationCidrBlock) is invalid. |
400 | InstanceExist.TransitRouterRouteEntry | The instance TransitRouterRouteEntry already exists. | The error message returned because the route entry that you want to add already exists. |
400 | IncorrectStatus.TransitRouterRouteTable | TransitRouterRouteTable status is invalid. | The error message returned because the transit router is in an invalid state. |
400 | ParamExclusive.RouteEntryIdAndRouteTableIdOrDestCidrBlock | RouteEntryId and TransitRouterRouteTableIdOrDestCidrBlock is mutually exclusive. | The error message returned because the RouteEntryId, TransitRouterRouteTableId, or DestCidrBlock parameter conflicts with each other. |
400 | InvalidDescription | Description is invalid. | The error message returned because the description is invalid. |
400 | InvalidName | Name is invalid. | The error message returned because the specified name is invalid. |
400 | IllegalParam.NextHopType | The NextHopType is illegal. | The error message returned because the NextHopType parameter is set to an invalid value. |
400 | MissingParam.TransitRouterRouteEntryNextHopId | The parameter TransitRouterRouteEntryNextHopId is mandatory | The error message returned because the TransitRouterRouteEntryNextHopId parameter is not set. |
400 | InvalidTransitRouterRouteEntryNextHopId.NotFound | TransitRouterRouteEntryNextHopId is not found | The error message returned because the specified ID of the next hop (TransitRouterRouteEntryNextHopId) specified for the transit router route entry does not exist. |
400 | OperationFailed.CreateRouteEntryWithSameDestinationCidrBlock | Operation failed because Create RouteEntry with same destination cidrblock does not support. | The error message returned because the destination CIDR block of each route entry in the route table must be unique. |
400 | InvalidDestinationCidrBlock.NotFound | DestinationCidrBlock is not found. | The error message returned because the specified destination CIDR block does not exist. |
400 | OperationFailed.CreateRouteEntryWithConnectAttachment | Operation failed because Create RouteEntry to connect Attachment does not support. | You cannot create a route that points to a connect attachment. |
400 | ParamExclusive.NextHopTypeBlackHoleAndNextHopId | TransitRouterRouteEntryNextHopType(BlackHole) and TransitRouterRouteEntryNextHopId is mutually exclusive. | If you set Blackhole Route to Yes, do not specify a next hop. |
400 | InvalidTransitRouterMode.NeedUpgrade | TransitRouter need to upgrade. | The error message returned because the specified transit router mode is not supported. |
400 | OperationFailed.CreateTransitRouterRouteEntryWithVPCAttachment | The specified VPC Attachment has not enable IPv6. | The specified VPC Attachment has not enable IPv6. |
400 | OperationFailed.CreateTransitRouterRouteEntryWithVPNAttachment | Create RouteEntry to VPN Attachment does not support IPv6. | Create RouteEntry to VPN Attachment does not support IPv6. |
400 | NotSupport.AttachmentRoute | Not support such attachment route. | This attachment route is not supported. |
400 | InvalidParameter | Invalid parameter. | The error message returned because the parameter is set to an invalid value. |
400 | Unauthorized | The AccessKeyId is unauthorized. | The error message returned because you do not have the permissions to perform this operation. |
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation |
---|---|---|
2024-07-10 | The Error code has changed | View Change Details |
2024-04-19 | The Error code has changed | View Change Details |
2023-10-18 | The Error code has changed | View Change Details |
2023-06-13 | The Error code has changed | View Change Details |
2023-01-04 | The Error code has changed | View Change Details |