/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the directconnect-2012-10-25.normal.json service model.
*/
using System;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.DirectConnect.Model;
namespace Amazon.DirectConnect
{
///
/// Interface for accessing DirectConnect
///
/// Direct Connect links your internal network to an Direct Connect location over a standard
/// Ethernet fiber-optic cable. One end of the cable is connected to your router, the
/// other to an Direct Connect router. With this connection in place, you can create virtual
/// interfaces directly to the Amazon Web Services Cloud (for example, to Amazon EC2 and
/// Amazon S3) and to Amazon VPC, bypassing Internet service providers in your network
/// path. A connection provides access to all Amazon Web Services Regions except the China
/// (Beijing) and (China) Ningxia Regions. Amazon Web Services resources in the China
/// Regions can only be accessed through locations associated with those Regions.
///
public partial interface IAmazonDirectConnect : IAmazonService, IDisposable
{
#region AcceptDirectConnectGatewayAssociationProposal
///
/// Accepts a proposal request to attach a virtual private gateway or transit gateway
/// to a Direct Connect gateway.
///
/// Container for the necessary parameters to execute the AcceptDirectConnectGatewayAssociationProposal service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AcceptDirectConnectGatewayAssociationProposal service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for AcceptDirectConnectGatewayAssociationProposal Operation
Task AcceptDirectConnectGatewayAssociationProposalAsync(AcceptDirectConnectGatewayAssociationProposalRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region AllocateConnectionOnInterconnect
///
/// Deprecated. Use AllocateHostedConnection instead.
///
///
///
/// Creates a hosted connection on an interconnect.
///
///
///
/// Allocates a VLAN number and a specified amount of bandwidth for use by a hosted connection
/// on the specified interconnect.
///
///
///
/// Intended for use by Direct Connect Partners only.
///
///
///
/// Container for the necessary parameters to execute the AllocateConnectionOnInterconnect service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AllocateConnectionOnInterconnect service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for AllocateConnectionOnInterconnect Operation
[Obsolete("Deprecated in favor of AllocateHostedConnection.")]
Task AllocateConnectionOnInterconnectAsync(AllocateConnectionOnInterconnectRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region AllocateHostedConnection
///
/// Creates a hosted connection on the specified interconnect or a link aggregation group
/// (LAG) of interconnects.
///
///
///
/// Allocates a VLAN number and a specified amount of capacity (bandwidth) for use by
/// a hosted connection on the specified interconnect or LAG of interconnects. Amazon
/// Web Services polices the hosted connection for the specified capacity and the Direct
/// Connect Partner must also police the hosted connection for the specified capacity.
///
///
///
/// Intended for use by Direct Connect Partners only.
///
///
///
/// Container for the necessary parameters to execute the AllocateHostedConnection service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AllocateHostedConnection service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for AllocateHostedConnection Operation
Task AllocateHostedConnectionAsync(AllocateHostedConnectionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region AllocatePrivateVirtualInterface
///
/// Provisions a private virtual interface to be owned by the specified Amazon Web Services
/// account.
///
///
///
/// Virtual interfaces created using this action must be confirmed by the owner using
/// ConfirmPrivateVirtualInterface. Until then, the virtual interface is in the
/// Confirming
state and is not available to handle traffic.
///
///
/// Container for the necessary parameters to execute the AllocatePrivateVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AllocatePrivateVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for AllocatePrivateVirtualInterface Operation
Task AllocatePrivateVirtualInterfaceAsync(AllocatePrivateVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region AllocatePublicVirtualInterface
///
/// Provisions a public virtual interface to be owned by the specified Amazon Web Services
/// account.
///
///
///
/// The owner of a connection calls this function to provision a public virtual interface
/// to be owned by the specified Amazon Web Services account.
///
///
///
/// Virtual interfaces created using this function must be confirmed by the owner using
/// ConfirmPublicVirtualInterface. Until this step has been completed, the virtual
/// interface is in the confirming
state and is not available to handle traffic.
///
///
///
/// When creating an IPv6 public virtual interface, omit the Amazon address and customer
/// address. IPv6 addresses are automatically assigned from the Amazon pool of IPv6 addresses;
/// you cannot specify custom IPv6 addresses.
///
///
/// Container for the necessary parameters to execute the AllocatePublicVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AllocatePublicVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for AllocatePublicVirtualInterface Operation
Task AllocatePublicVirtualInterfaceAsync(AllocatePublicVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region AllocateTransitVirtualInterface
///
/// Provisions a transit virtual interface to be owned by the specified Amazon Web Services
/// account. Use this type of interface to connect a transit gateway to your Direct Connect
/// gateway.
///
///
///
/// The owner of a connection provisions a transit virtual interface to be owned by the
/// specified Amazon Web Services account.
///
///
///
/// After you create a transit virtual interface, it must be confirmed by the owner using
/// ConfirmTransitVirtualInterface. Until this step has been completed, the transit
/// virtual interface is in the requested
state and is not available to handle
/// traffic.
///
///
/// Container for the necessary parameters to execute the AllocateTransitVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AllocateTransitVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for AllocateTransitVirtualInterface Operation
Task AllocateTransitVirtualInterfaceAsync(AllocateTransitVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region AssociateConnectionWithLag
///
/// Associates an existing connection with a link aggregation group (LAG). The connection
/// is interrupted and re-established as a member of the LAG (connectivity to Amazon Web
/// Services is interrupted). The connection must be hosted on the same Direct Connect
/// endpoint as the LAG, and its bandwidth must match the bandwidth for the LAG. You can
/// re-associate a connection that's currently associated with a different LAG; however,
/// if removing the connection would cause the original LAG to fall below its setting
/// for minimum number of operational connections, the request fails.
///
///
///
/// Any virtual interfaces that are directly associated with the connection are automatically
/// re-associated with the LAG. If the connection was originally associated with a different
/// LAG, the virtual interfaces remain associated with the original LAG.
///
///
///
/// For interconnects, any hosted connections are automatically re-associated with the
/// LAG. If the interconnect was originally associated with a different LAG, the hosted
/// connections remain associated with the original LAG.
///
///
/// Container for the necessary parameters to execute the AssociateConnectionWithLag service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AssociateConnectionWithLag service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for AssociateConnectionWithLag Operation
Task AssociateConnectionWithLagAsync(AssociateConnectionWithLagRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region AssociateHostedConnection
///
/// Associates a hosted connection and its virtual interfaces with a link aggregation
/// group (LAG) or interconnect. If the target interconnect or LAG has an existing hosted
/// connection with a conflicting VLAN number or IP address, the operation fails. This
/// action temporarily interrupts the hosted connection's connectivity to Amazon Web Services
/// as it is being migrated.
///
///
///
/// Intended for use by Direct Connect Partners only.
///
///
///
/// Container for the necessary parameters to execute the AssociateHostedConnection service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AssociateHostedConnection service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for AssociateHostedConnection Operation
Task AssociateHostedConnectionAsync(AssociateHostedConnectionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region AssociateMacSecKey
///
/// Associates a MAC Security (MACsec) Connection Key Name (CKN)/ Connectivity Association
/// Key (CAK) pair with an Direct Connect dedicated connection.
///
///
///
/// You must supply either the secretARN,
or the CKN/CAK (ckn
/// and cak
) pair in the request.
///
///
///
/// For information about MAC Security (MACsec) key considerations, see MACsec
/// pre-shared CKN/CAK key considerations in the Direct Connect User Guide.
///
///
/// Container for the necessary parameters to execute the AssociateMacSecKey service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AssociateMacSecKey service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for AssociateMacSecKey Operation
Task AssociateMacSecKeyAsync(AssociateMacSecKeyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region AssociateVirtualInterface
///
/// Associates a virtual interface with a specified link aggregation group (LAG) or connection.
/// Connectivity to Amazon Web Services is temporarily interrupted as the virtual interface
/// is being migrated. If the target connection or LAG has an associated virtual interface
/// with a conflicting VLAN number or a conflicting IP address, the operation fails.
///
///
///
/// Virtual interfaces associated with a hosted connection cannot be associated with a
/// LAG; hosted connections must be migrated along with their virtual interfaces using
/// AssociateHostedConnection.
///
///
///
/// To reassociate a virtual interface to a new connection or LAG, the requester must
/// own either the virtual interface itself or the connection to which the virtual interface
/// is currently associated. Additionally, the requester must own the connection or LAG
/// for the association.
///
///
/// Container for the necessary parameters to execute the AssociateVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AssociateVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for AssociateVirtualInterface Operation
Task AssociateVirtualInterfaceAsync(AssociateVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ConfirmConnection
///
/// Confirms the creation of the specified hosted connection on an interconnect.
///
///
///
/// Upon creation, the hosted connection is initially in the Ordering
state,
/// and remains in this state until the owner confirms creation of the hosted connection.
///
///
/// Container for the necessary parameters to execute the ConfirmConnection service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ConfirmConnection service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for ConfirmConnection Operation
Task ConfirmConnectionAsync(ConfirmConnectionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ConfirmCustomerAgreement
///
/// The confirmation of the terms of agreement when creating the connection/link aggregation
/// group (LAG).
///
/// Container for the necessary parameters to execute the ConfirmCustomerAgreement service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ConfirmCustomerAgreement service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for ConfirmCustomerAgreement Operation
Task ConfirmCustomerAgreementAsync(ConfirmCustomerAgreementRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ConfirmPrivateVirtualInterface
///
/// Accepts ownership of a private virtual interface created by another Amazon Web Services
/// account.
///
///
///
/// After the virtual interface owner makes this call, the virtual interface is created
/// and attached to the specified virtual private gateway or Direct Connect gateway, and
/// is made available to handle traffic.
///
///
/// Container for the necessary parameters to execute the ConfirmPrivateVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ConfirmPrivateVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for ConfirmPrivateVirtualInterface Operation
Task ConfirmPrivateVirtualInterfaceAsync(ConfirmPrivateVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ConfirmPublicVirtualInterface
///
/// Accepts ownership of a public virtual interface created by another Amazon Web Services
/// account.
///
///
///
/// After the virtual interface owner makes this call, the specified virtual interface
/// is created and made available to handle traffic.
///
///
/// Container for the necessary parameters to execute the ConfirmPublicVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ConfirmPublicVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for ConfirmPublicVirtualInterface Operation
Task ConfirmPublicVirtualInterfaceAsync(ConfirmPublicVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ConfirmTransitVirtualInterface
///
/// Accepts ownership of a transit virtual interface created by another Amazon Web Services
/// account.
///
///
///
/// After the owner of the transit virtual interface makes this call, the specified transit
/// virtual interface is created and made available to handle traffic.
///
///
/// Container for the necessary parameters to execute the ConfirmTransitVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ConfirmTransitVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for ConfirmTransitVirtualInterface Operation
Task ConfirmTransitVirtualInterfaceAsync(ConfirmTransitVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateBGPPeer
///
/// Creates a BGP peer on the specified virtual interface.
///
///
///
/// You must create a BGP peer for the corresponding address family (IPv4/IPv6) in order
/// to access Amazon Web Services resources that also use that address family.
///
///
///
/// If logical redundancy is not supported by the connection, interconnect, or LAG, the
/// BGP peer cannot be in the same address family as an existing BGP peer on the virtual
/// interface.
///
///
///
/// When creating a IPv6 BGP peer, omit the Amazon address and customer address. IPv6
/// addresses are automatically assigned from the Amazon pool of IPv6 addresses; you cannot
/// specify custom IPv6 addresses.
///
///
///
/// If you let Amazon Web Services auto-assign IPv4 addresses, a /30 CIDR will be allocated
/// from 169.254.0.0/16. Amazon Web Services does not recommend this option if you intend
/// to use the customer router peer IP address as the source and destination for traffic.
/// Instead you should use RFC 1918 or other addressing, and specify the address yourself.
/// For more information about RFC 1918 see
/// Address Allocation for Private Internets.
///
///
///
/// For a public virtual interface, the Autonomous System Number (ASN) must be private
/// or already on the allow list for the virtual interface.
///
///
/// Container for the necessary parameters to execute the CreateBGPPeer service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateBGPPeer service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for CreateBGPPeer Operation
Task CreateBGPPeerAsync(CreateBGPPeerRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateConnection
///
/// Creates a connection between a customer network and a specific Direct Connect location.
///
///
///
/// A connection links your internal network to an Direct Connect location over a standard
/// Ethernet fiber-optic cable. One end of the cable is connected to your router, the
/// other to an Direct Connect router.
///
///
///
/// To find the locations for your Region, use DescribeLocations.
///
///
///
/// You can automatically add the new connection to a link aggregation group (LAG) by
/// specifying a LAG ID in the request. This ensures that the new connection is allocated
/// on the same Direct Connect endpoint that hosts the specified LAG. If there are no
/// available ports on the endpoint, the request fails and no connection is created.
///
///
/// Container for the necessary parameters to execute the CreateConnection service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateConnection service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for CreateConnection Operation
Task CreateConnectionAsync(CreateConnectionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateDirectConnectGateway
///
/// Creates a Direct Connect gateway, which is an intermediate object that enables you
/// to connect a set of virtual interfaces and virtual private gateways. A Direct Connect
/// gateway is global and visible in any Amazon Web Services Region after it is created.
/// The virtual interfaces and virtual private gateways that are connected through a Direct
/// Connect gateway can be in different Amazon Web Services Regions. This enables you
/// to connect to a VPC in any Region, regardless of the Region in which the virtual interfaces
/// are located, and pass traffic between them.
///
/// Container for the necessary parameters to execute the CreateDirectConnectGateway service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateDirectConnectGateway service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for CreateDirectConnectGateway Operation
Task CreateDirectConnectGatewayAsync(CreateDirectConnectGatewayRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateDirectConnectGatewayAssociation
///
/// Creates an association between a Direct Connect gateway and a virtual private gateway.
/// The virtual private gateway must be attached to a VPC and must not be associated with
/// another Direct Connect gateway.
///
/// Container for the necessary parameters to execute the CreateDirectConnectGatewayAssociation service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateDirectConnectGatewayAssociation service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for CreateDirectConnectGatewayAssociation Operation
Task CreateDirectConnectGatewayAssociationAsync(CreateDirectConnectGatewayAssociationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateDirectConnectGatewayAssociationProposal
///
/// Creates a proposal to associate the specified virtual private gateway or transit gateway
/// with the specified Direct Connect gateway.
///
///
///
/// You can associate a Direct Connect gateway and virtual private gateway or transit
/// gateway that is owned by any Amazon Web Services account.
///
///
/// Container for the necessary parameters to execute the CreateDirectConnectGatewayAssociationProposal service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateDirectConnectGatewayAssociationProposal service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for CreateDirectConnectGatewayAssociationProposal Operation
Task CreateDirectConnectGatewayAssociationProposalAsync(CreateDirectConnectGatewayAssociationProposalRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateInterconnect
///
/// Creates an interconnect between an Direct Connect Partner's network and a specific
/// Direct Connect location.
///
///
///
/// An interconnect is a connection that is capable of hosting other connections. The
/// Direct Connect Partner can use an interconnect to provide Direct Connect hosted connections
/// to customers through their own network services. Like a standard connection, an interconnect
/// links the partner's network to an Direct Connect location over a standard Ethernet
/// fiber-optic cable. One end is connected to the partner's router, the other to an Direct
/// Connect router.
///
///
///
/// You can automatically add the new interconnect to a link aggregation group (LAG) by
/// specifying a LAG ID in the request. This ensures that the new interconnect is allocated
/// on the same Direct Connect endpoint that hosts the specified LAG. If there are no
/// available ports on the endpoint, the request fails and no interconnect is created.
///
///
///
/// For each end customer, the Direct Connect Partner provisions a connection on their
/// interconnect by calling AllocateHostedConnection. The end customer can then
/// connect to Amazon Web Services resources by creating a virtual interface on their
/// connection, using the VLAN assigned to them by the Direct Connect Partner.
///
///
///
/// Intended for use by Direct Connect Partners only.
///
///
///
/// Container for the necessary parameters to execute the CreateInterconnect service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateInterconnect service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for CreateInterconnect Operation
Task CreateInterconnectAsync(CreateInterconnectRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateLag
///
/// Creates a link aggregation group (LAG) with the specified number of bundled physical
/// dedicated connections between the customer network and a specific Direct Connect location.
/// A LAG is a logical interface that uses the Link Aggregation Control Protocol (LACP)
/// to aggregate multiple interfaces, enabling you to treat them as a single interface.
///
///
///
/// All connections in a LAG must use the same bandwidth (either 1Gbps or 10Gbps) and
/// must terminate at the same Direct Connect endpoint.
///
///
///
/// You can have up to 10 dedicated connections per LAG. Regardless of this limit, if
/// you request more connections for the LAG than Direct Connect can allocate on a single
/// endpoint, no LAG is created.
///
///
///
/// You can specify an existing physical dedicated connection or interconnect to include
/// in the LAG (which counts towards the total number of connections). Doing so interrupts
/// the current physical dedicated connection, and re-establishes them as a member of
/// the LAG. The LAG will be created on the same Direct Connect endpoint to which the
/// dedicated connection terminates. Any virtual interfaces associated with the dedicated
/// connection are automatically disassociated and re-associated with the LAG. The connection
/// ID does not change.
///
///
///
/// If the Amazon Web Services account used to create a LAG is a registered Direct Connect
/// Partner, the LAG is automatically enabled to host sub-connections. For a LAG owned
/// by a partner, any associated virtual interfaces cannot be directly configured.
///
///
/// Container for the necessary parameters to execute the CreateLag service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateLag service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for CreateLag Operation
Task CreateLagAsync(CreateLagRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreatePrivateVirtualInterface
///
/// Creates a private virtual interface. A virtual interface is the VLAN that transports
/// Direct Connect traffic. A private virtual interface can be connected to either a Direct
/// Connect gateway or a Virtual Private Gateway (VGW). Connecting the private virtual
/// interface to a Direct Connect gateway enables the possibility for connecting to multiple
/// VPCs, including VPCs in different Amazon Web Services Regions. Connecting the private
/// virtual interface to a VGW only provides access to a single VPC within the same Region.
///
///
///
/// Setting the MTU of a virtual interface to 9001 (jumbo frames) can cause an update
/// to the underlying physical connection if it wasn't updated to support jumbo frames.
/// Updating the connection disrupts network connectivity for all virtual interfaces associated
/// with the connection for up to 30 seconds. To check whether your connection supports
/// jumbo frames, call DescribeConnections. To check whether your virtual interface
/// supports jumbo frames, call DescribeVirtualInterfaces.
///
///
/// Container for the necessary parameters to execute the CreatePrivateVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreatePrivateVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for CreatePrivateVirtualInterface Operation
Task CreatePrivateVirtualInterfaceAsync(CreatePrivateVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreatePublicVirtualInterface
///
/// Creates a public virtual interface. A virtual interface is the VLAN that transports
/// Direct Connect traffic. A public virtual interface supports sending traffic to public
/// services of Amazon Web Services such as Amazon S3.
///
///
///
/// When creating an IPv6 public virtual interface (addressFamily
is ipv6
),
/// leave the customer
and amazon
address fields blank to use
/// auto-assigned IPv6 space. Custom IPv6 addresses are not supported.
///
///
/// Container for the necessary parameters to execute the CreatePublicVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreatePublicVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for CreatePublicVirtualInterface Operation
Task CreatePublicVirtualInterfaceAsync(CreatePublicVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateTransitVirtualInterface
///
/// Creates a transit virtual interface. A transit virtual interface should be used to
/// access one or more transit gateways associated with Direct Connect gateways. A transit
/// virtual interface enables the connection of multiple VPCs attached to a transit gateway
/// to a Direct Connect gateway.
///
///
///
/// If you associate your transit gateway with one or more Direct Connect gateways, the
/// Autonomous System Number (ASN) used by the transit gateway and the Direct Connect
/// gateway must be different. For example, if you use the default ASN 64512 for both
/// your the transit gateway and Direct Connect gateway, the association request fails.
///
///
///
/// A jumbo MTU value must be either 1500 or 8500. No other values will be accepted. Setting
/// the MTU of a virtual interface to 8500 (jumbo frames) can cause an update to the underlying
/// physical connection if it wasn't updated to support jumbo frames. Updating the connection
/// disrupts network connectivity for all virtual interfaces associated with the connection
/// for up to 30 seconds. To check whether your connection supports jumbo frames, call
/// DescribeConnections. To check whether your virtual interface supports jumbo
/// frames, call DescribeVirtualInterfaces.
///
///
/// Container for the necessary parameters to execute the CreateTransitVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateTransitVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for CreateTransitVirtualInterface Operation
Task CreateTransitVirtualInterfaceAsync(CreateTransitVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteBGPPeer
///
/// Deletes the specified BGP peer on the specified virtual interface with the specified
/// customer address and ASN.
///
///
///
/// You cannot delete the last BGP peer from a virtual interface.
///
///
/// Container for the necessary parameters to execute the DeleteBGPPeer service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteBGPPeer service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DeleteBGPPeer Operation
Task DeleteBGPPeerAsync(DeleteBGPPeerRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteConnection
///
/// Deletes the specified connection.
///
///
///
/// Deleting a connection only stops the Direct Connect port hour and data transfer charges.
/// If you are partnering with any third parties to connect with the Direct Connect location,
/// you must cancel your service with them separately.
///
///
/// Container for the necessary parameters to execute the DeleteConnection service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteConnection service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DeleteConnection Operation
Task DeleteConnectionAsync(DeleteConnectionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteDirectConnectGateway
///
/// Deletes the specified Direct Connect gateway. You must first delete all virtual interfaces
/// that are attached to the Direct Connect gateway and disassociate all virtual private
/// gateways associated with the Direct Connect gateway.
///
/// Container for the necessary parameters to execute the DeleteDirectConnectGateway service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteDirectConnectGateway service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DeleteDirectConnectGateway Operation
Task DeleteDirectConnectGatewayAsync(DeleteDirectConnectGatewayRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteDirectConnectGatewayAssociation
///
/// Deletes the association between the specified Direct Connect gateway and virtual private
/// gateway.
///
///
///
/// We recommend that you specify the associationID
to delete the association.
/// Alternatively, if you own virtual gateway and a Direct Connect gateway association,
/// you can specify the virtualGatewayId
and directConnectGatewayId
/// to delete an association.
///
///
/// Container for the necessary parameters to execute the DeleteDirectConnectGatewayAssociation service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteDirectConnectGatewayAssociation service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DeleteDirectConnectGatewayAssociation Operation
Task DeleteDirectConnectGatewayAssociationAsync(DeleteDirectConnectGatewayAssociationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteDirectConnectGatewayAssociationProposal
///
/// Deletes the association proposal request between the specified Direct Connect gateway
/// and virtual private gateway or transit gateway.
///
/// Container for the necessary parameters to execute the DeleteDirectConnectGatewayAssociationProposal service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteDirectConnectGatewayAssociationProposal service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DeleteDirectConnectGatewayAssociationProposal Operation
Task DeleteDirectConnectGatewayAssociationProposalAsync(DeleteDirectConnectGatewayAssociationProposalRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteInterconnect
///
/// Deletes the specified interconnect.
///
///
///
/// Intended for use by Direct Connect Partners only.
///
///
///
/// Container for the necessary parameters to execute the DeleteInterconnect service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteInterconnect service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DeleteInterconnect Operation
Task DeleteInterconnectAsync(DeleteInterconnectRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteLag
///
/// Deletes the specified link aggregation group (LAG). You cannot delete a LAG if it
/// has active virtual interfaces or hosted connections.
///
/// Container for the necessary parameters to execute the DeleteLag service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteLag service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DeleteLag Operation
Task DeleteLagAsync(DeleteLagRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteVirtualInterface
///
/// Deletes a virtual interface.
///
/// Container for the necessary parameters to execute the DeleteVirtualInterface service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteVirtualInterface service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DeleteVirtualInterface Operation
Task DeleteVirtualInterfaceAsync(DeleteVirtualInterfaceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeConnectionLoa
///
/// Deprecated. Use DescribeLoa instead.
///
///
///
/// Gets the LOA-CFA for a connection.
///
///
///
/// The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is a document
/// that your APN partner or service provider uses when establishing your cross connect
/// to Amazon Web Services at the colocation facility. For more information, see Requesting
/// Cross Connects at Direct Connect Locations in the Direct Connect User Guide.
///
///
/// Container for the necessary parameters to execute the DescribeConnectionLoa service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeConnectionLoa service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeConnectionLoa Operation
[Obsolete("Deprecated in favor of DescribeLoa.")]
Task DescribeConnectionLoaAsync(DescribeConnectionLoaRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeConnections
///
/// Displays the specified connection or all connections in this Region.
///
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeConnections service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeConnections Operation
Task DescribeConnectionsAsync(System.Threading.CancellationToken cancellationToken = default(CancellationToken));
///
/// Displays the specified connection or all connections in this Region.
///
/// Container for the necessary parameters to execute the DescribeConnections service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeConnections service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeConnections Operation
Task DescribeConnectionsAsync(DescribeConnectionsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeConnectionsOnInterconnect
///
/// Deprecated. Use DescribeHostedConnections instead.
///
///
///
/// Lists the connections that have been provisioned on the specified interconnect.
///
///
///
/// Intended for use by Direct Connect Partners only.
///
///
///
/// Container for the necessary parameters to execute the DescribeConnectionsOnInterconnect service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeConnectionsOnInterconnect service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeConnectionsOnInterconnect Operation
[Obsolete("Deprecated in favor of DescribeHostedConnections.")]
Task DescribeConnectionsOnInterconnectAsync(DescribeConnectionsOnInterconnectRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeCustomerMetadata
///
/// Get and view a list of customer agreements, along with their signed status and whether
/// the customer is an NNIPartner, NNIPartnerV2, or a nonPartner.
///
/// Container for the necessary parameters to execute the DescribeCustomerMetadata service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeCustomerMetadata service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeCustomerMetadata Operation
Task DescribeCustomerMetadataAsync(DescribeCustomerMetadataRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeDirectConnectGatewayAssociationProposals
///
/// Describes one or more association proposals for connection between a virtual private
/// gateway or transit gateway and a Direct Connect gateway.
///
/// Container for the necessary parameters to execute the DescribeDirectConnectGatewayAssociationProposals service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeDirectConnectGatewayAssociationProposals service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeDirectConnectGatewayAssociationProposals Operation
Task DescribeDirectConnectGatewayAssociationProposalsAsync(DescribeDirectConnectGatewayAssociationProposalsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeDirectConnectGatewayAssociations
///
/// Lists the associations between your Direct Connect gateways and virtual private gateways
/// and transit gateways. You must specify one of the following:
///
/// -
///
/// A Direct Connect gateway
///
///
///
/// The response contains all virtual private gateways and transit gateways associated
/// with the Direct Connect gateway.
///
///
-
///
/// A virtual private gateway
///
///
///
/// The response contains the Direct Connect gateway.
///
///
-
///
/// A transit gateway
///
///
///
/// The response contains the Direct Connect gateway.
///
///
-
///
/// A Direct Connect gateway and a virtual private gateway
///
///
///
/// The response contains the association between the Direct Connect gateway and virtual
/// private gateway.
///
///
-
///
/// A Direct Connect gateway and a transit gateway
///
///
///
/// The response contains the association between the Direct Connect gateway and transit
/// gateway.
///
///
///
/// Container for the necessary parameters to execute the DescribeDirectConnectGatewayAssociations service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeDirectConnectGatewayAssociations service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeDirectConnectGatewayAssociations Operation
Task DescribeDirectConnectGatewayAssociationsAsync(DescribeDirectConnectGatewayAssociationsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeDirectConnectGatewayAttachments
///
/// Lists the attachments between your Direct Connect gateways and virtual interfaces.
/// You must specify a Direct Connect gateway, a virtual interface, or both. If you specify
/// a Direct Connect gateway, the response contains all virtual interfaces attached to
/// the Direct Connect gateway. If you specify a virtual interface, the response contains
/// all Direct Connect gateways attached to the virtual interface. If you specify both,
/// the response contains the attachment between the Direct Connect gateway and the virtual
/// interface.
///
/// Container for the necessary parameters to execute the DescribeDirectConnectGatewayAttachments service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeDirectConnectGatewayAttachments service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeDirectConnectGatewayAttachments Operation
Task DescribeDirectConnectGatewayAttachmentsAsync(DescribeDirectConnectGatewayAttachmentsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeDirectConnectGateways
///
/// Lists all your Direct Connect gateways or only the specified Direct Connect gateway.
/// Deleted Direct Connect gateways are not returned.
///
/// Container for the necessary parameters to execute the DescribeDirectConnectGateways service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeDirectConnectGateways service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeDirectConnectGateways Operation
Task DescribeDirectConnectGatewaysAsync(DescribeDirectConnectGatewaysRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeHostedConnections
///
/// Lists the hosted connections that have been provisioned on the specified interconnect
/// or link aggregation group (LAG).
///
///
///
/// Intended for use by Direct Connect Partners only.
///
///
///
/// Container for the necessary parameters to execute the DescribeHostedConnections service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeHostedConnections service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeHostedConnections Operation
Task DescribeHostedConnectionsAsync(DescribeHostedConnectionsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeInterconnectLoa
///
/// Deprecated. Use DescribeLoa instead.
///
///
///
/// Gets the LOA-CFA for the specified interconnect.
///
///
///
/// The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is a document
/// that is used when establishing your cross connect to Amazon Web Services at the colocation
/// facility. For more information, see Requesting
/// Cross Connects at Direct Connect Locations in the Direct Connect User Guide.
///
///
/// Container for the necessary parameters to execute the DescribeInterconnectLoa service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeInterconnectLoa service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeInterconnectLoa Operation
[Obsolete("Deprecated in favor of DescribeLoa.")]
Task DescribeInterconnectLoaAsync(DescribeInterconnectLoaRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeInterconnects
///
/// Lists the interconnects owned by the Amazon Web Services account or only the specified
/// interconnect.
///
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeInterconnects service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeInterconnects Operation
Task DescribeInterconnectsAsync(System.Threading.CancellationToken cancellationToken = default(CancellationToken));
///
/// Lists the interconnects owned by the Amazon Web Services account or only the specified
/// interconnect.
///
/// Container for the necessary parameters to execute the DescribeInterconnects service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeInterconnects service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeInterconnects Operation
Task DescribeInterconnectsAsync(DescribeInterconnectsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeLags
///
/// Describes all your link aggregation groups (LAG) or the specified LAG.
///
/// Container for the necessary parameters to execute the DescribeLags service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeLags service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeLags Operation
Task DescribeLagsAsync(DescribeLagsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeLoa
///
/// Gets the LOA-CFA for a connection, interconnect, or link aggregation group (LAG).
///
///
///
/// The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is a document
/// that is used when establishing your cross connect to Amazon Web Services at the colocation
/// facility. For more information, see Requesting
/// Cross Connects at Direct Connect Locations in the Direct Connect User Guide.
///
///
/// Container for the necessary parameters to execute the DescribeLoa service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeLoa service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeLoa Operation
Task DescribeLoaAsync(DescribeLoaRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeLocations
///
/// Lists the Direct Connect locations in the current Amazon Web Services Region. These
/// are the locations that can be selected when calling CreateConnection or CreateInterconnect.
///
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeLocations service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeLocations Operation
Task DescribeLocationsAsync(System.Threading.CancellationToken cancellationToken = default(CancellationToken));
///
/// Lists the Direct Connect locations in the current Amazon Web Services Region. These
/// are the locations that can be selected when calling CreateConnection or CreateInterconnect.
///
/// Container for the necessary parameters to execute the DescribeLocations service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeLocations service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeLocations Operation
Task DescribeLocationsAsync(DescribeLocationsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeRouterConfiguration
///
/// Details about the router.
///
/// Container for the necessary parameters to execute the DescribeRouterConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeRouterConfiguration service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeRouterConfiguration Operation
Task DescribeRouterConfigurationAsync(DescribeRouterConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeTags
///
/// Describes the tags associated with the specified Direct Connect resources.
///
/// Container for the necessary parameters to execute the DescribeTags service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeTags service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeTags Operation
Task DescribeTagsAsync(DescribeTagsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeVirtualGateways
///
/// Lists the virtual private gateways owned by the Amazon Web Services account.
///
///
///
/// You can create one or more Direct Connect private virtual interfaces linked to a virtual
/// private gateway.
///
///
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeVirtualGateways service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeVirtualGateways Operation
Task DescribeVirtualGatewaysAsync(System.Threading.CancellationToken cancellationToken = default(CancellationToken));
///
/// Lists the virtual private gateways owned by the Amazon Web Services account.
///
///
///
/// You can create one or more Direct Connect private virtual interfaces linked to a virtual
/// private gateway.
///
///
/// Container for the necessary parameters to execute the DescribeVirtualGateways service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeVirtualGateways service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeVirtualGateways Operation
Task DescribeVirtualGatewaysAsync(DescribeVirtualGatewaysRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeVirtualInterfaces
///
/// Displays all virtual interfaces for an Amazon Web Services account. Virtual interfaces
/// deleted fewer than 15 minutes before you make the request are also returned. If you
/// specify a connection ID, only the virtual interfaces associated with the connection
/// are returned. If you specify a virtual interface ID, then only a single virtual interface
/// is returned.
///
///
///
/// A virtual interface (VLAN) transmits the traffic between the Direct Connect location
/// and the customer network.
///
///
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeVirtualInterfaces service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeVirtualInterfaces Operation
Task DescribeVirtualInterfacesAsync(System.Threading.CancellationToken cancellationToken = default(CancellationToken));
///
/// Displays all virtual interfaces for an Amazon Web Services account. Virtual interfaces
/// deleted fewer than 15 minutes before you make the request are also returned. If you
/// specify a connection ID, only the virtual interfaces associated with the connection
/// are returned. If you specify a virtual interface ID, then only a single virtual interface
/// is returned.
///
///
///
/// A virtual interface (VLAN) transmits the traffic between the Direct Connect location
/// and the customer network.
///
///
/// Container for the necessary parameters to execute the DescribeVirtualInterfaces service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeVirtualInterfaces service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DescribeVirtualInterfaces Operation
Task DescribeVirtualInterfacesAsync(DescribeVirtualInterfacesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DisassociateConnectionFromLag
///
/// Disassociates a connection from a link aggregation group (LAG). The connection is
/// interrupted and re-established as a standalone connection (the connection is not deleted;
/// to delete the connection, use the DeleteConnection request). If the LAG has
/// associated virtual interfaces or hosted connections, they remain associated with the
/// LAG. A disassociated connection owned by an Direct Connect Partner is automatically
/// converted to an interconnect.
///
///
///
/// If disassociating the connection would cause the LAG to fall below its setting for
/// minimum number of operational connections, the request fails, except when it's the
/// last member of the LAG. If all connections are disassociated, the LAG continues to
/// exist as an empty LAG with no physical connections.
///
///
/// Container for the necessary parameters to execute the DisassociateConnectionFromLag service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DisassociateConnectionFromLag service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DisassociateConnectionFromLag Operation
Task DisassociateConnectionFromLagAsync(DisassociateConnectionFromLagRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DisassociateMacSecKey
///
/// Removes the association between a MAC Security (MACsec) security key and an Direct
/// Connect dedicated connection.
///
/// Container for the necessary parameters to execute the DisassociateMacSecKey service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DisassociateMacSecKey service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for DisassociateMacSecKey Operation
Task DisassociateMacSecKeyAsync(DisassociateMacSecKeyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListVirtualInterfaceTestHistory
///
/// Lists the virtual interface failover test history.
///
/// Container for the necessary parameters to execute the ListVirtualInterfaceTestHistory service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListVirtualInterfaceTestHistory service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for ListVirtualInterfaceTestHistory Operation
Task ListVirtualInterfaceTestHistoryAsync(ListVirtualInterfaceTestHistoryRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region StartBgpFailoverTest
///
/// Starts the virtual interface failover test that verifies your configuration meets
/// your resiliency requirements by placing the BGP peering session in the DOWN state.
/// You can then send traffic to verify that there are no outages.
///
///
///
/// You can run the test on public, private, transit, and hosted virtual interfaces.
///
///
///
/// You can use ListVirtualInterfaceTestHistory
/// to view the virtual interface test history.
///
///
///
/// If you need to stop the test before the test interval completes, use StopBgpFailoverTest.
///
///
/// Container for the necessary parameters to execute the StartBgpFailoverTest service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the StartBgpFailoverTest service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for StartBgpFailoverTest Operation
Task StartBgpFailoverTestAsync(StartBgpFailoverTestRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region StopBgpFailoverTest
///
/// Stops the virtual interface failover test.
///
/// Container for the necessary parameters to execute the StopBgpFailoverTest service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the StopBgpFailoverTest service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for StopBgpFailoverTest Operation
Task StopBgpFailoverTestAsync(StopBgpFailoverTestRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region TagResource
///
/// Adds the specified tags to the specified Direct Connect resource. Each resource can
/// have a maximum of 50 tags.
///
///
///
/// Each tag consists of a key and an optional value. If a tag with the same key is already
/// associated with the resource, this action updates its value.
///
///
/// Container for the necessary parameters to execute the TagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the TagResource service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
///
/// A tag key was specified more than once.
///
///
/// You have reached the limit on the number of tags that can be assigned.
///
/// REST API Reference for TagResource Operation
Task TagResourceAsync(TagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UntagResource
///
/// Removes one or more tags from the specified Direct Connect resource.
///
/// Container for the necessary parameters to execute the UntagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UntagResource service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for UntagResource Operation
Task UntagResourceAsync(UntagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateConnection
///
/// Updates the Direct Connect dedicated connection configuration.
///
///
///
/// You can update the following parameters for a connection:
///
/// -
///
/// The connection name
///
///
-
///
/// The connection's MAC Security (MACsec) encryption mode.
///
///
///
/// Container for the necessary parameters to execute the UpdateConnection service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateConnection service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for UpdateConnection Operation
Task UpdateConnectionAsync(UpdateConnectionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateDirectConnectGateway
///
/// Updates the name of a current Direct Connect gateway.
///
/// Container for the necessary parameters to execute the UpdateDirectConnectGateway service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateDirectConnectGateway service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for UpdateDirectConnectGateway Operation
Task UpdateDirectConnectGatewayAsync(UpdateDirectConnectGatewayRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateDirectConnectGatewayAssociation
///
/// Updates the specified attributes of the Direct Connect gateway association.
///
///
///
/// Add or remove prefixes from the association.
///
///
/// Container for the necessary parameters to execute the UpdateDirectConnectGatewayAssociation service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateDirectConnectGatewayAssociation service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for UpdateDirectConnectGatewayAssociation Operation
Task UpdateDirectConnectGatewayAssociationAsync(UpdateDirectConnectGatewayAssociationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateLag
///
/// Updates the attributes of the specified link aggregation group (LAG).
///
///
///
/// You can update the following LAG attributes:
///
/// -
///
/// The name of the LAG.
///
///
-
///
/// The value for the minimum number of connections that must be operational for the LAG
/// itself to be operational.
///
///
-
///
/// The LAG's MACsec encryption mode.
///
///
///
/// Amazon Web Services assigns this value to each connection which is part of the LAG.
///
///
-
///
/// The tags
///
///
///
/// If you adjust the threshold value for the minimum number of operational connections,
/// ensure that the new value does not cause the LAG to fall below the threshold and become
/// non-operational.
///
///
///
/// Container for the necessary parameters to execute the UpdateLag service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateLag service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for UpdateLag Operation
Task UpdateLagAsync(UpdateLagRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateVirtualInterfaceAttributes
///
/// Updates the specified attributes of the specified virtual private interface.
///
///
///
/// Setting the MTU of a virtual interface to 9001 (jumbo frames) can cause an update
/// to the underlying physical connection if it wasn't updated to support jumbo frames.
/// Updating the connection disrupts network connectivity for all virtual interfaces associated
/// with the connection for up to 30 seconds. To check whether your connection supports
/// jumbo frames, call DescribeConnections. To check whether your virtual interface
/// supports jumbo frames, call DescribeVirtualInterfaces.
///
///
/// Container for the necessary parameters to execute the UpdateVirtualInterfaceAttributes service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateVirtualInterfaceAttributes service method, as returned by DirectConnect.
///
/// One or more parameters are not valid.
///
///
/// A server-side error occurred.
///
/// REST API Reference for UpdateVirtualInterfaceAttributes Operation
Task UpdateVirtualInterfaceAttributesAsync(UpdateVirtualInterfaceAttributesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
}
}