CreateTransitRouterVpcAttachment

更新时间:
复制 MD 格式

Call the CreateTransitRouterVpcAttachment API to attach a VPC to a Transit Router. Once connected, the Transit Router enables private network communication.

Operation description

  • You can create a VPC connection for an Enterprise Edition Transit Router in one of two ways:

    • If you have an Enterprise Edition transit router instance in the target region, you can create a VPC connection by specifying VpcId, ZoneMappings.N.VSwitchId, ZoneMappings.N.ZoneId, TransitRouterId, and RegionId.

    • If you do not have an Enterprise Edition transit router instance in the target region, you can create a VPC connection by specifying VpcId, ZoneMappings.N.VSwitchId, ZoneMappings.N.ZoneId, CenId, and RegionId. When you create the VPC connection, the system automatically creates an Enterprise Edition transit router instance.

  • CreateTransitRouterVpcAttachment is an asynchronous api. After you send a request, the system returns a VPC connection ID, and the connection is created in the background. Call the ListTransitRouterVpcAttachments api to query the status of the VPC connection.

    • The Attaching state indicates that the VPC connection is being created. In this state, you can only query the VPC connection.

    • The Attached state indicates that the VPC connection has been created.

  • By default, a newly created VPC connection is not associated with any transit router route table for route learning or forwarding.

Prerequisites

Before you call this API to create a VPC connection, ensure the following prerequisites are met:

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

cen:CreateTransitRouterVpcAttachment

create

CenInstance

