SDK for PHP V3

Client: Aws\Interconnect\InterconnectClient
Service ID: interconnect
Version: 2022-07-26

This page describes the parameters and results for the operations of the Interconnect (2022-07-26), and shows how to use the Aws\Interconnect\InterconnectClient object to call the described operations. This documentation is specific to the 2022-07-26 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

AcceptConnectionProposal ( array $params = [] )
Accepts a connection proposal which was generated at a supported partner's portal.
CreateConnection ( array $params = [] )
Initiates the process to create a Connection across the specified Environment.
DeleteConnection ( array $params = [] )
Deletes an existing Connection with the supplied identifier.
DescribeConnectionProposal ( array $params = [] )
Describes the details of a connection proposal generated at a partner's portal.
GetConnection ( array $params = [] )
Describes the current state of a Connection resource as specified by the identifier.
GetEnvironment ( array $params = [] )
Describes a specific Environment
ListAttachPoints ( array $params = [] )
Lists all Attach Points the caller has access to that are valid for the specified Environment.
ListConnections ( array $params = [] )
Lists all connection objects to which the caller has access.
ListEnvironments ( array $params = [] )
Lists all of the environments that can produce connections that will land in the called AWS region.
ListTagsForResource ( array $params = [] )
List all current tags on the specified resource.
TagResource ( array $params = [] )
Add new tags to the specified resource.
UntagResource ( array $params = [] )
Removes tags from the specified resource.
UpdateConnection ( array $params = [] )
Modifies an existing connection.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

ListAttachPoints
ListConnections
ListEnvironments

Waiters

Waiters allow you to poll a resource until it enters into a desired state. A waiter has a name used to describe what it does, and is associated with an API operation. When creating a waiter, you can provide the API operation parameters associated with the corresponding operation. Waiters can be accessed using the getWaiter($waiterName, $operationParameters) method of a client object. This client supports the following waiters:

Waiter name API Operation Delay Max Attempts
ConnectionAvailable GetConnection 30 5
ConnectionDeleted GetConnection 30 5

Operations

AcceptConnectionProposal

$result = $client->acceptConnectionProposal([/* ... */]);
$promise = $client->acceptConnectionProposalAsync([/* ... */]);

Accepts a connection proposal which was generated at a supported partner's portal.

The proposal contains the Environment and bandwidth that were chosen on the partner's portal and cannot be modified.

Upon accepting the proposal a connection will be made between the AWS network as accessed via the selected Attach Point and the network previously selected network on the partner's portal.

Parameter Syntax

