associateCustomerGateway method
Associates a customer gateway with a device and optionally, with a link. If you specify a link, it must be associated with the specified device.
You can only associate customer gateways that are connected to a VPN
attachment on a transit gateway or core network registered in your global
network. When you register a transit gateway or core network, customer
gateways that are connected to the transit gateway are automatically
included in the global network. To list customer gateways that are
connected to a transit gateway, use the DescribeVpnConnections
EC2 API and filter by transit-gateway-id.
You cannot associate a customer gateway with more than one device and link.
May throw AccessDeniedException.
May throw ConflictException.
May throw InternalServerException.
May throw ResourceNotFoundException.
May throw ServiceQuotaExceededException.
May throw ThrottlingException.
May throw ValidationException.
Parameter customerGatewayArn :
The Amazon Resource Name (ARN) of the customer gateway.
Parameter deviceId :
The ID of the device.
Parameter globalNetworkId :
The ID of the global network.
Parameter linkId :
The ID of the link.
Implementation
Future<AssociateCustomerGatewayResponse> associateCustomerGateway({
required String customerGatewayArn,
required String deviceId,
required String globalNetworkId,
String? linkId,
}) async {
final $payload = <String, dynamic>{
'CustomerGatewayArn': customerGatewayArn,
'DeviceId': deviceId,
if (linkId != null) 'LinkId': linkId,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri:
'/global-networks/${Uri.encodeComponent(globalNetworkId)}/customer-gateway-associations',
exceptionFnMap: _exceptionFns,
);
return AssociateCustomerGatewayResponse.fromJson(response);
}