acs:cen:*:{#accountId}:ceninstance/{#ceninstanceId}

TransitRouter

acs:cen:*:{#accountId}:centransitrouter/{#TransitRouterId}

None None

Request parameters

Parameter

Type

Required

Description

Example

ClientToken

string

No

The client token used to ensure request idempotency.

You must generate a value on your client that 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, which is unique for each request.

02fb3da4-130e-11e9-8e44-001****

CenId

string

No

The ID of the CEN instance.

cen-j3jzhw1zpau2km****

TransitRouterId

string

No

The ID of the Enterprise Edition transit router instance.

tr-bp1su1ytdxtataupl****

RegionId

string

No

The ID of the region where the VPC is located.

You can call the DescribeChildInstanceRegions operation to obtain region IDs.

cn-hangzhou

TransitRouterAttachmentName

string

No

The name of the VPC connection.

The name can be empty or 1 to 128 characters long, and cannot start with http:// or https://.

testname

TransitRouterAttachmentDescription

string

No

The description of the VPC connection.

The description can be empty or 1 to 256 characters long, and cannot start with http:// or https://.

testname

VpcId

string

Yes

The ID of the VPC instance.

vpc-bp1kbjcre9vtsebo1****

VpcOwnerId

integer

No

The ID of the Alibaba Cloud account (root account) that owns the VPC instance. By default, this is the ID of the current Alibaba Cloud account.

Note

This parameter is required if you want to attach a cross-account network instance.

1250123456123456

ChargeType

string

No

The billing method. The default value is POSTPAY (pay-as-you-go).

POSTPAY

DryRun

boolean

No

Specifies whether to perform a dry run to check the validity of the request without creating the resource. The check includes permissions and instance status. Valid values:

  • false (default): Sends a normal request. The system creates the VPC connection if the request is valid.

  • true: Sends only a check request. The system checks required parameters, request format, and permissions. The VPC connection is not created. If the check fails, an error is returned. If the check succeeds, the DryRunOperation error code is returned.

false

ZoneMappings

array<object>

Yes

The zone mappings for the VPC connection. For each mapping, you must specify a vSwitch in an availability zone that is supported by the Enterprise Edition transit router.

You can specify up to 10 zone mappings.

object

No

A mapping between a vSwitch and an availability zone.

VSwitchId

string

Yes

The ID of the vSwitch.

vsw-bp1a214sbus8z3b54****

ZoneId

string

Yes

The ID of the availability zone. The availability zone must be supported by the Enterprise Edition transit router.

You can call the DescribeZones operation to query available zones.

cn-hangzhou-h

AutoPublishRouteEnabled

boolean

No

Specifies whether to enable the Enterprise Edition transit router to automatically advertise routes to the VPC instance.

  • false (default): Do not automatically advertise routes.

  • true: Automatically advertise routes.

true

TransitRouterVPCAttachmentOptions

object

No

The properties of the VPC connection. This parameter is deprecated. We recommend that you use the Options parameter instead.

string

No

The properties of the VPC connection. This parameter is deprecated. We recommend that you use the Options parameter instead.

ipv6Support: Specifies whether to enable IPv6. Valid values:

  • enable: Enables IPv6.

  • disable: Disables IPv6.

Note

Before you enable IPv6 for the VPC connection, make sure that IPv6 is also enabled for the VPC and its associated vSwitches. For more information, see AllocateVpcIpv6Cidr and CreateVSwitchCidrReservation.

disable

Tag

array<object>

No

The tags to add to the VPC connection.

You can add up to 20 tags.

object

No

The key and value of the tag.

Key

string

No

The key of the tag.

The tag key cannot be an empty string. The key can be up to 64 characters long and cannot start with aliyun or acs:. It cannot contain http:// or https://.

tagtest

Value

string

No

The value of the tag.

The tag value can be an empty string or a string up to 128 characters long. It cannot start with aliyun or acs:, and cannot contain http:// or https://.

tagtest

Response elements

Element

Type

Description

Example

object

The response data.

TransitRouterAttachmentId

string

The ID of the VPC connection.

tr-attach-ia340z7xis7t5s****

RequestId

string

The request ID.

C087A369-82B9-43EF-91F4-4B63A9C6E6B6

Examples

Success response

JSON format

{
  "TransitRouterAttachmentId": "tr-attach-ia340z7xis7t5s****",
  "RequestId": "C087A369-82B9-43EF-91F4-4B63A9C6E6B6"
}

Error codes

HTTP status code

Error code

Error message

Description

400 OperationUnsupported.TransitRouterRegionId The specified TransitRouterRegion does not support the operation.
400 NoPermission.AliyunServiceRoleForCEN You are not authorized to create the service linked role. Role Name: AliyunServiceRoleForCEN. Service Name: cen.aliyuncs.com. Make sure that the user has been granted the ram:CreateServiceLinkedRole permission. The error message because you do not have the permissions to create the service-linked role whose role name is AliyunServiceRoleForCEN and service name is cen.aliyuncs.com. You must acquire the ram:CreateServiceLinkedRole permission before you can create the service-linked role.
400 IllegalParam.RegionId The Specified Parameter RegionId is illegal The error message returned because the specified region is invalid.
400 MissingParam.CenIdOrRegionId Either CenId or RegionId must be specified. The error message returned because the CenId or RegionId parameter is not set.
400 IllegalParam.ZoneId The specified ZoneId is illegal. The error message returned because the specified zone is invalid.
400 IllegalParam.ChargeType The specified ChargeType is illegal. The error message returned because the specified billing method is invalid.
400 InvalidTransitRouterId.NotFound The specified TransitRouterId is not found. The error message returned because the specified transit router does not exist.
400 IncorrectStatus.VpcResource The resource is not in a valid state for the attachment operation. The error message returned because this operation is not supported when the specified VPC is in an unstable state. Wait until all operations related to the VPC are completed.
400 IncorrectStatus.Vpc The resource is not in a valid state for the attachment operation. The error message returned because the status of the VPC does not support this operation. Try again later.
400 IncorrectStatus.VpcOrVswitch The Vpc Or Vswith is not in a valid state for the attachment operation. The error message returned because the status of the VPC or vSwitch does not support this operation. Try again later.
400 OperationNotSupport.VpcAutoRoutesPublish Auto publish vpc routes is not supported in this region. The error message returned because automatic route advertising for VPCs is not supported in the specified region.
400 InvalidOperation.VpnAssociated The operation is not supported because the VPC is associated with VPN. The error message returned because the specified VPC is associated with a VPN.
400 Forbbiden.TransitRouterServiceNotOpen The user has not open transit router service. The error message returned because the transit router is disabled. Enable the transit router and try again.
400 IllegalParam.ZoneMappings The Specified Parameter ZoneMappings is illegal The error message returned because the specified zone mappings (ZoneMappings) is invalid.
400 OperationUnsupported.TransitRouterType The specified TransitRouterType does not support the operation. The error message returned because this operation is not supported by the specified type of transit router.
400 InvalidCenId.NotFound CenId is not found. The error message returned because the specified CEN instance does not exist.
400 IllegalParam.VSwitchId VSwitchId is illegal. The error message returned because the specified vSwitch ID is invalid.
400 IncorrectStatus.TransitRouterInstance The status of TransitRouter is incorrect. The error message returned because the transit router is in an invalid state.
400 OperationUnsupported.CenFullLevel CEN full level does not support TransitRouter The error message returned because CEN instances of the Full type do not support Enterprise Edition transit routers.
400 IllegalParam.ServiceMode ServiceMode is illegal. The error message returned because the specified service mode is invalid.
400 QuotaFull.ChildInstanceRelatedCen The childinstance has exceed the quota of the times that a childinstance can be attached as an attachment. The error message returned because the number of CEN instances to which the instance is attached has reached the upper limit. You cannot attach the instance to more CEN instances.
400 OperationUnsupported.CloudBoxVswNotSupport Cloud Box vsw does not support. The error message returned because the instance cannot be connected to the CloudBox vSwitch.
400 IncorrectStatus.TransitRouter The status of TransitRouter is incorrect. The error message returned because the status of the transit router does not support this operation. Try again later.
400 Duplicated.ZoneMapping The parameter ZoneMapping is duplicated. The error message returned because the zone mapping contains duplicate routes.
400 QuotaExceeded.CenQuotaVpcAttachPerTransitRouter The maximum number of VPC attachment per Transit Router is exceeded. The error message returned because the specified number of VPCs to be attache to the transit router exceeds the upper limit.
400 IncorrectStatus.VpcRouteTable The VPC route table is not in a desired state. The error message returned because the VPC route table is in an unstable state. Try again later.
400 InvalidStatus.VpcAttachedFullModeCen The VPC has been attached to another CEN instance whose protection level is FULL. The error message returned because the specified VPC is already attached to a CEN instance whose protection level is FULL. The VPC cannot be attached to other CEN instances.
400 Forbbiden.AttachChildInstanceAcrossBid VPCs that belong to another BID cannot be associated. You need to apply for cross-BID attaching. The error message returned because you cannot associate with VPCs that belong to another BID.
400 InvalidOperation.VpcAutoRoutesPublishInOtherCEN The specified VPC already has its routes synchronized with another CEN instance. The error message returned because this operation is not supported when route synchronization is enabled between the current VPC and another CEN instance.
400 QuotaExceeded.VpcAutoRoutesPublishPerTransitRouter The number of VPCs that have route synchronization enabled has reached the upper limit. The error message returned because the number of VPCs that have route synchronization enabled has reached the upper limit.
400 InsufficientIpAddr.vsw Insufficient available IP addresses in the vSwitch. The error message returned because the number of available IP addresses in the vSwitch is insufficient.
400 Forbidden.ResourceOwnerTransitRouterServiceNotOpen The resource owner user has not opened transit router service. The transit router service for the resource owner's account is not currently opened. Please inform them to open the transit router service and then try again.
400 IllegalParam.TransitRouterRegionId TransitRouterRegionId is illegal. The error message returned because the specified transit router region ID (TransitRouterRegionId) is invalid.
400 InvalidTransitRouterMode.NeedUpgrade TransitRouter need to upgrade. The error message returned because the specified transit router mode is not supported.
400 IllegalParam.Ipv6Support Ipv6Support is illegal. Valid Values are [enable, disable]. The Ipv6Support value of the request parameter is invalid. The valid value is enable or disable.
400 OperationFailed.VSwitchNotFound The specified vswitch not found. The specified vswitch not found.
400 OperationFailed.VSwitchIpv6CidrNotAllocated The specified vswitch does not have IPv6 address allocated. The specified vswitch does not have IPv6 address allocated.
400 Forbidden.ResourceOwnerTransitRouterServiceExpired The transit router service of the account to which the resource belongs has been suspended due to arrears. Please notify the other party to renew the service and try again. The transit router service of the account to which the resource belongs has been suspended. Please notify the other party to renew the service and try again.
400 Forbidden.TransitRouterServiceExpired The transit router service is out of service. The transit router service has been suspended due for payment. Please renew the service and try again.
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.
400 InvalidParameter.ResourceType The specified parameter ResourceType is invalid.
400 ParamExclusive.TransitRouterVPCAttachmentOptionsAndOptions When creating or modifying a VPC attachment, the input parameter TransitRouterVPCAttachmentOptions and Options cannot be used at the same time. When creating or modifying a VPC attachment, the input parameter TransitRouterVPCAttachmentOptions and Options cannot be used at the same time.
400 InvalidParameter.ApplianceModeSupport The specified parameter ApplianceModeSupport is invalid. The parameter ApplianceModeSupport entered is illegal.
400 InvalidParameter.Ipv6Support The specified parameter Ipv6Support is invalid. The parameter Ipv6Support entered is illegal.
400 INVALID_OPERATION_RESOURCE_NOT_SUPPORT_APPLIANCE_MODE Only VPC attachment support appliance mode. Only VPC attachment support appliance mode.
404 InvalidVSwitchId.NotFound The specified VSwitchId is not found. The error message returned because the specified vSwitch ID does not exist.
409 InvalidOperation.CenInstanceStatus The CEN instance is not in a valid state for the operation. The error message returned because the status of the CEN instance does not support this operation.
409 IncorrectStatus.VpcSwitch The resource is not in a valid state for the attachment operation.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.