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 | Write |
|
| 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 value, but you must make sure that it is unique among different requests. ClientToken can contain only ASCII characters. Note
If you do not set this parameter, ClientToken is set to the value of RequestId. The value of RequestId may be different for each API request.
| 02fb3da4-130e-11e9-8e44-001**** |
TransitRouterRouteEntryName | string | No | The name of the route. The name must be 0 to 128 characters in length, and can contain letters, digits, and the following special characters: , . ; / @ _ -. | testname |
TransitRouterRouteEntryDescription | string | No | The description of the route. The description must be 0 to 256 characters in length, and can contain letters, digits, and the following special characters: , . ; / @ _ -. | 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. | 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 a precheck to check information such as the permissions and instance status. 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 | 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 | ||||
---|---|---|---|---|---|---|
2023-06-13 | The error codes of the API operation change. | see changesets | ||||
| ||||||
2023-01-04 | The error codes of the API operation change. | see changesets | ||||
|