{
  "version": "2.0",
  "service": "<p>AWS Direct Connect links your internal network to an AWS Direct Connect location over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic cable. One end of the cable is connected to your router, the other to an AWS Direct Connect router. With this connection in place, you can create virtual interfaces directly to the AWS cloud (for example, to Amazon Elastic Compute Cloud (Amazon EC2) and Amazon Simple Storage Service (Amazon S3)) and to Amazon Virtual Private Cloud (Amazon VPC), bypassing Internet service providers in your network path. An AWS Direct Connect location provides access to AWS in the region it is associated with, as well as access to other US regions. For example, you can provision a single connection to any AWS Direct Connect location in the US and use it to access public AWS services in all US Regions and AWS GovCloud (US).</p>",
  "operations": {
    "AllocateConnectionOnInterconnect": "<p>Creates a hosted connection on an interconnect.</p> <p>Allocates a VLAN number and a specified amount of bandwidth for use by a hosted connection on the given interconnect.</p> <note> <p>This is intended for use by AWS Direct Connect partners only.</p> </note>",
    "AllocatePrivateVirtualInterface": "<p>Provisions a private virtual interface to be owned by a different customer.</p> <p>The owner of a connection calls this function to provision a private virtual interface which will be owned by another AWS customer.</p> <p>Virtual interfaces created using this function must be confirmed by the virtual interface owner by calling ConfirmPrivateVirtualInterface. Until this step has been completed, the virtual interface will be in 'Confirming' state, and will not be available for handling traffic.</p>",
    "AllocatePublicVirtualInterface": "<p>Provisions a public virtual interface to be owned by a different customer.</p> <p>The owner of a connection calls this function to provision a public virtual interface which will be owned by another AWS customer.</p> <p>Virtual interfaces created using this function must be confirmed by the virtual interface owner by calling ConfirmPublicVirtualInterface. Until this step has been completed, the virtual interface will be in 'Confirming' state, and will not be available for handling traffic.</p>",
    "ConfirmConnection": "<p>Confirm the creation of a hosted connection on an interconnect.</p> <p>Upon creation, the hosted connection is initially in the 'Ordering' state, and will remain in this state until the owner calls ConfirmConnection to confirm creation of the hosted connection.</p>",
    "ConfirmPrivateVirtualInterface": "<p>Accept ownership of a private virtual interface created by another customer.</p> <p>After the virtual interface owner calls this function, the virtual interface will be created and attached to the given virtual private gateway, and will be available for handling traffic.</p>",
    "ConfirmPublicVirtualInterface": "<p>Accept ownership of a public virtual interface created by another customer.</p> <p>After the virtual interface owner calls this function, the specified virtual interface will be created and made available for handling traffic.</p>",
    "CreateConnection": "<p>Creates a new connection between the customer network and a specific AWS Direct Connect location.</p> <p>A connection links your internal network to an AWS Direct Connect location over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic cable. One end of the cable is connected to your router, the other to an AWS Direct Connect router. An AWS Direct Connect location provides access to Amazon Web Services in the region it is associated with. You can establish connections with AWS Direct Connect locations in multiple regions, but a connection in one region does not provide connectivity to other regions.</p>",
    "CreateInterconnect": "<p>Creates a new interconnect between a AWS Direct Connect partner's network and a specific AWS Direct Connect location.</p> <p>An interconnect is a connection which is capable of hosting other connections. The AWS Direct Connect partner can use an interconnect to provide sub-1Gbps AWS Direct Connect service to tier 2 customers who do not have their own connections. Like a standard connection, an interconnect links the AWS Direct Connect partner's network to an AWS Direct Connect location over a standard 1 Gbps or 10 Gbps Ethernet fiber-optic cable. One end is connected to the partner's router, the other to an AWS Direct Connect router.</p> <p>For each end customer, the AWS Direct Connect partner provisions a connection on their interconnect by calling AllocateConnectionOnInterconnect. The end customer can then connect to AWS resources by creating a virtual interface on their connection, using the VLAN assigned to them by the AWS Direct Connect partner.</p> <note> <p>This is intended for use by AWS Direct Connect partners only.</p> </note>",
    "CreatePrivateVirtualInterface": "<p>Creates a new private virtual interface. A virtual interface is the VLAN that transports AWS Direct Connect traffic. A private virtual interface supports sending traffic to a single virtual private cloud (VPC).</p>",
    "CreatePublicVirtualInterface": "<p>Creates a new public virtual interface. A virtual interface is the VLAN that transports AWS Direct Connect traffic. A public virtual interface supports sending traffic to public services of AWS such as Amazon Simple Storage Service (Amazon S3).</p>",
    "DeleteConnection": "<p>Deletes the connection.</p> <p>Deleting a connection only stops the AWS Direct Connect port hour and data transfer charges. You need to cancel separately with the providers any services or charges for cross-connects or network circuits that connect you to the AWS Direct Connect location.</p>",
    "DeleteInterconnect": "<p>Deletes the specified interconnect.</p> <note> <p>This is intended for use by AWS Direct Connect partners only.</p> </note>",
    "DeleteVirtualInterface": "<p>Deletes a virtual interface.</p>",
    "DescribeConnectionLoa": "<p>Returns the LOA-CFA for a Connection.</p> <p>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 AWS at the colocation facility. For more information, see <a href=\"http://docs.aws.amazon.com/directconnect/latest/UserGuide/Colocation.html\">Requesting Cross Connects at AWS Direct Connect Locations</a> in the AWS Direct Connect user guide.</p>",
    "DescribeConnections": "<p>Displays all connections in this region.</p> <p>If a connection ID is provided, the call returns only that particular connection.</p>",
    "DescribeConnectionsOnInterconnect": "<p>Return a list of connections that have been provisioned on the given interconnect.</p> <note> <p>This is intended for use by AWS Direct Connect partners only.</p> </note>",
    "DescribeInterconnectLoa": "<p>Returns the LOA-CFA for an Interconnect.</p> <p>The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is a document that is used when establishing your cross connect to AWS at the colocation facility. For more information, see <a href=\"http://docs.aws.amazon.com/directconnect/latest/UserGuide/Colocation.html\">Requesting Cross Connects at AWS Direct Connect Locations</a> in the AWS Direct Connect user guide.</p>",
    "DescribeInterconnects": "<p>Returns a list of interconnects owned by the AWS account.</p> <p>If an interconnect ID is provided, it will only return this particular interconnect.</p>",
    "DescribeLocations": "<p>Returns the list of AWS Direct Connect locations in the current AWS region. These are the locations that may be selected when calling CreateConnection or CreateInterconnect.</p>",
    "DescribeVirtualGateways": "<p>Returns a list of virtual private gateways owned by the AWS account.</p> <p>You can create one or more AWS Direct Connect private virtual interfaces linking to a virtual private gateway. A virtual private gateway can be managed via Amazon Virtual Private Cloud (VPC) console or the <a href=\"http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html\">EC2 CreateVpnGateway</a> action.</p>",
    "DescribeVirtualInterfaces": "<p>Displays all virtual interfaces for an AWS account. Virtual interfaces deleted fewer than 15 minutes before DescribeVirtualInterfaces is called are also returned. If a connection ID is included then only virtual interfaces associated with this connection will be returned. If a virtual interface ID is included then only a single virtual interface will be returned.</p> <p>A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.</p> <p>If a connection ID is provided, only virtual interfaces provisioned on the specified connection will be returned. If a virtual interface ID is provided, only this particular virtual interface will be returned.</p>"
  },
  "shapes": {
    "ASN": {
      "base": "<p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p> <p>Example: 65000</p>",
      "refs": {
        "NewPrivateVirtualInterface$asn": null,
        "NewPrivateVirtualInterfaceAllocation$asn": null,
        "NewPublicVirtualInterface$asn": null,
        "NewPublicVirtualInterfaceAllocation$asn": null,
        "VirtualInterface$asn": null
      }
    },
    "AllocateConnectionOnInterconnectRequest": {
      "base": "<p>Container for the parameters to the AllocateConnectionOnInterconnect operation.</p>",
      "refs": {
      }
    },
    "AllocatePrivateVirtualInterfaceRequest": {
      "base": "<p>Container for the parameters to the AllocatePrivateVirtualInterface operation.</p>",
      "refs": {
      }
    },
    "AllocatePublicVirtualInterfaceRequest": {
      "base": "<p>Container for the parameters to the AllocatePublicVirtualInterface operation.</p>",
      "refs": {
      }
    },
    "AmazonAddress": {
      "base": "<p>IP address assigned to the Amazon interface.</p> <p>Example: 192.168.1.1/30</p>",
      "refs": {
        "NewPrivateVirtualInterface$amazonAddress": null,
        "NewPrivateVirtualInterfaceAllocation$amazonAddress": null,
        "NewPublicVirtualInterface$amazonAddress": null,
        "NewPublicVirtualInterfaceAllocation$amazonAddress": null,
        "VirtualInterface$amazonAddress": null
      }
    },
    "BGPAuthKey": {
      "base": "<p>Authentication key for BGP configuration.</p> <p>Example: asdf34example</p>",
      "refs": {
        "NewPrivateVirtualInterface$authKey": null,
        "NewPrivateVirtualInterfaceAllocation$authKey": null,
        "NewPublicVirtualInterface$authKey": null,
        "NewPublicVirtualInterfaceAllocation$authKey": null,
        "VirtualInterface$authKey": null
      }
    },
    "Bandwidth": {
      "base": "<p>Bandwidth of the connection.</p> <p>Example: 1Gbps</p> <p>Default: None</p>",
      "refs": {
        "AllocateConnectionOnInterconnectRequest$bandwidth": "<p>Bandwidth of the connection.</p> <p>Example: \"<i>500Mbps</i>\"</p> <p>Default: None</p> <p>Values: 50M, 100M, 200M, 300M, 400M, or 500M</p>",
        "Connection$bandwidth": "<p>Bandwidth of the connection.</p> <p>Example: 1Gbps (for regular connections), or 500Mbps (for hosted connections)</p> <p>Default: None</p>",
        "CreateConnectionRequest$bandwidth": null,
        "CreateInterconnectRequest$bandwidth": "<p>The port bandwidth</p> <p>Example: 1Gbps</p> <p>Default: None</p> <p>Available values: 1Gbps,10Gbps</p>",
        "Interconnect$bandwidth": null
      }
    },
    "CIDR": {
      "base": null,
      "refs": {
        "RouteFilterPrefix$cidr": "<p>CIDR notation for the advertised route. Multiple routes are separated by commas.</p> <p>Example: 10.10.10.0/24,10.10.11.0/24</p>"
      }
    },
    "ConfirmConnectionRequest": {
      "base": "<p>Container for the parameters to the ConfirmConnection operation.</p>",
      "refs": {
      }
    },
    "ConfirmConnectionResponse": {
      "base": "<p>The response received when ConfirmConnection is called.</p>",
      "refs": {
      }
    },
    "ConfirmPrivateVirtualInterfaceRequest": {
      "base": "<p>Container for the parameters to the ConfirmPrivateVirtualInterface operation.</p>",
      "refs": {
      }
    },
    "ConfirmPrivateVirtualInterfaceResponse": {
      "base": "<p>The response received when ConfirmPrivateVirtualInterface is called.</p>",
      "refs": {
      }
    },
    "ConfirmPublicVirtualInterfaceRequest": {
      "base": "<p>Container for the parameters to the ConfirmPublicVirtualInterface operation.</p>",
      "refs": {
      }
    },
    "ConfirmPublicVirtualInterfaceResponse": {
      "base": "<p>The response received when ConfirmPublicVirtualInterface is called.</p>",
      "refs": {
      }
    },
    "Connection": {
      "base": "<p>A connection represents the physical network connection between the AWS Direct Connect location and the customer.</p>",
      "refs": {
        "ConnectionList$member": null
      }
    },
    "ConnectionId": {
      "base": "<p>ID of the connection.</p> <p>Example: dxcon-fg5678gh</p> <p>Default: None</p>",
      "refs": {
        "AllocatePrivateVirtualInterfaceRequest$connectionId": "<p>The connection ID on which the private virtual interface is provisioned.</p> <p>Default: None</p>",
        "AllocatePublicVirtualInterfaceRequest$connectionId": "<p>The connection ID on which the public virtual interface is provisioned.</p> <p>Default: None</p>",
        "ConfirmConnectionRequest$connectionId": null,
        "Connection$connectionId": null,
        "CreatePrivateVirtualInterfaceRequest$connectionId": null,
        "CreatePublicVirtualInterfaceRequest$connectionId": null,
        "DeleteConnectionRequest$connectionId": null,
        "DescribeConnectionLoaRequest$connectionId": null,
        "DescribeConnectionsRequest$connectionId": null,
        "DescribeVirtualInterfacesRequest$connectionId": null,
        "VirtualInterface$connectionId": null
      }
    },
    "ConnectionList": {
      "base": "<p>A list of connections.</p>",
      "refs": {
        "Connections$connections": "<p>A list of connections.</p>"
      }
    },
    "ConnectionName": {
      "base": "<p>The name of the connection.</p> <p>Example: \"<i>My Connection to AWS</i>\"</p> <p>Default: None</p>",
      "refs": {
        "AllocateConnectionOnInterconnectRequest$connectionName": "<p>Name of the provisioned connection.</p> <p>Example: \"<i>500M Connection to AWS</i>\"</p> <p>Default: None</p>",
        "Connection$connectionName": null,
        "CreateConnectionRequest$connectionName": null
      }
    },
    "ConnectionState": {
      "base": "<p>State of the connection.</p> <ul> <li> <p> <b>Ordering</b>: The initial state of a hosted connection provisioned on an interconnect. The connection stays in the ordering state until the owner of the hosted connection confirms or declines the connection order.</p> </li> <li> <p> <b>Requested</b>: The initial state of a standard connection. The connection stays in the requested state until the Letter of Authorization (LOA) is sent to the customer.</p> </li> <li> <p> <b>Pending</b>: The connection has been approved, and is being initialized.</p> </li> <li> <p> <b>Available</b>: The network link is up, and the connection is ready for use.</p> </li> <li> <p> <b>Down</b>: The network link is down.</p> </li> <li> <p> <b>Deleting</b>: The connection is in the process of being deleted.</p> </li> <li> <p> <b>Deleted</b>: The connection has been deleted.</p> </li> <li> <p> <b>Rejected</b>: A hosted connection in the 'Ordering' state will enter the 'Rejected' state if it is deleted by the end customer.</p> </li> </ul>",
      "refs": {
        "ConfirmConnectionResponse$connectionState": null,
        "Connection$connectionState": null
      }
    },
    "Connections": {
      "base": "<p>A structure containing a list of connections.</p>",
      "refs": {
      }
    },
    "CreateConnectionRequest": {
      "base": "<p>Container for the parameters to the CreateConnection operation.</p>",
      "refs": {
      }
    },
    "CreateInterconnectRequest": {
      "base": "<p>Container for the parameters to the CreateInterconnect operation.</p>",
      "refs": {
      }
    },
    "CreatePrivateVirtualInterfaceRequest": {
      "base": "<p>Container for the parameters to the CreatePrivateVirtualInterface operation.</p>",
      "refs": {
      }
    },
    "CreatePublicVirtualInterfaceRequest": {
      "base": "<p>Container for the parameters to the CreatePublicVirtualInterface operation.</p>",
      "refs": {
      }
    },
    "CustomerAddress": {
      "base": "<p>IP address assigned to the customer interface.</p> <p>Example: 192.168.1.2/30</p>",
      "refs": {
        "NewPrivateVirtualInterface$customerAddress": null,
        "NewPrivateVirtualInterfaceAllocation$customerAddress": null,
        "NewPublicVirtualInterface$customerAddress": null,
        "NewPublicVirtualInterfaceAllocation$customerAddress": null,
        "VirtualInterface$customerAddress": null
      }
    },
    "DeleteConnectionRequest": {
      "base": "<p>Container for the parameters to the DeleteConnection operation.</p>",
      "refs": {
      }
    },
    "DeleteInterconnectRequest": {
      "base": "<p>Container for the parameters to the DeleteInterconnect operation.</p>",
      "refs": {
      }
    },
    "DeleteInterconnectResponse": {
      "base": "<p>The response received when DeleteInterconnect is called.</p>",
      "refs": {
      }
    },
    "DeleteVirtualInterfaceRequest": {
      "base": "<p>Container for the parameters to the DeleteVirtualInterface operation.</p>",
      "refs": {
      }
    },
    "DeleteVirtualInterfaceResponse": {
      "base": "<p>The response received when DeleteVirtualInterface is called.</p>",
      "refs": {
      }
    },
    "DescribeConnectionLoaRequest": {
      "base": "<p>Container for the parameters to the DescribeConnectionLoa operation.</p>",
      "refs": {
      }
    },
    "DescribeConnectionLoaResponse": {
      "base": "<p>The response received when DescribeConnectionLoa is called.</p>",
      "refs": {
      }
    },
    "DescribeConnectionsOnInterconnectRequest": {
      "base": "<p>Container for the parameters to the DescribeConnectionsOnInterconnect operation.</p>",
      "refs": {
      }
    },
    "DescribeConnectionsRequest": {
      "base": "<p>Container for the parameters to the DescribeConnections operation.</p>",
      "refs": {
      }
    },
    "DescribeInterconnectLoaRequest": {
      "base": "<p>Container for the parameters to the DescribeInterconnectLoa operation.</p>",
      "refs": {
      }
    },
    "DescribeInterconnectLoaResponse": {
      "base": "<p>The response received when DescribeInterconnectLoa is called.</p>",
      "refs": {
      }
    },
    "DescribeInterconnectsRequest": {
      "base": "<p>Container for the parameters to the DescribeInterconnects operation.</p>",
      "refs": {
      }
    },
    "DescribeVirtualInterfacesRequest": {
      "base": "<p>Container for the parameters to the DescribeVirtualInterfaces operation.</p>",
      "refs": {
      }
    },
    "DirectConnectClientException": {
      "base": "<p>The API was called with invalid parameters. The error message will contain additional details about the cause.</p>",
      "refs": {
      }
    },
    "DirectConnectServerException": {
      "base": "<p>A server-side error occurred during the API call. The error message will contain additional details about the cause.</p>",
      "refs": {
      }
    },
    "ErrorMessage": {
      "base": null,
      "refs": {
        "DirectConnectClientException$message": "<p>This is an exception thrown when there is an issue with the input provided by the API call. For example, the name provided for a connection contains a pound sign (#). This can also occur when a valid value is provided, but is otherwise constrained. For example, the valid VLAN tag range is 1-4096 but each can only be used once per connection.</p>",
        "DirectConnectServerException$message": "<p>This is an exception thrown when there is a backend issue on the server side.</p>"
      }
    },
    "Interconnect": {
      "base": "<p>An interconnect is a connection that can host other connections.</p> <p>Like a standard AWS Direct Connect connection, an interconnect represents the physical connection between an AWS Direct Connect partner's network and a specific Direct Connect location. An AWS Direct Connect partner who owns an interconnect can provision hosted connections on the interconnect for their end customers, thereby providing the end customers with connectivity to AWS services.</p> <p>The resources of the interconnect, including bandwidth and VLAN numbers, are shared by all of the hosted connections on the interconnect, and the owner of the interconnect determines how these resources are assigned.</p>",
      "refs": {
        "InterconnectList$member": null
      }
    },
    "InterconnectId": {
      "base": "<p>The ID of the interconnect.</p> <p>Example: dxcon-abc123</p>",
      "refs": {
        "AllocateConnectionOnInterconnectRequest$interconnectId": "<p>ID of the interconnect on which the connection will be provisioned.</p> <p>Example: dxcon-456abc78</p> <p>Default: None</p>",
        "DeleteInterconnectRequest$interconnectId": null,
        "DescribeConnectionsOnInterconnectRequest$interconnectId": "<p>ID of the interconnect on which a list of connection is provisioned.</p> <p>Example: dxcon-abc123</p> <p>Default: None</p>",
        "DescribeInterconnectLoaRequest$interconnectId": null,
        "DescribeInterconnectsRequest$interconnectId": null,
        "Interconnect$interconnectId": null
      }
    },
    "InterconnectList": {
      "base": "<p>A list of interconnects.</p>",
      "refs": {
        "Interconnects$interconnects": "<p>A list of interconnects.</p>"
      }
    },
    "InterconnectName": {
      "base": "<p>The name of the interconnect.</p> <p>Example: \"<i>1G Interconnect to AWS</i>\"</p>",
      "refs": {
        "CreateInterconnectRequest$interconnectName": "<p>The name of the interconnect.</p> <p>Example: \"<i>1G Interconnect to AWS</i>\"</p> <p>Default: None</p>",
        "Interconnect$interconnectName": null
      }
    },
    "InterconnectState": {
      "base": "<p>State of the interconnect.</p> <ul> <li> <p> <b>Requested</b>: The initial state of an interconnect. The interconnect stays in the requested state until the Letter of Authorization (LOA) is sent to the customer.</p> </li> <li> <p> <b>Pending</b>&gt;: The interconnect has been approved, and is being initialized.</p> </li> <li> <p> <b>Available</b>: The network link is up, and the interconnect is ready for use.</p> </li> <li> <p> <b>Down</b>: The network link is down.</p> </li> <li> <p> <b>Deleting</b>: The interconnect is in the process of being deleted.</p> </li> <li> <p> <b>Deleted</b>: The interconnect has been deleted.</p> </li> </ul>",
      "refs": {
        "DeleteInterconnectResponse$interconnectState": null,
        "Interconnect$interconnectState": null
      }
    },
    "Interconnects": {
      "base": "<p>A structure containing a list of interconnects.</p>",
      "refs": {
      }
    },
    "Loa": {
      "base": "<p>A structure containing the Letter of Authorization - Connecting Facility Assignment (LOA-CFA) for a connection.</p>",
      "refs": {
        "DescribeConnectionLoaResponse$loa": null,
        "DescribeInterconnectLoaResponse$loa": null
      }
    },
    "LoaContent": {
      "base": "<p>The binary contents of the LOA-CFA document.</p>",
      "refs": {
        "Loa$loaContent": null
      }
    },
    "LoaContentType": {
      "base": "<p>A standard media type indicating the content type of the LOA-CFA document. Currently, the only supported value is \"application/pdf\".</p> <p>Default: application/pdf</p>",
      "refs": {
        "DescribeConnectionLoaRequest$loaContentType": null,
        "DescribeInterconnectLoaRequest$loaContentType": null,
        "Loa$loaContentType": null
      }
    },
    "LoaIssueTime": {
      "base": null,
      "refs": {
        "Connection$loaIssueTime": "<p>The time of the most recent call to DescribeConnectionLoa for this Connection.</p>",
        "Interconnect$loaIssueTime": "<p>The time of the most recent call to DescribeInterconnectLoa for this Interconnect.</p>"
      }
    },
    "Location": {
      "base": "<p>An AWS Direct Connect location where connections and interconnects can be requested.</p>",
      "refs": {
        "LocationList$member": null
      }
    },
    "LocationCode": {
      "base": "<p>Where the connection is located.</p> <p>Example: EqSV5</p> <p>Default: None</p>",
      "refs": {
        "Connection$location": null,
        "CreateConnectionRequest$location": null,
        "CreateInterconnectRequest$location": "<p>Where the interconnect is located</p> <p>Example: EqSV5</p> <p>Default: None</p>",
        "Interconnect$location": null,
        "Location$locationCode": "<p>The code used to indicate the AWS Direct Connect location.</p>",
        "VirtualInterface$location": null
      }
    },
    "LocationList": {
      "base": null,
      "refs": {
        "Locations$locations": "<p>A list of colocation hubs where network providers have equipment. Most regions have multiple locations available.</p>"
      }
    },
    "LocationName": {
      "base": null,
      "refs": {
        "Location$locationName": "<p>The name of the AWS Direct Connect location. The name includes the colocation partner name and the physical site of the lit building.</p>"
      }
    },
    "Locations": {
      "base": "<p>A location is a network facility where AWS Direct Connect routers are available to be connected. Generally, these are colocation hubs where many network providers have equipment, and where cross connects can be delivered. Locations include a name and facility code, and must be provided when creating a connection.</p>",
      "refs": {
      }
    },
    "NewPrivateVirtualInterface": {
      "base": "<p>A structure containing information about a new private virtual interface.</p>",
      "refs": {
        "CreatePrivateVirtualInterfaceRequest$newPrivateVirtualInterface": "<p>Detailed information for the private virtual interface to be created.</p> <p>Default: None</p>"
      }
    },
    "NewPrivateVirtualInterfaceAllocation": {
      "base": "<p>A structure containing information about a private virtual interface that will be provisioned on a connection.</p>",
      "refs": {
        "AllocatePrivateVirtualInterfaceRequest$newPrivateVirtualInterfaceAllocation": "<p>Detailed information for the private virtual interface to be provisioned.</p> <p>Default: None</p>"
      }
    },
    "NewPublicVirtualInterface": {
      "base": "<p>A structure containing information about a new public virtual interface.</p>",
      "refs": {
        "CreatePublicVirtualInterfaceRequest$newPublicVirtualInterface": "<p>Detailed information for the public virtual interface to be created.</p> <p>Default: None</p>"
      }
    },
    "NewPublicVirtualInterfaceAllocation": {
      "base": "<p>A structure containing information about a public virtual interface that will be provisioned on a connection.</p>",
      "refs": {
        "AllocatePublicVirtualInterfaceRequest$newPublicVirtualInterfaceAllocation": "<p>Detailed information for the public virtual interface to be provisioned.</p> <p>Default: None</p>"
      }
    },
    "OwnerAccount": {
      "base": null,
      "refs": {
        "AllocateConnectionOnInterconnectRequest$ownerAccount": "<p>Numeric account Id of the customer for whom the connection will be provisioned.</p> <p>Example: 123443215678</p> <p>Default: None</p>",
        "AllocatePrivateVirtualInterfaceRequest$ownerAccount": "<p>The AWS account that will own the new private virtual interface.</p> <p>Default: None</p>",
        "AllocatePublicVirtualInterfaceRequest$ownerAccount": "<p>The AWS account that will own the new public virtual interface.</p> <p>Default: None</p>",
        "Connection$ownerAccount": "<p>The AWS account that will own the new connection.</p>",
        "VirtualInterface$ownerAccount": "<p>The AWS account that will own the new virtual interface.</p>"
      }
    },
    "PartnerName": {
      "base": null,
      "refs": {
        "Connection$partnerName": "<p>The name of the AWS Direct Connect service provider associated with the connection.</p>"
      }
    },
    "ProviderName": {
      "base": null,
      "refs": {
        "DescribeConnectionLoaRequest$providerName": "<p>The name of the APN partner or service provider who establishes connectivity on your behalf. If you supply this parameter, the LOA-CFA lists the provider name alongside your company name as the requester of the cross connect.</p> <p>Default: None</p>",
        "DescribeInterconnectLoaRequest$providerName": "<p>The name of the service provider who establishes connectivity on your behalf. If you supply this parameter, the LOA-CFA lists the provider name alongside your company name as the requester of the cross connect.</p> <p>Default: None</p>"
      }
    },
    "Region": {
      "base": "<p>The AWS region where the connection is located.</p> <p>Example: us-east-1</p> <p>Default: None</p>",
      "refs": {
        "Connection$region": null,
        "Interconnect$region": null
      }
    },
    "RouteFilterPrefix": {
      "base": "<p>A route filter prefix that the customer can advertise through Border Gateway Protocol (BGP) over a public virtual interface.</p>",
      "refs": {
        "RouteFilterPrefixList$member": null
      }
    },
    "RouteFilterPrefixList": {
      "base": "<p>A list of routes to be advertised to the AWS network in this region (public virtual interface).</p>",
      "refs": {
        "NewPublicVirtualInterface$routeFilterPrefixes": null,
        "NewPublicVirtualInterfaceAllocation$routeFilterPrefixes": null,
        "VirtualInterface$routeFilterPrefixes": null
      }
    },
    "RouterConfig": {
      "base": null,
      "refs": {
        "VirtualInterface$customerRouterConfig": "<p>Information for generating the customer router configuration.</p>"
      }
    },
    "VLAN": {
      "base": "<p>The VLAN ID.</p> <p>Example: 101</p>",
      "refs": {
        "AllocateConnectionOnInterconnectRequest$vlan": "<p>The dedicated VLAN provisioned to the connection.</p> <p>Example: 101</p> <p>Default: None</p>",
        "Connection$vlan": null,
        "NewPrivateVirtualInterface$vlan": null,
        "NewPrivateVirtualInterfaceAllocation$vlan": null,
        "NewPublicVirtualInterface$vlan": null,
        "NewPublicVirtualInterfaceAllocation$vlan": null,
        "VirtualInterface$vlan": null
      }
    },
    "VirtualGateway": {
      "base": "<p>You can create one or more AWS Direct Connect private virtual interfaces linking to your virtual private gateway.</p> <p>Virtual private gateways can be managed using the Amazon Virtual Private Cloud (Amazon VPC) console or the <a href=\"http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html\">Amazon EC2 CreateVpnGateway action</a>.</p>",
      "refs": {
        "VirtualGatewayList$member": null
      }
    },
    "VirtualGatewayId": {
      "base": "<p>The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.</p> <p>Example: vgw-123er56</p>",
      "refs": {
        "ConfirmPrivateVirtualInterfaceRequest$virtualGatewayId": "<p>ID of the virtual private gateway that will be attached to the virtual interface.</p> <p> A virtual private gateway can be managed via the Amazon Virtual Private Cloud (VPC) console or the <a href=\"http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html\">EC2 CreateVpnGateway</a> action.</p> <p>Default: None</p>",
        "NewPrivateVirtualInterface$virtualGatewayId": null,
        "VirtualGateway$virtualGatewayId": null,
        "VirtualInterface$virtualGatewayId": null
      }
    },
    "VirtualGatewayList": {
      "base": "<p>A list of virtual private gateways.</p>",
      "refs": {
        "VirtualGateways$virtualGateways": "<p>A list of virtual private gateways.</p>"
      }
    },
    "VirtualGatewayState": {
      "base": "<p>State of the virtual private gateway.</p> <ul> <li> <p> <b>Pending</b>: This is the initial state after calling <i>CreateVpnGateway</i>.</p> </li> <li> <p> <b>Available</b>: Ready for use by a private virtual interface.</p> </li> <li> <p> <b>Deleting</b>: This is the initial state after calling <i>DeleteVpnGateway</i>.</p> </li> <li> <p> <b>Deleted</b>: In this state, a private virtual interface is unable to send traffic over this gateway.</p> </li> </ul>",
      "refs": {
        "VirtualGateway$virtualGatewayState": null
      }
    },
    "VirtualGateways": {
      "base": "<p>A structure containing a list of virtual private gateways.</p>",
      "refs": {
      }
    },
    "VirtualInterface": {
      "base": "<p>A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.</p>",
      "refs": {
        "VirtualInterfaceList$member": null
      }
    },
    "VirtualInterfaceId": {
      "base": "<p>ID of the virtual interface.</p> <p>Example: dxvif-123dfg56</p> <p>Default: None</p>",
      "refs": {
        "ConfirmPrivateVirtualInterfaceRequest$virtualInterfaceId": null,
        "ConfirmPublicVirtualInterfaceRequest$virtualInterfaceId": null,
        "DeleteVirtualInterfaceRequest$virtualInterfaceId": null,
        "DescribeVirtualInterfacesRequest$virtualInterfaceId": null,
        "VirtualInterface$virtualInterfaceId": null
      }
    },
    "VirtualInterfaceList": {
      "base": "<p>A list of virtual interfaces.</p>",
      "refs": {
        "VirtualInterfaces$virtualInterfaces": "<p>A list of virtual interfaces.</p>"
      }
    },
    "VirtualInterfaceName": {
      "base": "<p>The name of the virtual interface assigned by the customer.</p> <p>Example: \"My VPC\"</p>",
      "refs": {
        "NewPrivateVirtualInterface$virtualInterfaceName": null,
        "NewPrivateVirtualInterfaceAllocation$virtualInterfaceName": null,
        "NewPublicVirtualInterface$virtualInterfaceName": null,
        "NewPublicVirtualInterfaceAllocation$virtualInterfaceName": null,
        "VirtualInterface$virtualInterfaceName": null
      }
    },
    "VirtualInterfaceState": {
      "base": "<p>State of the virtual interface.</p> <ul> <li> <p> <b>Confirming</b>: The creation of the virtual interface is pending confirmation from the virtual interface owner. If the owner of the virtual interface is different from the owner of the connection on which it is provisioned, then the virtual interface will remain in this state until it is confirmed by the virtual interface owner.</p> </li> <li> <p> <b>Verifying</b>: This state only applies to public virtual interfaces. Each public virtual interface needs validation before the virtual interface can be created.</p> </li> <li> <p> <b>Pending</b>: A virtual interface is in this state from the time that it is created until the virtual interface is ready to forward traffic.</p> </li> <li> <p> <b>Available</b>: A virtual interface that is able to forward traffic.</p> </li> <li> <p> <b>Down</b>: A virtual interface that is BGP down.</p> </li> <li> <p> <b>Deleting</b>: A virtual interface is in this state immediately after calling <i>DeleteVirtualInterface</i> until it can no longer forward traffic.</p> </li> <li> <p> <b>Deleted</b>: A virtual interface that cannot forward traffic.</p> </li> <li> <p> <b>Rejected</b>: The virtual interface owner has declined creation of the virtual interface. If a virtual interface in the 'Confirming' state is deleted by the virtual interface owner, the virtual interface will enter the 'Rejected' state.</p> </li> </ul>",
      "refs": {
        "ConfirmPrivateVirtualInterfaceResponse$virtualInterfaceState": null,
        "ConfirmPublicVirtualInterfaceResponse$virtualInterfaceState": null,
        "DeleteVirtualInterfaceResponse$virtualInterfaceState": null,
        "VirtualInterface$virtualInterfaceState": null
      }
    },
    "VirtualInterfaceType": {
      "base": "<p>The type of virtual interface.</p> <p>Example: private (Amazon VPC) or public (Amazon S3, Amazon DynamoDB, and so on.)</p>",
      "refs": {
        "VirtualInterface$virtualInterfaceType": null
      }
    },
    "VirtualInterfaces": {
      "base": "<p>A structure containing a list of virtual interfaces.</p>",
      "refs": {
      }
    }
  }
}