$result = $client->acceptConnectionProposal([
    'activationKey' => '<string>', // REQUIRED
    'attachPoint' => [ // REQUIRED
        'arn' => '<string>',
        'directConnectGateway' => '<string>',
    ],
    'clientToken' => '<string>',
    'description' => '<string>',
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
activationKey
Required: Yes
Type: string

An Activation Key that was generated on a supported partner's portal. This key captures the desired parameters from the initial creation request.

The details of this request can be described using with DescribeConnectionProposal.

attachPoint
Required: Yes
Type: AttachPoint structure

The Attach Point to which the connection should be associated.

clientToken
Type: string

Idempotency token used for the request.

description
Type: string

A description to distinguish this Connection.

tags
Type: Associative array of custom strings keys (TagKey) to strings

The tags to associate with the resulting Connection.

Result Syntax

[
    'connection' => [
        'activationKey' => '<string>',
        'arn' => '<string>',
        'attachPoint' => [
            'arn' => '<string>',
            'directConnectGateway' => '<string>',
        ],
        'bandwidth' => '<string>',
        'billingTier' => <integer>,
        'description' => '<string>',
        'environmentId' => '<string>',
        'id' => '<string>',
        'location' => '<string>',
        'ownerAccount' => '<string>',
        'provider' => [
            'cloudServiceProvider' => '<string>',
            'lastMileProvider' => '<string>',
        ],
        'sharedId' => '<string>',
        'state' => 'available|requested|pending|down|deleting|deleted|failed|updating',
        'tags' => ['<string>', ...],
        'type' => '<string>',
    ],
]

Result Details

Members
connection
Type: Connection structure

The created Connection object.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: Accept Connection Proposal
$result = $client->acceptConnectionProposal([
    'activationKey' => '',
    'attachPoint' => [
        'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
    ],
]);

Result syntax:

[
    'connection' => [
        'type' => 'Multicloud',
        'activationKey' => '',
        'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
        'attachPoint' => [
            'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
        ],
        'bandwidth' => '1Gbps',
        'description' => 'My MultiCloud Connection',
        'environmentId' => 'mce-aws-acme-1',
        'id' => 'mcc-abc12345',
        'location' => 'acme-east',
        'ownerAccount' => '000000000000',
        'provider' => [
            'cloudServiceProvider' => 'acme',
        ],
        'sharedId' => 'B0615F4D-E588-47AD-9D04-1449EAA61C91',
        'state' => 'pending',
    ],
]

CreateConnection

$result = $client->createConnection([/* ... */]);
$promise = $client->createConnectionAsync([/* ... */]);

Initiates the process to create a Connection across the specified Environment.

The Environment dictates the specified partner and location to which the other end of the connection should attach. You can see a list of the available Environments by calling ListEnvironments

The Attach Point specifies where within the AWS Network your connection will logically connect.

After a successful call to this method, the resulting Connection will return an Activation Key which will need to be brought to the specific partner's portal to confirm the Connection on both sides. (See Environment$activationPageUrl for a direct link to the partner portal).

Parameter Syntax

$result = $client->createConnection([
    'attachPoint' => [ // REQUIRED
        'arn' => '<string>',
        'directConnectGateway' => '<string>',
    ],
    'bandwidth' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'description' => '<string>',
    'environmentId' => '<string>', // REQUIRED
    'remoteAccount' => [
        'identifier' => '<string>',
    ],
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
attachPoint
Required: Yes
Type: AttachPoint structure

The Attach Point to which the connection should be associated."

bandwidth
Required: Yes
Type: string

The desired bandwidth of the requested Connection

clientToken
Type: string

Idempotency token used for the request.

description
Type: string

A description to distinguish this Connection.

environmentId
Required: Yes
Type: string

The identifier of the Environment across which this Connection should be created.

The available Environment objects can be determined using ListEnvironments.

remoteAccount
Type: RemoteAccountIdentifier structure

Account and/or principal identifying information that can be verified by the partner of this specific Environment.

tags
Type: Associative array of custom strings keys (TagKey) to strings

The tag to associate with the resulting Connection.

Result Syntax

[
    'connection' => [
        'activationKey' => '<string>',
        'arn' => '<string>',
        'attachPoint' => [
            'arn' => '<string>',
            'directConnectGateway' => '<string>',
        ],
        'bandwidth' => '<string>',
        'billingTier' => <integer>,
        'description' => '<string>',
        'environmentId' => '<string>',
        'id' => '<string>',
        'location' => '<string>',
        'ownerAccount' => '<string>',
        'provider' => [
            'cloudServiceProvider' => '<string>',
            'lastMileProvider' => '<string>',
        ],
        'sharedId' => '<string>',
        'state' => 'available|requested|pending|down|deleting|deleted|failed|updating',
        'tags' => ['<string>', ...],
        'type' => '<string>',
    ],
]

Result Details

Members
connection
Type: Connection structure

The resulting Connection.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: Create Connection on specific environment
$result = $client->createConnection([
    'attachPoint' => [
        'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
    ],
    'bandwidth' => '1Gbps',
    'environmentId' => 'mce-aws-acme-1',
    'remoteAccount' => [
        'identifier' => 'PartnerAccountDetails',
    ],
]);

Result syntax:

[
    'connection' => [
        'type' => 'Multicloud',
        'activationKey' => '',
        'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
        'attachPoint' => [
            'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
        ],
        'bandwidth' => '1Gbps',
        'description' => 'My MultiCloud Connection',
        'environmentId' => 'mce-aws-acme-1',
        'id' => 'mcc-abc12345',
        'location' => 'acme-east',
        'ownerAccount' => '000000000000',
        'provider' => [
            'cloudServiceProvider' => 'acme',
        ],
        'sharedId' => 'B0615F4D-E588-47AD-9D04-1449EAA61C91',
        'state' => 'requested',
    ],
]

DeleteConnection

$result = $client->deleteConnection([/* ... */]);
$promise = $client->deleteConnectionAsync([/* ... */]);

Deletes an existing Connection with the supplied identifier.

This operation will also inform the remote partner of your intention to delete your connection. Note, the partner may still require you to delete to fully clean up resources, but the network connectivity provided by the Connection will cease to exist.

Parameter Syntax

$result = $client->deleteConnection([
    'clientToken' => '<string>',
    'identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

Idempotency token used for the request.

identifier
Required: Yes
Type: string

The identifier of the Connection to be deleted.

Result Syntax

[
    'connection' => [
        'activationKey' => '<string>',
        'arn' => '<string>',
        'attachPoint' => [
            'arn' => '<string>',
            'directConnectGateway' => '<string>',
        ],
        'bandwidth' => '<string>',
        'billingTier' => <integer>,
        'description' => '<string>',
        'environmentId' => '<string>',
        'id' => '<string>',
        'location' => '<string>',
        'ownerAccount' => '<string>',
        'provider' => [
            'cloudServiceProvider' => '<string>',
            'lastMileProvider' => '<string>',
        ],
        'sharedId' => '<string>',
        'state' => 'available|requested|pending|down|deleting|deleted|failed|updating',
        'tags' => ['<string>', ...],
        'type' => '<string>',
    ],
]

Result Details

Members
connection
Required: Yes
Type: Connection structure

The Connection object that has been marked for deletion.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: Delete Connection
$result = $client->deleteConnection([
    'identifier' => 'mcc-abc12345',
]);

Result syntax:

[
    'connection' => [
        'type' => 'Multicloud',
        'activationKey' => '',
        'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
        'attachPoint' => [
            'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
        ],
        'bandwidth' => '2Gbps',
        'description' => 'changed Description',
        'environmentId' => 'mce-aws-acme-1',
        'id' => 'mcc-abc12345',
        'location' => 'acme-east',
        'ownerAccount' => '000000000000',
        'provider' => [
            'cloudServiceProvider' => 'acme',
        ],
        'sharedId' => 'B0615F4D-E588-47AD-9D04-1449EAA61C91',
        'state' => 'deleting',
    ],
]

DescribeConnectionProposal

$result = $client->describeConnectionProposal([/* ... */]);
$promise = $client->describeConnectionProposalAsync([/* ... */]);

Describes the details of a connection proposal generated at a partner's portal.

Parameter Syntax

$result = $client->describeConnectionProposal([
    'activationKey' => '<string>', // REQUIRED
]);

Parameter Details

Members
activationKey
Required: Yes
Type: string

An Activation Key that was generated on a supported partner's portal. This key captures the desired parameters from the initial creation request.

Result Syntax

[
    'bandwidth' => '<string>',
    'environmentId' => '<string>',
    'location' => '<string>',
    'provider' => [
        'cloudServiceProvider' => '<string>',
        'lastMileProvider' => '<string>',
    ],
]

Result Details

Members
bandwidth
Required: Yes
Type: string

The bandwidth of the proposed Connection.

environmentId
Required: Yes
Type: string

The identifier of the Environment upon which the Connection would be placed if this proposal were accepted.

location
Required: Yes
Type: string

The partner specific location distinguisher of the specific Environment of the proposal.

provider
Required: Yes
Type: Provider structure

The partner provider of the specific Environment of the proposal.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: Describe Connection Proposal
$result = $client->describeConnectionProposal([
    'activationKey' => '',
]);

Result syntax:

[
    'bandwidth' => '1Gbps',
    'environmentId' => 'mce-aws-acme-1',
    'location' => 'acme-east',
    'provider' => [
        'cloudServiceProvider' => 'acme',
    ],
]

GetConnection

$result = $client->getConnection([/* ... */]);
$promise = $client->getConnectionAsync([/* ... */]);

Describes the current state of a Connection resource as specified by the identifier.

Parameter Syntax

$result = $client->getConnection([
    'identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
identifier
Required: Yes
Type: string

The identifier of the requested Connection

Result Syntax

[
    'connection' => [
        'activationKey' => '<string>',
        'arn' => '<string>',
        'attachPoint' => [
            'arn' => '<string>',
            'directConnectGateway' => '<string>',
        ],
        'bandwidth' => '<string>',
        'billingTier' => <integer>,
        'description' => '<string>',
        'environmentId' => '<string>',
        'id' => '<string>',
        'location' => '<string>',
        'ownerAccount' => '<string>',
        'provider' => [
            'cloudServiceProvider' => '<string>',
            'lastMileProvider' => '<string>',
        ],
        'sharedId' => '<string>',
        'state' => 'available|requested|pending|down|deleting|deleted|failed|updating',
        'tags' => ['<string>', ...],
        'type' => '<string>',
    ],
]

Result Details

Members
connection
Type: Connection structure

The existing Connection resource.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: Get connection
$result = $client->getConnection([
    'identifier' => 'mcc-abc12345',
]);

Result syntax:

[
    'connection' => [
        'type' => 'Multicloud',
        'activationKey' => '',
        'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
        'attachPoint' => [
            'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
        ],
        'bandwidth' => '1Gbps',
        'description' => 'My MultiCloud Connection',
        'environmentId' => 'mce-aws-acme-1',
        'id' => 'mcc-abc12345',
        'location' => 'acme-east',
        'ownerAccount' => '000000000000',
        'provider' => [
            'cloudServiceProvider' => 'acme',
        ],
        'sharedId' => 'B0615F4D-E588-47AD-9D04-1449EAA61C91',
        'state' => 'available',
    ],
]

GetEnvironment

$result = $client->getEnvironment([/* ... */]);
$promise = $client->getEnvironmentAsync([/* ... */]);

Describes a specific Environment

Parameter Syntax

$result = $client->getEnvironment([
    'id' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

The identifier of the specific Environment to describe.

Result Syntax

[
    'environment' => [
        'activationPageUrl' => '<string>',
        'bandwidths' => [
            'available' => ['<string>', ...],
            'supported' => ['<string>', ...],
        ],
        'environmentId' => '<string>',
        'location' => '<string>',
        'provider' => [
            'cloudServiceProvider' => '<string>',
            'lastMileProvider' => '<string>',
        ],
        'remoteIdentifierType' => 'account|email',
        'state' => 'available|limited|unavailable',
        'type' => '<string>',
    ],
]

Result Details

Members
environment
Required: Yes
Type: Environment structure

The requested Environment structure.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: Get a specific environment
$result = $client->getEnvironment([
    'id' => 'mce-aws-acme-1',
]);

Result syntax:

[
    'environment' => [
        'type' => 'Multicloud',
        'bandwidths' => [
            'available' => [
                '1Gbps',
            ],
            'supported' => [
                '1Gbps',
                '2Gbps',
            ],
        ],
        'environmentId' => 'mce-aws-acme-1',
        'location' => 'acme-east',
        'provider' => [
            'cloudServiceProvider' => 'acme',
        ],
        'state' => 'available',
    ],
]

ListAttachPoints

$result = $client->listAttachPoints([/* ... */]);
$promise = $client->listAttachPointsAsync([/* ... */]);

Lists all Attach Points the caller has access to that are valid for the specified Environment.

Parameter Syntax

$result = $client->listAttachPoints([
    'environmentId' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
environmentId
Required: Yes
Type: string

The identifier of the Environment for which to list valid Attach Points.

maxResults
Type: int

The max number of list results in a single paginated response.

nextToken
Type: string

A pagination token from a previous paginated response indicating you wish to get the next page.

Result Syntax

[
    'attachPoints' => [
        [
            'identifier' => '<string>',
            'name' => '<string>',
            'type' => 'DirectConnectGateway',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
attachPoints
Required: Yes
Type: Array of AttachPointDescriptor structures

The valid AttachPoint

nextToken
Type: string

A pagination token indicating that there are more results that can be fetched.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: List Attach Points
$result = $client->listAttachPoints([
    'environmentId' => 'mce-aws-acme-1',
]);

Result syntax:

[
    'attachPoints' => [
        [
            'name' => 'My DirectConnectGateway',
            'type' => 'DirectConnectGateway',
            'identifier' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
        ],
    ],
]

ListConnections

$result = $client->listConnections([/* ... */]);
$promise = $client->listConnectionsAsync([/* ... */]);

Lists all connection objects to which the caller has access.

Allows for optional filtering by the following properties:

  • state

  • environmentId

  • provider

  • attach point

Only Connection objects matching all filters will be returned.

Parameter Syntax

$result = $client->listConnections([
    'attachPoint' => [
        'arn' => '<string>',
        'directConnectGateway' => '<string>',
    ],
    'environmentId' => '<string>',
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'provider' => [
        'cloudServiceProvider' => '<string>',
        'lastMileProvider' => '<string>',
    ],
    'state' => 'available|requested|pending|down|deleting|deleted|failed|updating',
]);

Parameter Details

Members
attachPoint
Type: AttachPoint structure

Filter results to only include Connection objects attached to the given AttachPoint.

environmentId
Type: string

Filter the results to only include Connection objects on the given Environment.

maxResults
Type: int

The max number of list results in a single paginated response.

nextToken
Type: string

A pagination token from a previous paginated response indicating you wish to get the next page of results.

provider
Type: Provider structure

Filter the results to only include Connection objects to the given Provider.

state
Type: string

Filter the results to only include Connection objects in the given Connection$state.

Result Syntax

[
    'connections' => [
        [
            'arn' => '<string>',
            'attachPoint' => [
                'arn' => '<string>',
                'directConnectGateway' => '<string>',
            ],
            'bandwidth' => '<string>',
            'billingTier' => <integer>,
            'description' => '<string>',
            'environmentId' => '<string>',
            'id' => '<string>',
            'location' => '<string>',
            'provider' => [
                'cloudServiceProvider' => '<string>',
                'lastMileProvider' => '<string>',
            ],
            'sharedId' => '<string>',
            'state' => 'available|requested|pending|down|deleting|deleted|failed|updating',
            'type' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
connections
Type: Array of ConnectionSummary structures

The resulting list of Connection objects.

nextToken
Type: string

A pagination token for use in subsequent calls to fetch the next page of results.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: List All Connections
$result = $client->listConnections([
]);

Result syntax:

[
    'connections' => [
        [
            'type' => 'Multicloud',
            'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
            'attachPoint' => [
                'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
            ],
            'bandwidth' => '1Gbps',
            'description' => 'My MultiCloud Connection',
            'environmentId' => 'mce-aws-acme-1',
            'id' => 'mcc-abc12345',
            'location' => 'acme-east',
            'provider' => [
                'cloudServiceProvider' => 'acme',
            ],
            'sharedId' => 'B0615F4D-E588-47AD-9D04-1449EAA61C91',
            'state' => 'available',
        ],
        [
            'type' => 'LastMile',
            'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/lmcc-xyz98765',
            'attachPoint' => [
                'directConnectGateway' => '244FB7E5-3C56-4F7D-AAB9-E35F70764154',
            ],
            'bandwidth' => '1Gbps',
            'description' => 'My LastMile Connection',
            'environmentId' => 'mce-aws-lastmile-1',
            'id' => 'lmcc-xyz98765',
            'location' => 'lastmile-east',
            'provider' => [
                'lastMileProvider' => 'lastmile',
            ],
            'sharedId' => '27C2CDD8-8FDF-402D-9DFF-92F66ED7C7FC',
            'state' => 'pending',
        ],
    ],
]
Example 2: List Connections in available state
$result = $client->listConnections([
    'state' => 'available',
]);

Result syntax:

[
    'connections' => [
        [
            'type' => 'Multicloud',
            'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
            'attachPoint' => [
                'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
            ],
            'bandwidth' => '1Gbps',
            'description' => 'My MultiCloud Connection',
            'environmentId' => 'mce-aws-acme-1',
            'id' => 'mcc-abc12345',
            'location' => 'acme-east',
            'provider' => [
                'cloudServiceProvider' => 'acme',
            ],
            'sharedId' => 'B0615F4D-E588-47AD-9D04-1449EAA61C91',
            'state' => 'available',
        ],
    ],
]
Example 3: List Connections on specific Environment
$result = $client->listConnections([
    'environmentId' => 'mce-aws-acme-1',
]);

Result syntax:

[
    'connections' => [
        [
            'type' => 'LastMile',
            'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/lmcc-xyz98765',
            'attachPoint' => [
                'directConnectGateway' => '244FB7E5-3C56-4F7D-AAB9-E35F70764154',
            ],
            'bandwidth' => '1Gbps',
            'description' => 'My LastMile Connection',
            'environmentId' => 'mce-aws-lastmile-1',
            'id' => 'lmcc-xyz98765',
            'location' => 'lastmile-east',
            'provider' => [
                'lastMileProvider' => 'lastmile',
            ],
            'sharedId' => '27C2CDD8-8FDF-402D-9DFF-92F66ED7C7FC',
            'state' => 'pending',
        ],
    ],
]

ListEnvironments

$result = $client->listEnvironments([/* ... */]);
$promise = $client->listEnvironmentsAsync([/* ... */]);

Lists all of the environments that can produce connections that will land in the called AWS region.

Parameter Syntax

$result = $client->listEnvironments([
    'location' => '<string>',
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'provider' => [
        'cloudServiceProvider' => '<string>',
        'lastMileProvider' => '<string>',
    ],
]);

Parameter Details

Members
location
Type: string

Filter results to only include Environment objects that connect to a given location distiguisher.

maxResults
Type: int

The max number of list results in a single paginated response.

nextToken
Type: string

A pagination token from a previous paginated response indicating you wish to get the next page of results.

provider
Type: Provider structure

Filter results to only include Environment objects that connect to the Provider.

Result Syntax

[
    'environments' => [
        [
            'activationPageUrl' => '<string>',
            'bandwidths' => [
                'available' => ['<string>', ...],
                'supported' => ['<string>', ...],
            ],
            'environmentId' => '<string>',
            'location' => '<string>',
            'provider' => [
                'cloudServiceProvider' => '<string>',
                'lastMileProvider' => '<string>',
            ],
            'remoteIdentifierType' => 'account|email',
            'state' => 'available|limited|unavailable',
            'type' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
environments
Required: Yes
Type: Array of Environment structures

The list of matching Environment objects.

nextToken
Type: string

A pagination token for use in subsequent calls to fetch the next page of results.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: List All Environments
$result = $client->listEnvironments([
]);

Result syntax:

[
    'environments' => [
        [
            'type' => 'Multicloud',
            'bandwidths' => [
                'available' => [
                    '1Gbps',
                ],
                'supported' => [
                    '1Gbps',
                    '2Gbps',
                ],
            ],
            'environmentId' => 'mce-aws-acme-1',
            'location' => 'acme-east',
            'provider' => [
                'cloudServiceProvider' => 'acme',
            ],
            'state' => 'available',
        ],
        [
            'type' => 'LastMile',
            'bandwidths' => [
                'available' => [
                    '1Gbps',
                ],
                'supported' => [
                    '1Gbps',
                    '2Gbps',
                ],
            ],
            'environmentId' => 'mce-aws-lastmile-1',
            'location' => 'lastmile-east',
            'provider' => [
                'cloudServiceProvider' => 'acme',
            ],
            'state' => 'available',
        ],
    ],
]

ListTagsForResource

$result = $client->listTagsForResource([/* ... */]);
$promise = $client->listTagsForResourceAsync([/* ... */]);

List all current tags on the specified resource. Currently this supports Connection resources.

Parameter Syntax

$result = $client->listTagsForResource([
    'arn' => '<string>', // REQUIRED
]);

Parameter Details

Members
arn
Required: Yes
Type: string

The resource ARN for which to list tags.

Result Syntax

[
    'tags' => ['<string>', ...],
]

Result Details

Members
tags
Type: Associative array of custom strings keys (TagKey) to strings

The tags on the specified ARN.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: List Tags
$result = $client->listTagsForResource([
    'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
]);

Result syntax:

[
    'tags' => [
        'TagKey1' => 'TagValue1',
        'TagKey2' => 'TagValue2',
    ],
]

TagResource

$result = $client->tagResource([/* ... */]);
$promise = $client->tagResourceAsync([/* ... */]);

Add new tags to the specified resource.

Parameter Syntax

$result = $client->tagResource([
    'arn' => '<string>', // REQUIRED
    'tags' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
arn
Required: Yes
Type: string

The ARN of the resource that should receive the new tags.

tags
Required: Yes
Type: Associative array of custom strings keys (TagKey) to strings

A map of tags to apply to the specified resource.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: Apply Tags
$result = $client->tagResource([
    'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
    'tags' => [
        'TagKey1' => 'TagValue1',
        'TagKey2' => 'TagValue2',
    ],
]);

Result syntax:

[
]

UntagResource

$result = $client->untagResource([/* ... */]);
$promise = $client->untagResourceAsync([/* ... */]);

Removes tags from the specified resource.

Parameter Syntax

$result = $client->untagResource([
    'arn' => '<string>', // REQUIRED
    'tagKeys' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
arn
Required: Yes
Type: string

The ARN of the resource from which the specified tags should be removed.

tagKeys
Required: Yes
Type: Array of strings

The list of tag keys that should be removed from the resource.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: Remove Tags
$result = $client->untagResource([
    'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
    'tagKeys' => [
        'TagKey1',
        'TagKey2',
    ],
]);

Result syntax:

[
]

UpdateConnection

$result = $client->updateConnection([/* ... */]);
$promise = $client->updateConnectionAsync([/* ... */]);

Modifies an existing connection. Currently we support modifications to the connection's description and/or bandwidth.

Parameter Syntax

$result = $client->updateConnection([
    'bandwidth' => '<string>',
    'clientToken' => '<string>',
    'description' => '<string>',
    'identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
bandwidth
Type: string

Request a new bandwidth size on the given Connection.

Note that changes to the size may be subject to additional policy, and does require the remote partner provider to acknowledge and permit this new bandwidth size.

clientToken
Type: string

Idempotency token used for the request.

description
Type: string

An updated description to apply to the Connection

identifier
Required: Yes
Type: string

The identifier of the Connection that should be updated.

Result Syntax

[
    'connection' => [
        'activationKey' => '<string>',
        'arn' => '<string>',
        'attachPoint' => [
            'arn' => '<string>',
            'directConnectGateway' => '<string>',
        ],
        'bandwidth' => '<string>',
        'billingTier' => <integer>,
        'description' => '<string>',
        'environmentId' => '<string>',
        'id' => '<string>',
        'location' => '<string>',
        'ownerAccount' => '<string>',
        'provider' => [
            'cloudServiceProvider' => '<string>',
            'lastMileProvider' => '<string>',
        ],
        'sharedId' => '<string>',
        'state' => 'available|requested|pending|down|deleting|deleted|failed|updating',
        'tags' => ['<string>', ...],
        'type' => '<string>',
    ],
]

Result Details

Members
connection
Type: Connection structure

The resulting updated Connection

Errors

ResourceNotFoundException:

The request specifies a resource that does not exist on the server.

InterconnectClientException:

The request was denied due to incorrect client supplied parameters.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

The calling principal is not allowed to access the specified resource, or the resource does not exist.

InterconnectValidationException:

The input fails to satisfy the constraints specified.

ServiceQuotaExceededException:

The requested operation would result in the calling principal exceeding their allotted quota.

InterconnectServerException:

The request resulted in an exception internal to the service.

Examples

Example 1: Update Connection Description
$result = $client->updateConnection([
    'description' => 'Changed Description',
    'identifier' => 'mcc-abc12345',
]);

Result syntax:

[
    'connection' => [
        'type' => 'Multicloud',
        'activationKey' => '',
        'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
        'attachPoint' => [
            'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
        ],
        'bandwidth' => '1Gbps',
        'description' => 'changed Description',
        'environmentId' => 'mce-aws-acme-1',
        'id' => 'mcc-abc12345',
        'location' => 'acme-east',
        'ownerAccount' => '000000000000',
        'provider' => [
            'cloudServiceProvider' => 'acme',
        ],
        'sharedId' => 'B0615F4D-E588-47AD-9D04-1449EAA61C91',
        'state' => 'available',
    ],
]
Example 2: Update Connection Bandwidth
$result = $client->updateConnection([
    'bandwidth' => '2Gbps',
    'identifier' => 'mcc-abc12345',
]);

Result syntax:

[
    'connection' => [
        'type' => 'Multicloud',
        'activationKey' => '',
        'arn' => 'arn:aws:interconnect:us-east-1:000000000000:connection/mcc-abc12345',
        'attachPoint' => [
            'directConnectGateway' => '90392BE3-219C-47FD-BBA5-03DF76D2542A',
        ],
        'bandwidth' => '2Gbps',
        'description' => 'changed Description',
        'environmentId' => 'mce-aws-acme-1',
        'id' => 'mcc-abc12345',
        'location' => 'acme-east',
        'ownerAccount' => '000000000000',
        'provider' => [
            'cloudServiceProvider' => 'acme',
        ],
        'sharedId' => 'B0615F4D-E588-47AD-9D04-1449EAA61C91',
        'state' => 'updating',
    ],
]

Shapes

AccessDeniedException

Description

The calling principal is not allowed to access the specified resource, or the resource does not exist.

Members
message
Type: string

AttachPoint

Description

Identifies an attach point to use with a Connection.

Members
arn
Type: string

Identifies an attach point by full ARN.

directConnectGateway
Type: string

Identifies an DirectConnect Gateway attach point by DirectConnectGatewayID.

AttachPointDescriptor

Description

Describes a possible Attach Point for a Connection.

Members
identifier
Required: Yes
Type: string

The identifier for the specific type of the AttachPoint.

name
Required: Yes
Type: string

The descriptive name of the identifier attach point.

type
Required: Yes
Type: string

The type of this AttachPoint, which will dictate the syntax of the identifier.

Current types include:

  • ARN

  • DirectConnect Gateway

Bandwidths

Description

Contains the details about the available and supported bandwidths.

Members
available
Type: Array of strings

The list of currently available bandwidths.

supported
Type: Array of strings

The list of all bandwidths that this environment plans to support

Connection

Description

The object describing the provided connectivity from the AWS region to the partner location.

Members
activationKey
Required: Yes
Type: string

The Activation Key associated to this connection.

arn
Required: Yes
Type: string

An ARN of a Connection object.

attachPoint
Required: Yes
Type: AttachPoint structure

The Attach Point to which the connection should be associated."

bandwidth
Required: Yes
Type: string

The specific selected bandwidth of this connection.

billingTier
Type: int

The billing tier this connection is currently assigned.

description
Required: Yes
Type: string

A descriptive name for the connection.

environmentId
Required: Yes
Type: string

The specific Environment this connection is placed upon.

id
Required: Yes
Type: string

The short identifier of the connection object.

location
Required: Yes
Type: string

The provider specific location on the remote side of this Connection

ownerAccount
Required: Yes
Type: string

The account that owns this Connection

provider
Required: Yes
Type: Provider structure

The provider on the remote side of this Connection.

sharedId
Required: Yes
Type: string

An identifier used by both AWS and the remote partner to identify the specific connection.

state
Required: Yes
Type: string
  • requested: The initial state of a connection. The state will remain here until the Connection is accepted on the Partner portal.

  • pending: The connection has been accepted and is being provisioned between AWS and the Partner.

  • available: The connection has been fully provisioned between AWS and the Partner.

  • deleting: The connection is being deleted.

  • deleted: The connection has been deleted.

  • failed: The connection has failed to be created.

  • updating: The connection is being updated.

tags
Type: Associative array of custom strings keys (TagKey) to strings

The tags on the Connection

type
Required: Yes
Type: string

The specific product type of this Connection.

ConnectionSummary

Description

Summarized view of a Connection object.

Members
arn
Required: Yes
Type: string

The ARN of the Connection

attachPoint
Required: Yes
Type: AttachPoint structure

The Attach Point to which the connection should be associated.

bandwidth
Required: Yes
Type: string

The bandwidth of the Connection

billingTier
Type: int

The billing tier this connection is currently assigned.

description
Required: Yes
Type: string

A descriptive name of the Connection

environmentId
Required: Yes
Type: string

The Environment that this Connection is created on.

id
Required: Yes
Type: string

The identifier of the requested Connection

location
Required: Yes
Type: string

The provider specific location at the remote end of this Connection

provider
Required: Yes
Type: Provider structure

The provider on the remote end of this Connection

sharedId
Required: Yes
Type: string

An identifier used by both AWS and the remote partner to identify the specific connection.

state
Required: Yes
Type: string
  • requested: The initial state of a connection. The state will remain here until the Connection is accepted on the Partner portal.

  • pending: The connection has been accepted and is being provisioned between AWS and the Partner.

  • available: The connection has been fully provisioned between AWS and the Partner.

  • deleting: The connection is being deleted.

  • deleted: The connection has been deleted.

  • failed: The connection has failed to be created.

  • updating: The connection is being updated.

type
Required: Yes
Type: string

The product variant supplied by this resource.

Environment

Description

Defines the logical topology that an AWS Interconnect Connection is created upon.

Specifically, an Environment defines the partner The remote Cloud Service Provider of this resource. or The remote Last Mile Provider of this resource. and the region or location specification to which an AWS Interconnect Connection can be made.

Members
activationPageUrl
Type: string

An HTTPS URL on the remote partner portal where the Activation Key should be brought to complete the creation process.

bandwidths
Required: Yes
Type: Bandwidths structure

The sets of bandwidths that are available and supported on this environment.

environmentId
Required: Yes
Type: string

The identifier of this Environment

location
Required: Yes
Type: string

The provider specific location on the remote side of this Connection.

provider
Required: Yes
Type: Provider structure

The provider on the remote side of this Connection.

remoteIdentifierType
Type: string

The type of identifying information that should be supplied to the remoteAccount parameter of a CreateConnection call for this specific Environment.

state
Required: Yes
Type: string

The state of the Environment. Possible values:

  • available: The environment is available and new Connection objects can be requested.

  • limited: The environment is available, but overall capacity is limited. The set of available bandwidths

  • unavailable: The environment is currently unavailable.

type
Required: Yes
Type: string

The specific product type of Connection objects provided by this Environment.

InterconnectClientException

Description

The request was denied due to incorrect client supplied parameters.

Members
message
Required: Yes
Type: string

InterconnectServerException

Description

The request resulted in an exception internal to the service.

Members
message
Required: Yes
Type: string

InterconnectValidationException

Description

The input fails to satisfy the constraints specified.

Members
message
Required: Yes
Type: string

Provider

Description

Describes the respective AWS Interconnect Partner organization.

Members
cloudServiceProvider
Type: string

The provider's name. Specifically, connections to/from this Cloud Service Provider will be considered Multicloud connections.

lastMileProvider
Type: string

The provider's name. Specifically, connections to/from this Last Mile Provider will be considered LastMile connections.

RemoteAccountIdentifier

Description

The types of identifiers that may be needed for remote account specification.

Members
identifier
Type: string

A generic bit of identifying information. Can be used in place of any of the more specific types.

ResourceNotFoundException

Description

The request specifies a resource that does not exist on the server.

Members
message
Type: string

ServiceQuotaExceededException

Description

The requested operation would result in the calling principal exceeding their allotted quota.

Members
message
Type: string

ThrottlingException

Description

The request was denied due to request throttling.

Members
message
Type: string