{
  "api_version": "2012-10-25",
  "type": "json",
  "json_version": 1.1,
  "target_prefix": "OvertureService",
  "signature_version": "v4",
  "service_full_name": "AWS Direct Connect",
  "endpoint_prefix": "directconnect",
  "xmlnamespace": "http://directconnect.amazonaws.com/doc/2012-10-25/",
  "documentation": "\n    <p>AWS Direct Connect makes it easy to establish a dedicated network connection from your premises to Amazon Web Services (AWS).  Using AWS Direct Connect, you can establish private connectivity between AWS and your data center, office, or colocation environment, which in many cases can reduce your network costs, increase bandwidth throughput, and provide a more consistent network experience than Internet-based connections.</p>\n\n    <p>The AWS Direct Connect API Reference provides descriptions, syntax, and usage examples for each of the actions and data types for AWS Direct Connect. Use the following links to get started using the <i>AWS Direct Connect API Reference</i>:</p>\n    <ul>\n      <li>\n<a href=\"http://docs.aws.amazon.com/directconnect/latest/APIReference/API_Operations.html\">Actions</a>: An alphabetical list of all AWS Direct Connect actions.</li>\n      <li>\n<a href=\"http://docs.aws.amazon.com/directconnect/latest/APIReference/API_Types.html\">Data Types</a>: An alphabetical list of all AWS Direct Connect data types.</li>\n      <li>\n<a href=\"http://docs.aws.amazon.com/directconnect/latest/APIReference/CommonParameters.html\">Common Query Parameters</a>: Parameters that all Query actions can use.</li>\n      <li>\n<a href=\"http://docs.aws.amazon.com/directconnect/latest/APIReference/CommonErrors.html\">Common Errors</a>: Client and server errors that all actions can return.</li>\n    </ul>\n  ",
  "operations": {
    "AllocateConnectionOnInterconnect": {
      "name": "AllocateConnectionOnInterconnect",
      "input": {
        "shape_name": "AllocateConnectionOnInterconnectRequest",
        "type": "structure",
        "members": {
          "bandwidth": {
            "shape_name": "Bandwidth",
            "type": "string",
            "documentation": "\n    <p>Bandwidth of the connection.</p>\n    <p>Example: \"<i>500Mbps</i>\"</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "connectionName": {
            "shape_name": "ConnectionName",
            "type": "string",
            "documentation": "\n    <p>Name of the provisioned connection.</p>\n    <p>Example: \"<i>500M Connection to AWS</i>\"</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": "\n    <p>Numeric account Id of the customer for whom the connection will be provisioned.</p>\n    <p>Example: 123443215678</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "interconnectId": {
            "shape_name": "InterconnectId",
            "type": "string",
            "documentation": "\n    <p>ID of the interconnect on which the connection will be provisioned.</p>\n    <p>Example: dxcon-456abc78</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "vlan": {
            "shape_name": "VLAN",
            "type": "integer",
            "documentation": "\n    <p>The dedicated VLAN provisioned to the connection.</p>\n    <p>Example: 101</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the AllocateConnectionOnInterconnect operation.</p>\n  "
      },
      "output": {
        "shape_name": "Connection",
        "type": "structure",
        "members": {
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": null
          },
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
          },
          "connectionName": {
            "shape_name": "ConnectionName",
            "type": "string",
            "documentation": "\n    <p>The name of the connection.</p>\n    <p>Example: \"<i>My Connection to AWS</i>\"</p>\n    <p>Default: None</p>\n  "
          },
          "connectionState": {
            "shape_name": "ConnectionState",
            "type": "string",
            "enum": [
              "ordering",
              "requested",
              "pending",
              "available",
              "down",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the connection.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Pending</b>: The connection has been approved, and is being initialized.</li>\n      <li>\n<b>Available</b>: The network link is up, and the connection is ready for use.</li>\n      <li>\n<b>Down</b>: The network link is down.</li>\n      <li>\n<b>Deleted</b>: The connection has been deleted.</li>\n      <li>\n<b>Rejected</b>: A hosted connection in the 'Ordering' state will enter the 'Rejected' state if it is deleted by the end customer.</li>\n    </ul>\n  "
          },
          "region": {
            "shape_name": "Region",
            "type": "string",
            "documentation": "\n    <p>The AWS region where the connection is located.</p>\n    <p>Example: us-east-1</p>\n    <p>Default: None</p>\n  "
          },
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
          },
          "bandwidth": {
            "shape_name": "Bandwidth",
            "type": "string",
            "documentation": "\n    <p>Bandwidth of the connection.</p>\n    <p>Example: 1Gbps (for regular connections), or 500Mbps (for hosted connections)</p>\n    <p>Default: None</p>\n  "
          },
          "vlan": {
            "shape_name": "VLAN",
            "type": "integer",
            "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
          },
          "partnerName": {
            "shape_name": "PartnerName",
            "type": "string",
            "documentation": null
          }
        },
        "documentation": "\n    <p>A connection represents the physical network connection between the AWS Direct Connect location and the customer.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Creates a hosted connection on an interconnect.</p>\n    <p>Allocates a VLAN number and a specified amount of bandwidth for use by a hosted connection on the given interconnect.</p>\n  "
    },
    "AllocatePrivateVirtualInterface": {
      "name": "AllocatePrivateVirtualInterface",
      "input": {
        "shape_name": "AllocatePrivateVirtualInterfaceRequest",
        "type": "structure",
        "members": {
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>The connection ID on which the private virtual interface is provisioned.</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": "\n    <p>The AWS account that will own the new private virtual interface.</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "newPrivateVirtualInterfaceAllocation": {
            "shape_name": "NewPrivateVirtualInterfaceAllocation",
            "type": "structure",
            "members": {
              "virtualInterfaceName": {
                "shape_name": "VirtualInterfaceName",
                "type": "string",
                "documentation": "\n    <p>The name of the virtual interface assigned by the customer.</p>\n    <p>Example: \"My VPC\"</p>\n  ",
                "required": true
              },
              "vlan": {
                "shape_name": "VLAN",
                "type": "integer",
                "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  ",
                "required": true
              },
              "asn": {
                "shape_name": "ASN",
                "type": "integer",
                "documentation": "\n    <p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p>\n    <p>Example: 65000</p>\n  ",
                "required": true
              },
              "authKey": {
                "shape_name": "BGPAuthKey",
                "type": "string",
                "documentation": "\n    <p>Authentication key for BGP configuration.</p>\n    <p>Example: asdf34example</p>\n  "
              },
              "amazonAddress": {
                "shape_name": "AmazonAddress",
                "type": "string",
                "documentation": "\n    <p>IP address assigned to the Amazon interface.</p>\n    <p>Example: 192.168.1.1/30</p>\n  "
              },
              "customerAddress": {
                "shape_name": "CustomerAddress",
                "type": "string",
                "documentation": "\n    <p>IP address assigned to the customer interface.</p>\n    <p>Example: 192.168.1.2/30</p>\n  "
              }
            },
            "documentation": "\n    <p>Detailed information for the private virtual interface to be provisioned.</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the AllocatePrivateVirtualInterface operation.</p>\n  "
      },
      "output": {
        "shape_name": "VirtualInterface",
        "type": "structure",
        "members": {
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": null
          },
          "virtualInterfaceId": {
            "shape_name": "VirtualInterfaceId",
            "type": "string",
            "documentation": "\n    <p>ID of the virtual interface.</p>\n    <p>Example: dxvif-123dfg56</p>\n    <p>Default: None</p>\n  "
          },
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
          },
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
          },
          "virtualInterfaceType": {
            "shape_name": "VirtualInterfaceType",
            "type": "string",
            "documentation": "\n    <p>The type of virtual interface.</p>\n    <p>Example: private (Amazon VPC) or public (Amazon S3, Amazon DynamoDB, and so on.)</p>\n  "
          },
          "virtualInterfaceName": {
            "shape_name": "VirtualInterfaceName",
            "type": "string",
            "documentation": "\n    <p>The name of the virtual interface assigned by the customer.</p>\n    <p>Example: \"My VPC\"</p>\n  "
          },
          "vlan": {
            "shape_name": "VLAN",
            "type": "integer",
            "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
          },
          "asn": {
            "shape_name": "ASN",
            "type": "integer",
            "documentation": "\n    <p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p>\n    <p>Example: 65000</p>\n  "
          },
          "authKey": {
            "shape_name": "BGPAuthKey",
            "type": "string",
            "documentation": "\n    <p>Authentication key for BGP configuration.</p>\n    <p>Example: asdf34example</p>\n  "
          },
          "amazonAddress": {
            "shape_name": "AmazonAddress",
            "type": "string",
            "documentation": "\n    <p>IP address assigned to the Amazon interface.</p>\n    <p>Example: 192.168.1.1/30</p>\n  "
          },
          "customerAddress": {
            "shape_name": "CustomerAddress",
            "type": "string",
            "documentation": "\n    <p>IP address assigned to the customer interface.</p>\n    <p>Example: 192.168.1.2/30</p>\n  "
          },
          "virtualInterfaceState": {
            "shape_name": "VirtualInterfaceState",
            "type": "string",
            "enum": [
              "confirming",
              "verifying",
              "pending",
              "available",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the virtual interface.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Verifying</b>: This state only applies to public virtual interfaces.  Each public virtual interface needs validation before the virtual interface can be created.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Available</b>: A virtual interface that is able to forward traffic.</li>\n      <li>\n<b>Deleting</b>:  A virtual interface is in this state immediately after calling <i>DeleteVirtualInterface</i> until it can no longer forward traffic.</li>\n      <li>\n<b>Deleted</b>:  A virtual interface that cannot forward traffic.</li>\n      <li>\n<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.</li>\n    </ul>\n  "
          },
          "customerRouterConfig": {
            "shape_name": "RouterConfig",
            "type": "string",
            "documentation": "\n    <p>Information for generating the customer router configuration.</p>\n  "
          },
          "virtualGatewayId": {
            "shape_name": "VirtualGatewayId",
            "type": "string",
            "documentation": "\n    <p>The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.</p>\n    <p>Example: vgw-123er56</p>\n  "
          },
          "routeFilterPrefixes": {
            "shape_name": "RouteFilterPrefixList",
            "type": "list",
            "members": {
              "shape_name": "RouteFilterPrefix",
              "type": "structure",
              "members": {
                "cidr": {
                  "shape_name": "CIDR",
                  "type": "string",
                  "documentation": "\n    <p>CIDR notation for the advertised route. Multiple routes are separated by commas.</p>\n    <p>Example: 10.10.10.0/24,10.10.11.0/24</p>\n  "
                }
              },
              "documentation": "\n    <p>A route filter prefix that the customer can advertise through Border Gateway Protocol (BGP) over a public virtual interface.</p>\n  "
            },
            "documentation": "\n    <p>A list of routes to be advertised to the AWS network in this region (public virtual interface) or your VPC (private virtual interface).</p>\n  "
          }
        },
        "documentation": "\n    <p>A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Provisions a private virtual interface to be owned by a different customer.</p>\n    <p>The owner of a connection calls this function to provision a private virtual interface which will be owned by another AWS customer.</p>\n    <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>\n  "
    },
    "AllocatePublicVirtualInterface": {
      "name": "AllocatePublicVirtualInterface",
      "input": {
        "shape_name": "AllocatePublicVirtualInterfaceRequest",
        "type": "structure",
        "members": {
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>The connection ID on which the public virtual interface is provisioned.</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": "\n    <p>The AWS account that will own the new public virtual interface.</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "newPublicVirtualInterfaceAllocation": {
            "shape_name": "NewPublicVirtualInterfaceAllocation",
            "type": "structure",
            "members": {
              "virtualInterfaceName": {
                "shape_name": "VirtualInterfaceName",
                "type": "string",
                "documentation": "\n    <p>The name of the virtual interface assigned by the customer.</p>\n    <p>Example: \"My VPC\"</p>\n  ",
                "required": true
              },
              "vlan": {
                "shape_name": "VLAN",
                "type": "integer",
                "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  ",
                "required": true
              },
              "asn": {
                "shape_name": "ASN",
                "type": "integer",
                "documentation": "\n    <p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p>\n    <p>Example: 65000</p>\n  ",
                "required": true
              },
              "authKey": {
                "shape_name": "BGPAuthKey",
                "type": "string",
                "documentation": "\n    <p>Authentication key for BGP configuration.</p>\n    <p>Example: asdf34example</p>\n  "
              },
              "amazonAddress": {
                "shape_name": "AmazonAddress",
                "type": "string",
                "documentation": "\n    <p>IP address assigned to the Amazon interface.</p>\n    <p>Example: 192.168.1.1/30</p>\n  ",
                "required": true
              },
              "customerAddress": {
                "shape_name": "CustomerAddress",
                "type": "string",
                "documentation": "\n    <p>IP address assigned to the customer interface.</p>\n    <p>Example: 192.168.1.2/30</p>\n  ",
                "required": true
              },
              "routeFilterPrefixes": {
                "shape_name": "RouteFilterPrefixList",
                "type": "list",
                "members": {
                  "shape_name": "RouteFilterPrefix",
                  "type": "structure",
                  "members": {
                    "cidr": {
                      "shape_name": "CIDR",
                      "type": "string",
                      "documentation": "\n    <p>CIDR notation for the advertised route. Multiple routes are separated by commas.</p>\n    <p>Example: 10.10.10.0/24,10.10.11.0/24</p>\n  "
                    }
                  },
                  "documentation": "\n    <p>A route filter prefix that the customer can advertise through Border Gateway Protocol (BGP) over a public virtual interface.</p>\n  "
                },
                "documentation": "\n    <p>A list of routes to be advertised to the AWS network in this region (public virtual interface) or your VPC (private virtual interface).</p>\n  ",
                "required": true
              }
            },
            "documentation": "\n    <p>Detailed information for the public virtual interface to be provisioned.</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the AllocatePublicVirtualInterface operation.</p>\n  "
      },
      "output": {
        "shape_name": "VirtualInterface",
        "type": "structure",
        "members": {
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": null
          },
          "virtualInterfaceId": {
            "shape_name": "VirtualInterfaceId",
            "type": "string",
            "documentation": "\n    <p>ID of the virtual interface.</p>\n    <p>Example: dxvif-123dfg56</p>\n    <p>Default: None</p>\n  "
          },
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
          },
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
          },
          "virtualInterfaceType": {
            "shape_name": "VirtualInterfaceType",
            "type": "string",
            "documentation": "\n    <p>The type of virtual interface.</p>\n    <p>Example: private (Amazon VPC) or public (Amazon S3, Amazon DynamoDB, and so on.)</p>\n  "
          },
          "virtualInterfaceName": {
            "shape_name": "VirtualInterfaceName",
            "type": "string",
            "documentation": "\n    <p>The name of the virtual interface assigned by the customer.</p>\n    <p>Example: \"My VPC\"</p>\n  "
          },
          "vlan": {
            "shape_name": "VLAN",
            "type": "integer",
            "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
          },
          "asn": {
            "shape_name": "ASN",
            "type": "integer",
            "documentation": "\n    <p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p>\n    <p>Example: 65000</p>\n  "
          },
          "authKey": {
            "shape_name": "BGPAuthKey",
            "type": "string",
            "documentation": "\n    <p>Authentication key for BGP configuration.</p>\n    <p>Example: asdf34example</p>\n  "
          },
          "amazonAddress": {
            "shape_name": "AmazonAddress",
            "type": "string",
            "documentation": "\n    <p>IP address assigned to the Amazon interface.</p>\n    <p>Example: 192.168.1.1/30</p>\n  "
          },
          "customerAddress": {
            "shape_name": "CustomerAddress",
            "type": "string",
            "documentation": "\n    <p>IP address assigned to the customer interface.</p>\n    <p>Example: 192.168.1.2/30</p>\n  "
          },
          "virtualInterfaceState": {
            "shape_name": "VirtualInterfaceState",
            "type": "string",
            "enum": [
              "confirming",
              "verifying",
              "pending",
              "available",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the virtual interface.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Verifying</b>: This state only applies to public virtual interfaces.  Each public virtual interface needs validation before the virtual interface can be created.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Available</b>: A virtual interface that is able to forward traffic.</li>\n      <li>\n<b>Deleting</b>:  A virtual interface is in this state immediately after calling <i>DeleteVirtualInterface</i> until it can no longer forward traffic.</li>\n      <li>\n<b>Deleted</b>:  A virtual interface that cannot forward traffic.</li>\n      <li>\n<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.</li>\n    </ul>\n  "
          },
          "customerRouterConfig": {
            "shape_name": "RouterConfig",
            "type": "string",
            "documentation": "\n    <p>Information for generating the customer router configuration.</p>\n  "
          },
          "virtualGatewayId": {
            "shape_name": "VirtualGatewayId",
            "type": "string",
            "documentation": "\n    <p>The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.</p>\n    <p>Example: vgw-123er56</p>\n  "
          },
          "routeFilterPrefixes": {
            "shape_name": "RouteFilterPrefixList",
            "type": "list",
            "members": {
              "shape_name": "RouteFilterPrefix",
              "type": "structure",
              "members": {
                "cidr": {
                  "shape_name": "CIDR",
                  "type": "string",
                  "documentation": "\n    <p>CIDR notation for the advertised route. Multiple routes are separated by commas.</p>\n    <p>Example: 10.10.10.0/24,10.10.11.0/24</p>\n  "
                }
              },
              "documentation": "\n    <p>A route filter prefix that the customer can advertise through Border Gateway Protocol (BGP) over a public virtual interface.</p>\n  "
            },
            "documentation": "\n    <p>A list of routes to be advertised to the AWS network in this region (public virtual interface) or your VPC (private virtual interface).</p>\n  "
          }
        },
        "documentation": "\n    <p>A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Provisions a public virtual interface to be owned by a different customer.</p>\n    <p>The owner of a connection calls this function to provision a public virtual interface which will be owned by another AWS customer.</p>\n    <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>\n  "
    },
    "ConfirmConnection": {
      "name": "ConfirmConnection",
      "input": {
        "shape_name": "ConfirmConnectionRequest",
        "type": "structure",
        "members": {
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the ConfirmConnection operation.</p>\n  "
      },
      "output": {
        "shape_name": "ConfirmConnectionResponse",
        "type": "structure",
        "members": {
          "connectionState": {
            "shape_name": "ConnectionState",
            "type": "string",
            "enum": [
              "ordering",
              "requested",
              "pending",
              "available",
              "down",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the connection.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Pending</b>: The connection has been approved, and is being initialized.</li>\n      <li>\n<b>Available</b>: The network link is up, and the connection is ready for use.</li>\n      <li>\n<b>Down</b>: The network link is down.</li>\n      <li>\n<b>Deleted</b>: The connection has been deleted.</li>\n      <li>\n<b>Rejected</b>: A hosted connection in the 'Ordering' state will enter the 'Rejected' state if it is deleted by the end customer.</li>\n    </ul>\n  "
          }
        },
        "documentation": "\n    <p>The response received when ConfirmConnection is called.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Confirm the creation of a hosted connection on an interconnect.</p>\n    <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>\n  "
    },
    "ConfirmPrivateVirtualInterface": {
      "name": "ConfirmPrivateVirtualInterface",
      "input": {
        "shape_name": "ConfirmPrivateVirtualInterfaceRequest",
        "type": "structure",
        "members": {
          "virtualInterfaceId": {
            "shape_name": "VirtualInterfaceId",
            "type": "string",
            "documentation": "\n    <p>ID of the virtual interface.</p>\n    <p>Example: dxvif-123dfg56</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "virtualGatewayId": {
            "shape_name": "VirtualGatewayId",
            "type": "string",
            "documentation": "\n    <p>ID of the virtual private gateway that will be attached to the virtual interface.</p>\n    <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>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the ConfirmPrivateVirtualInterface operation.</p>\n  "
      },
      "output": {
        "shape_name": "ConfirmPrivateVirtualInterfaceResponse",
        "type": "structure",
        "members": {
          "virtualInterfaceState": {
            "shape_name": "VirtualInterfaceState",
            "type": "string",
            "enum": [
              "confirming",
              "verifying",
              "pending",
              "available",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the virtual interface.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Verifying</b>: This state only applies to public virtual interfaces.  Each public virtual interface needs validation before the virtual interface can be created.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Available</b>: A virtual interface that is able to forward traffic.</li>\n      <li>\n<b>Deleting</b>:  A virtual interface is in this state immediately after calling <i>DeleteVirtualInterface</i> until it can no longer forward traffic.</li>\n      <li>\n<b>Deleted</b>:  A virtual interface that cannot forward traffic.</li>\n      <li>\n<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.</li>\n    </ul>\n  "
          }
        },
        "documentation": "\n    <p>The response received when ConfirmPrivateVirtualInterface is called.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Accept ownership of a private virtual interface created by another customer.</p>\n    <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>\n  "
    },
    "ConfirmPublicVirtualInterface": {
      "name": "ConfirmPublicVirtualInterface",
      "input": {
        "shape_name": "ConfirmPublicVirtualInterfaceRequest",
        "type": "structure",
        "members": {
          "virtualInterfaceId": {
            "shape_name": "VirtualInterfaceId",
            "type": "string",
            "documentation": "\n    <p>ID of the virtual interface.</p>\n    <p>Example: dxvif-123dfg56</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the ConfirmPublicVirtualInterface operation.</p>\n  "
      },
      "output": {
        "shape_name": "ConfirmPublicVirtualInterfaceResponse",
        "type": "structure",
        "members": {
          "virtualInterfaceState": {
            "shape_name": "VirtualInterfaceState",
            "type": "string",
            "enum": [
              "confirming",
              "verifying",
              "pending",
              "available",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the virtual interface.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Verifying</b>: This state only applies to public virtual interfaces.  Each public virtual interface needs validation before the virtual interface can be created.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Available</b>: A virtual interface that is able to forward traffic.</li>\n      <li>\n<b>Deleting</b>:  A virtual interface is in this state immediately after calling <i>DeleteVirtualInterface</i> until it can no longer forward traffic.</li>\n      <li>\n<b>Deleted</b>:  A virtual interface that cannot forward traffic.</li>\n      <li>\n<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.</li>\n    </ul>\n  "
          }
        },
        "documentation": "\n    <p>The response received when ConfirmPublicVirtualInterface is called.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Accept ownership of a public virtual interface created by another customer.</p>\n    <p>After the virtual interface owner calls this function, the specified virtual interface will be created and made available for handling traffic.</p>\n  "
    },
    "CreateConnection": {
      "name": "CreateConnection",
      "input": {
        "shape_name": "CreateConnectionRequest",
        "type": "structure",
        "members": {
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "bandwidth": {
            "shape_name": "Bandwidth",
            "type": "string",
            "documentation": "\n    <p>Bandwidth of the connection.</p>\n    <p>Example: 1Gbps</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "connectionName": {
            "shape_name": "ConnectionName",
            "type": "string",
            "documentation": "\n    <p>The name of the connection.</p>\n    <p>Example: \"<i>My Connection to AWS</i>\"</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the CreateConnection operation.</p>\n  "
      },
      "output": {
        "shape_name": "Connection",
        "type": "structure",
        "members": {
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": null
          },
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
          },
          "connectionName": {
            "shape_name": "ConnectionName",
            "type": "string",
            "documentation": "\n    <p>The name of the connection.</p>\n    <p>Example: \"<i>My Connection to AWS</i>\"</p>\n    <p>Default: None</p>\n  "
          },
          "connectionState": {
            "shape_name": "ConnectionState",
            "type": "string",
            "enum": [
              "ordering",
              "requested",
              "pending",
              "available",
              "down",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the connection.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Pending</b>: The connection has been approved, and is being initialized.</li>\n      <li>\n<b>Available</b>: The network link is up, and the connection is ready for use.</li>\n      <li>\n<b>Down</b>: The network link is down.</li>\n      <li>\n<b>Deleted</b>: The connection has been deleted.</li>\n      <li>\n<b>Rejected</b>: A hosted connection in the 'Ordering' state will enter the 'Rejected' state if it is deleted by the end customer.</li>\n    </ul>\n  "
          },
          "region": {
            "shape_name": "Region",
            "type": "string",
            "documentation": "\n    <p>The AWS region where the connection is located.</p>\n    <p>Example: us-east-1</p>\n    <p>Default: None</p>\n  "
          },
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
          },
          "bandwidth": {
            "shape_name": "Bandwidth",
            "type": "string",
            "documentation": "\n    <p>Bandwidth of the connection.</p>\n    <p>Example: 1Gbps (for regular connections), or 500Mbps (for hosted connections)</p>\n    <p>Default: None</p>\n  "
          },
          "vlan": {
            "shape_name": "VLAN",
            "type": "integer",
            "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
          },
          "partnerName": {
            "shape_name": "PartnerName",
            "type": "string",
            "documentation": null
          }
        },
        "documentation": "\n    <p>A connection represents the physical network connection between the AWS Direct Connect location and the customer.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Creates a new connection between the customer network and a specific AWS Direct Connect location.</p>\n\n    <p>A connection links your internal network to an AWS Direct Connect location over a standard 1\n      gigabit or 10 gigabit Ethernet fiber-optic cable. One end of the cable is connected to your\n      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>\n  "
    },
    "CreateInterconnect": {
      "name": "CreateInterconnect",
      "input": {
        "shape_name": "CreateInterconnectRequest",
        "type": "structure",
        "members": {
          "interconnectName": {
            "shape_name": "InterconnectName",
            "type": "string",
            "documentation": "\n    <p>The name of the interconnect.</p>\n    <p>Example: \"<i>1G Interconnect to AWS</i>\"</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "bandwidth": {
            "shape_name": "Bandwidth",
            "type": "string",
            "documentation": "\n    <p>The port bandwidth</p>\n    <p>Example: 1Gbps</p>\n    <p>Default: None</p>\n    <p>Available values: 1Gbps,10Gbps</p>\n  ",
            "required": true
          },
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the interconnect is located</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the CreateInterconnect operation.</p>\n  "
      },
      "output": {
        "shape_name": "Interconnect",
        "type": "structure",
        "members": {
          "interconnectId": {
            "shape_name": "InterconnectId",
            "type": "string",
            "documentation": "\n    <p>The ID of the interconnect.</p>\n    <p>Example: dxcon-abc123</p>\n  "
          },
          "interconnectName": {
            "shape_name": "InterconnectName",
            "type": "string",
            "documentation": "\n    <p>The name of the interconnect.</p>\n    <p>Example: \"<i>1G Interconnect to AWS</i>\"</p>\n  "
          },
          "interconnectState": {
            "shape_name": "InterconnectState",
            "type": "string",
            "enum": [
              "requested",
              "pending",
              "available",
              "down",
              "deleting",
              "deleted"
            ],
            "documentation": "\n    State of the interconnect.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Pending</b>: The interconnect has been approved, and is being initialized.</li>\n      <li>\n<b>Available</b>: The network link is up, and the interconnect is ready for use.</li>\n      <li>\n<b>Down</b>: The network link is down.</li>\n      <li>\n<b>Deleted</b>: The interconnect has been deleted.</li>\n    </ul>\n  "
          },
          "region": {
            "shape_name": "Region",
            "type": "string",
            "documentation": "\n    <p>The AWS region where the connection is located.</p>\n    <p>Example: us-east-1</p>\n    <p>Default: None</p>\n  "
          },
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
          },
          "bandwidth": {
            "shape_name": "Bandwidth",
            "type": "string",
            "documentation": "\n    <p>Bandwidth of the connection.</p>\n    <p>Example: 1Gbps</p>\n    <p>Default: None</p>\n  "
          }
        },
        "documentation": "\n    <p>An interconnect is a connection that can host other connections.</p>\n    <p>Like a standard AWS Direct Connect connection, an interconnect represents the physical\n      connection between an AWS Direct Connect partner's network and a specific Direct Connect\n      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>\n    <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>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Creates a new interconnect between a AWS Direct Connect partner's network and a specific AWS Direct Connect location.</p>\n    <p>An interconnect is a connection which is capable of hosting other connections.  The AWS\n      Direct Connect partner can use an interconnect to provide sub-1Gbps AWS Direct Connect service\n      to tier 2 customers who do not have their own connections.  Like a standard connection, an\n      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>\n    <p>For each end customer, the AWS Direct Connect partner provisions a connection on their\n      interconnect by calling AllocateConnectionOnInterconnect.  The end customer can then connect\n      to AWS resources by creating a virtual interface on their connection, using the VLAN assigned\n      to them by the AWS Direct Connect partner.</p>\n  "
    },
    "CreatePrivateVirtualInterface": {
      "name": "CreatePrivateVirtualInterface",
      "input": {
        "shape_name": "CreatePrivateVirtualInterfaceRequest",
        "type": "structure",
        "members": {
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "newPrivateVirtualInterface": {
            "shape_name": "NewPrivateVirtualInterface",
            "type": "structure",
            "members": {
              "virtualInterfaceName": {
                "shape_name": "VirtualInterfaceName",
                "type": "string",
                "documentation": "\n    <p>The name of the virtual interface assigned by the customer.</p>\n    <p>Example: \"My VPC\"</p>\n  ",
                "required": true
              },
              "vlan": {
                "shape_name": "VLAN",
                "type": "integer",
                "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  ",
                "required": true
              },
              "asn": {
                "shape_name": "ASN",
                "type": "integer",
                "documentation": "\n    <p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p>\n    <p>Example: 65000</p>\n  ",
                "required": true
              },
              "authKey": {
                "shape_name": "BGPAuthKey",
                "type": "string",
                "documentation": "\n    <p>Authentication key for BGP configuration.</p>\n    <p>Example: asdf34example</p>\n  "
              },
              "amazonAddress": {
                "shape_name": "AmazonAddress",
                "type": "string",
                "documentation": "\n    <p>IP address assigned to the Amazon interface.</p>\n    <p>Example: 192.168.1.1/30</p>\n  "
              },
              "customerAddress": {
                "shape_name": "CustomerAddress",
                "type": "string",
                "documentation": "\n    <p>IP address assigned to the customer interface.</p>\n    <p>Example: 192.168.1.2/30</p>\n  "
              },
              "virtualGatewayId": {
                "shape_name": "VirtualGatewayId",
                "type": "string",
                "documentation": "\n    <p>The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.</p>\n    <p>Example: vgw-123er56</p>\n  ",
                "required": true
              }
            },
            "documentation": "\n    <p>Detailed information for the private virtual interface to be created.</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the CreatePrivateVirtualInterface operation.</p>\n  "
      },
      "output": {
        "shape_name": "VirtualInterface",
        "type": "structure",
        "members": {
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": null
          },
          "virtualInterfaceId": {
            "shape_name": "VirtualInterfaceId",
            "type": "string",
            "documentation": "\n    <p>ID of the virtual interface.</p>\n    <p>Example: dxvif-123dfg56</p>\n    <p>Default: None</p>\n  "
          },
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
          },
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
          },
          "virtualInterfaceType": {
            "shape_name": "VirtualInterfaceType",
            "type": "string",
            "documentation": "\n    <p>The type of virtual interface.</p>\n    <p>Example: private (Amazon VPC) or public (Amazon S3, Amazon DynamoDB, and so on.)</p>\n  "
          },
          "virtualInterfaceName": {
            "shape_name": "VirtualInterfaceName",
            "type": "string",
            "documentation": "\n    <p>The name of the virtual interface assigned by the customer.</p>\n    <p>Example: \"My VPC\"</p>\n  "
          },
          "vlan": {
            "shape_name": "VLAN",
            "type": "integer",
            "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
          },
          "asn": {
            "shape_name": "ASN",
            "type": "integer",
            "documentation": "\n    <p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p>\n    <p>Example: 65000</p>\n  "
          },
          "authKey": {
            "shape_name": "BGPAuthKey",
            "type": "string",
            "documentation": "\n    <p>Authentication key for BGP configuration.</p>\n    <p>Example: asdf34example</p>\n  "
          },
          "amazonAddress": {
            "shape_name": "AmazonAddress",
            "type": "string",
            "documentation": "\n    <p>IP address assigned to the Amazon interface.</p>\n    <p>Example: 192.168.1.1/30</p>\n  "
          },
          "customerAddress": {
            "shape_name": "CustomerAddress",
            "type": "string",
            "documentation": "\n    <p>IP address assigned to the customer interface.</p>\n    <p>Example: 192.168.1.2/30</p>\n  "
          },
          "virtualInterfaceState": {
            "shape_name": "VirtualInterfaceState",
            "type": "string",
            "enum": [
              "confirming",
              "verifying",
              "pending",
              "available",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the virtual interface.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Verifying</b>: This state only applies to public virtual interfaces.  Each public virtual interface needs validation before the virtual interface can be created.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Available</b>: A virtual interface that is able to forward traffic.</li>\n      <li>\n<b>Deleting</b>:  A virtual interface is in this state immediately after calling <i>DeleteVirtualInterface</i> until it can no longer forward traffic.</li>\n      <li>\n<b>Deleted</b>:  A virtual interface that cannot forward traffic.</li>\n      <li>\n<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.</li>\n    </ul>\n  "
          },
          "customerRouterConfig": {
            "shape_name": "RouterConfig",
            "type": "string",
            "documentation": "\n    <p>Information for generating the customer router configuration.</p>\n  "
          },
          "virtualGatewayId": {
            "shape_name": "VirtualGatewayId",
            "type": "string",
            "documentation": "\n    <p>The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.</p>\n    <p>Example: vgw-123er56</p>\n  "
          },
          "routeFilterPrefixes": {
            "shape_name": "RouteFilterPrefixList",
            "type": "list",
            "members": {
              "shape_name": "RouteFilterPrefix",
              "type": "structure",
              "members": {
                "cidr": {
                  "shape_name": "CIDR",
                  "type": "string",
                  "documentation": "\n    <p>CIDR notation for the advertised route. Multiple routes are separated by commas.</p>\n    <p>Example: 10.10.10.0/24,10.10.11.0/24</p>\n  "
                }
              },
              "documentation": "\n    <p>A route filter prefix that the customer can advertise through Border Gateway Protocol (BGP) over a public virtual interface.</p>\n  "
            },
            "documentation": "\n    <p>A list of routes to be advertised to the AWS network in this region (public virtual interface) or your VPC (private virtual interface).</p>\n  "
          }
        },
        "documentation": "\n    <p>A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Creates a new private virtual interface.  A virtual interface is the VLAN that transports AWS\n      Direct Connect traffic.  A private virtual interface supports sending traffic to a single\n      virtual private cloud (VPC).</p>\n  "
    },
    "CreatePublicVirtualInterface": {
      "name": "CreatePublicVirtualInterface",
      "input": {
        "shape_name": "CreatePublicVirtualInterfaceRequest",
        "type": "structure",
        "members": {
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  ",
            "required": true
          },
          "newPublicVirtualInterface": {
            "shape_name": "NewPublicVirtualInterface",
            "type": "structure",
            "members": {
              "virtualInterfaceName": {
                "shape_name": "VirtualInterfaceName",
                "type": "string",
                "documentation": "\n    <p>The name of the virtual interface assigned by the customer.</p>\n    <p>Example: \"My VPC\"</p>\n  ",
                "required": true
              },
              "vlan": {
                "shape_name": "VLAN",
                "type": "integer",
                "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  ",
                "required": true
              },
              "asn": {
                "shape_name": "ASN",
                "type": "integer",
                "documentation": "\n    <p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p>\n    <p>Example: 65000</p>\n  ",
                "required": true
              },
              "authKey": {
                "shape_name": "BGPAuthKey",
                "type": "string",
                "documentation": "\n    <p>Authentication key for BGP configuration.</p>\n    <p>Example: asdf34example</p>\n  "
              },
              "amazonAddress": {
                "shape_name": "AmazonAddress",
                "type": "string",
                "documentation": "\n    <p>IP address assigned to the Amazon interface.</p>\n    <p>Example: 192.168.1.1/30</p>\n  ",
                "required": true
              },
              "customerAddress": {
                "shape_name": "CustomerAddress",
                "type": "string",
                "documentation": "\n    <p>IP address assigned to the customer interface.</p>\n    <p>Example: 192.168.1.2/30</p>\n  ",
                "required": true
              },
              "routeFilterPrefixes": {
                "shape_name": "RouteFilterPrefixList",
                "type": "list",
                "members": {
                  "shape_name": "RouteFilterPrefix",
                  "type": "structure",
                  "members": {
                    "cidr": {
                      "shape_name": "CIDR",
                      "type": "string",
                      "documentation": "\n    <p>CIDR notation for the advertised route. Multiple routes are separated by commas.</p>\n    <p>Example: 10.10.10.0/24,10.10.11.0/24</p>\n  "
                    }
                  },
                  "documentation": "\n    <p>A route filter prefix that the customer can advertise through Border Gateway Protocol (BGP) over a public virtual interface.</p>\n  "
                },
                "documentation": "\n    <p>A list of routes to be advertised to the AWS network in this region (public virtual interface) or your VPC (private virtual interface).</p>\n  ",
                "required": true
              }
            },
            "documentation": "\n    <p>Detailed information for the public virtual interface to be created.</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the CreatePublicVirtualInterface operation.</p>\n  "
      },
      "output": {
        "shape_name": "VirtualInterface",
        "type": "structure",
        "members": {
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": null
          },
          "virtualInterfaceId": {
            "shape_name": "VirtualInterfaceId",
            "type": "string",
            "documentation": "\n    <p>ID of the virtual interface.</p>\n    <p>Example: dxvif-123dfg56</p>\n    <p>Default: None</p>\n  "
          },
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
          },
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
          },
          "virtualInterfaceType": {
            "shape_name": "VirtualInterfaceType",
            "type": "string",
            "documentation": "\n    <p>The type of virtual interface.</p>\n    <p>Example: private (Amazon VPC) or public (Amazon S3, Amazon DynamoDB, and so on.)</p>\n  "
          },
          "virtualInterfaceName": {
            "shape_name": "VirtualInterfaceName",
            "type": "string",
            "documentation": "\n    <p>The name of the virtual interface assigned by the customer.</p>\n    <p>Example: \"My VPC\"</p>\n  "
          },
          "vlan": {
            "shape_name": "VLAN",
            "type": "integer",
            "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
          },
          "asn": {
            "shape_name": "ASN",
            "type": "integer",
            "documentation": "\n    <p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p>\n    <p>Example: 65000</p>\n  "
          },
          "authKey": {
            "shape_name": "BGPAuthKey",
            "type": "string",
            "documentation": "\n    <p>Authentication key for BGP configuration.</p>\n    <p>Example: asdf34example</p>\n  "
          },
          "amazonAddress": {
            "shape_name": "AmazonAddress",
            "type": "string",
            "documentation": "\n    <p>IP address assigned to the Amazon interface.</p>\n    <p>Example: 192.168.1.1/30</p>\n  "
          },
          "customerAddress": {
            "shape_name": "CustomerAddress",
            "type": "string",
            "documentation": "\n    <p>IP address assigned to the customer interface.</p>\n    <p>Example: 192.168.1.2/30</p>\n  "
          },
          "virtualInterfaceState": {
            "shape_name": "VirtualInterfaceState",
            "type": "string",
            "enum": [
              "confirming",
              "verifying",
              "pending",
              "available",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the virtual interface.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Verifying</b>: This state only applies to public virtual interfaces.  Each public virtual interface needs validation before the virtual interface can be created.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Available</b>: A virtual interface that is able to forward traffic.</li>\n      <li>\n<b>Deleting</b>:  A virtual interface is in this state immediately after calling <i>DeleteVirtualInterface</i> until it can no longer forward traffic.</li>\n      <li>\n<b>Deleted</b>:  A virtual interface that cannot forward traffic.</li>\n      <li>\n<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.</li>\n    </ul>\n  "
          },
          "customerRouterConfig": {
            "shape_name": "RouterConfig",
            "type": "string",
            "documentation": "\n    <p>Information for generating the customer router configuration.</p>\n  "
          },
          "virtualGatewayId": {
            "shape_name": "VirtualGatewayId",
            "type": "string",
            "documentation": "\n    <p>The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.</p>\n    <p>Example: vgw-123er56</p>\n  "
          },
          "routeFilterPrefixes": {
            "shape_name": "RouteFilterPrefixList",
            "type": "list",
            "members": {
              "shape_name": "RouteFilterPrefix",
              "type": "structure",
              "members": {
                "cidr": {
                  "shape_name": "CIDR",
                  "type": "string",
                  "documentation": "\n    <p>CIDR notation for the advertised route. Multiple routes are separated by commas.</p>\n    <p>Example: 10.10.10.0/24,10.10.11.0/24</p>\n  "
                }
              },
              "documentation": "\n    <p>A route filter prefix that the customer can advertise through Border Gateway Protocol (BGP) over a public virtual interface.</p>\n  "
            },
            "documentation": "\n    <p>A list of routes to be advertised to the AWS network in this region (public virtual interface) or your VPC (private virtual interface).</p>\n  "
          }
        },
        "documentation": "\n    <p>A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <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>\n  "
    },
    "DeleteConnection": {
      "name": "DeleteConnection",
      "input": {
        "shape_name": "DeleteConnectionRequest",
        "type": "structure",
        "members": {
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the DeleteConnection operation.</p>\n  "
      },
      "output": {
        "shape_name": "Connection",
        "type": "structure",
        "members": {
          "ownerAccount": {
            "shape_name": "OwnerAccount",
            "type": "string",
            "documentation": null
          },
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
          },
          "connectionName": {
            "shape_name": "ConnectionName",
            "type": "string",
            "documentation": "\n    <p>The name of the connection.</p>\n    <p>Example: \"<i>My Connection to AWS</i>\"</p>\n    <p>Default: None</p>\n  "
          },
          "connectionState": {
            "shape_name": "ConnectionState",
            "type": "string",
            "enum": [
              "ordering",
              "requested",
              "pending",
              "available",
              "down",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the connection.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Pending</b>: The connection has been approved, and is being initialized.</li>\n      <li>\n<b>Available</b>: The network link is up, and the connection is ready for use.</li>\n      <li>\n<b>Down</b>: The network link is down.</li>\n      <li>\n<b>Deleted</b>: The connection has been deleted.</li>\n      <li>\n<b>Rejected</b>: A hosted connection in the 'Ordering' state will enter the 'Rejected' state if it is deleted by the end customer.</li>\n    </ul>\n  "
          },
          "region": {
            "shape_name": "Region",
            "type": "string",
            "documentation": "\n    <p>The AWS region where the connection is located.</p>\n    <p>Example: us-east-1</p>\n    <p>Default: None</p>\n  "
          },
          "location": {
            "shape_name": "LocationCode",
            "type": "string",
            "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
          },
          "bandwidth": {
            "shape_name": "Bandwidth",
            "type": "string",
            "documentation": "\n    <p>Bandwidth of the connection.</p>\n    <p>Example: 1Gbps (for regular connections), or 500Mbps (for hosted connections)</p>\n    <p>Default: None</p>\n  "
          },
          "vlan": {
            "shape_name": "VLAN",
            "type": "integer",
            "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
          },
          "partnerName": {
            "shape_name": "PartnerName",
            "type": "string",
            "documentation": null
          }
        },
        "documentation": "\n    <p>A connection represents the physical network connection between the AWS Direct Connect location and the customer.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Deletes the connection.</p>\n    <p>Deleting a connection only stops the AWS Direct Connect port hour and data transfer charges.\n      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>\n  "
    },
    "DeleteInterconnect": {
      "name": "DeleteInterconnect",
      "input": {
        "shape_name": "DeleteInterconnectRequest",
        "type": "structure",
        "members": {
          "interconnectId": {
            "shape_name": "InterconnectId",
            "type": "string",
            "documentation": "\n    <p>The ID of the interconnect.</p>\n    <p>Example: dxcon-abc123</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the DeleteInterconnect operation.</p>\n  "
      },
      "output": {
        "shape_name": "DeleteInterconnectResponse",
        "type": "structure",
        "members": {
          "interconnectState": {
            "shape_name": "InterconnectState",
            "type": "string",
            "enum": [
              "requested",
              "pending",
              "available",
              "down",
              "deleting",
              "deleted"
            ],
            "documentation": "\n    State of the interconnect.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Pending</b>: The interconnect has been approved, and is being initialized.</li>\n      <li>\n<b>Available</b>: The network link is up, and the interconnect is ready for use.</li>\n      <li>\n<b>Down</b>: The network link is down.</li>\n      <li>\n<b>Deleted</b>: The interconnect has been deleted.</li>\n    </ul>\n  "
          }
        },
        "documentation": "\n    <p>The response received when DeleteInterconnect is called.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Deletes the specified interconnect.</p>\n  "
    },
    "DeleteVirtualInterface": {
      "name": "DeleteVirtualInterface",
      "input": {
        "shape_name": "DeleteVirtualInterfaceRequest",
        "type": "structure",
        "members": {
          "virtualInterfaceId": {
            "shape_name": "VirtualInterfaceId",
            "type": "string",
            "documentation": "\n    <p>ID of the virtual interface.</p>\n    <p>Example: dxvif-123dfg56</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the DeleteVirtualInterface operation.</p>\n  "
      },
      "output": {
        "shape_name": "DeleteVirtualInterfaceResponse",
        "type": "structure",
        "members": {
          "virtualInterfaceState": {
            "shape_name": "VirtualInterfaceState",
            "type": "string",
            "enum": [
              "confirming",
              "verifying",
              "pending",
              "available",
              "deleting",
              "deleted",
              "rejected"
            ],
            "documentation": "\n    State of the virtual interface.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Verifying</b>: This state only applies to public virtual interfaces.  Each public virtual interface needs validation before the virtual interface can be created.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Available</b>: A virtual interface that is able to forward traffic.</li>\n      <li>\n<b>Deleting</b>:  A virtual interface is in this state immediately after calling <i>DeleteVirtualInterface</i> until it can no longer forward traffic.</li>\n      <li>\n<b>Deleted</b>:  A virtual interface that cannot forward traffic.</li>\n      <li>\n<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.</li>\n    </ul>\n  "
          }
        },
        "documentation": "\n    <p>The response received when DeleteVirtualInterface is called.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Deletes a virtual interface.</p>\n  "
    },
    "DescribeConnections": {
      "name": "DescribeConnections",
      "input": {
        "shape_name": "DescribeConnectionsRequest",
        "type": "structure",
        "members": {
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
          }
        },
        "documentation": "\n    <p>Container for the parameters to the DescribeConnections operation.</p>\n  "
      },
      "output": {
        "shape_name": "Connections",
        "type": "structure",
        "members": {
          "connections": {
            "shape_name": "ConnectionList",
            "type": "list",
            "members": {
              "shape_name": "Connection",
              "type": "structure",
              "members": {
                "ownerAccount": {
                  "shape_name": "OwnerAccount",
                  "type": "string",
                  "documentation": null
                },
                "connectionId": {
                  "shape_name": "ConnectionId",
                  "type": "string",
                  "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
                },
                "connectionName": {
                  "shape_name": "ConnectionName",
                  "type": "string",
                  "documentation": "\n    <p>The name of the connection.</p>\n    <p>Example: \"<i>My Connection to AWS</i>\"</p>\n    <p>Default: None</p>\n  "
                },
                "connectionState": {
                  "shape_name": "ConnectionState",
                  "type": "string",
                  "enum": [
                    "ordering",
                    "requested",
                    "pending",
                    "available",
                    "down",
                    "deleting",
                    "deleted",
                    "rejected"
                  ],
                  "documentation": "\n    State of the connection.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Pending</b>: The connection has been approved, and is being initialized.</li>\n      <li>\n<b>Available</b>: The network link is up, and the connection is ready for use.</li>\n      <li>\n<b>Down</b>: The network link is down.</li>\n      <li>\n<b>Deleted</b>: The connection has been deleted.</li>\n      <li>\n<b>Rejected</b>: A hosted connection in the 'Ordering' state will enter the 'Rejected' state if it is deleted by the end customer.</li>\n    </ul>\n  "
                },
                "region": {
                  "shape_name": "Region",
                  "type": "string",
                  "documentation": "\n    <p>The AWS region where the connection is located.</p>\n    <p>Example: us-east-1</p>\n    <p>Default: None</p>\n  "
                },
                "location": {
                  "shape_name": "LocationCode",
                  "type": "string",
                  "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
                },
                "bandwidth": {
                  "shape_name": "Bandwidth",
                  "type": "string",
                  "documentation": "\n    <p>Bandwidth of the connection.</p>\n    <p>Example: 1Gbps (for regular connections), or 500Mbps (for hosted connections)</p>\n    <p>Default: None</p>\n  "
                },
                "vlan": {
                  "shape_name": "VLAN",
                  "type": "integer",
                  "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
                },
                "partnerName": {
                  "shape_name": "PartnerName",
                  "type": "string",
                  "documentation": null
                }
              },
              "documentation": "\n    <p>A connection represents the physical network connection between the AWS Direct Connect location and the customer.</p>\n  "
            },
            "documentation": "\n    <p>A list of connections.</p>\n  "
          }
        },
        "documentation": "\n    <p>A structure containing a list of connections.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Displays all connections in this region.</p>\n    <p>If a connection ID is provided, the call returns only that particular connection.</p>\n  "
    },
    "DescribeConnectionsOnInterconnect": {
      "name": "DescribeConnectionsOnInterconnect",
      "input": {
        "shape_name": "DescribeConnectionsOnInterconnectRequest",
        "type": "structure",
        "members": {
          "interconnectId": {
            "shape_name": "InterconnectId",
            "type": "string",
            "documentation": "\n    <p>ID of the interconnect on which a list of connection is provisioned.</p>\n    <p>Example: dxcon-abc123</p>\n    <p>Default: None</p>\n  ",
            "required": true
          }
        },
        "documentation": "\n    <p>Container for the parameters to the DescribeConnectionsOnInterconnect operation.</p>\n  "
      },
      "output": {
        "shape_name": "Connections",
        "type": "structure",
        "members": {
          "connections": {
            "shape_name": "ConnectionList",
            "type": "list",
            "members": {
              "shape_name": "Connection",
              "type": "structure",
              "members": {
                "ownerAccount": {
                  "shape_name": "OwnerAccount",
                  "type": "string",
                  "documentation": null
                },
                "connectionId": {
                  "shape_name": "ConnectionId",
                  "type": "string",
                  "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
                },
                "connectionName": {
                  "shape_name": "ConnectionName",
                  "type": "string",
                  "documentation": "\n    <p>The name of the connection.</p>\n    <p>Example: \"<i>My Connection to AWS</i>\"</p>\n    <p>Default: None</p>\n  "
                },
                "connectionState": {
                  "shape_name": "ConnectionState",
                  "type": "string",
                  "enum": [
                    "ordering",
                    "requested",
                    "pending",
                    "available",
                    "down",
                    "deleting",
                    "deleted",
                    "rejected"
                  ],
                  "documentation": "\n    State of the connection.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Pending</b>: The connection has been approved, and is being initialized.</li>\n      <li>\n<b>Available</b>: The network link is up, and the connection is ready for use.</li>\n      <li>\n<b>Down</b>: The network link is down.</li>\n      <li>\n<b>Deleted</b>: The connection has been deleted.</li>\n      <li>\n<b>Rejected</b>: A hosted connection in the 'Ordering' state will enter the 'Rejected' state if it is deleted by the end customer.</li>\n    </ul>\n  "
                },
                "region": {
                  "shape_name": "Region",
                  "type": "string",
                  "documentation": "\n    <p>The AWS region where the connection is located.</p>\n    <p>Example: us-east-1</p>\n    <p>Default: None</p>\n  "
                },
                "location": {
                  "shape_name": "LocationCode",
                  "type": "string",
                  "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
                },
                "bandwidth": {
                  "shape_name": "Bandwidth",
                  "type": "string",
                  "documentation": "\n    <p>Bandwidth of the connection.</p>\n    <p>Example: 1Gbps (for regular connections), or 500Mbps (for hosted connections)</p>\n    <p>Default: None</p>\n  "
                },
                "vlan": {
                  "shape_name": "VLAN",
                  "type": "integer",
                  "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
                },
                "partnerName": {
                  "shape_name": "PartnerName",
                  "type": "string",
                  "documentation": null
                }
              },
              "documentation": "\n    <p>A connection represents the physical network connection between the AWS Direct Connect location and the customer.</p>\n  "
            },
            "documentation": "\n    <p>A list of connections.</p>\n  "
          }
        },
        "documentation": "\n    <p>A structure containing a list of connections.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Return a list of connections that have been provisioned on the given interconnect.</p>\n  "
    },
    "DescribeInterconnects": {
      "name": "DescribeInterconnects",
      "input": {
        "shape_name": "DescribeInterconnectsRequest",
        "type": "structure",
        "members": {
          "interconnectId": {
            "shape_name": "InterconnectId",
            "type": "string",
            "documentation": "\n    <p>The ID of the interconnect.</p>\n    <p>Example: dxcon-abc123</p>\n  "
          }
        },
        "documentation": "\n    <p>Container for the parameters to the DescribeInterconnects operation.</p>\n  "
      },
      "output": {
        "shape_name": "Interconnects",
        "type": "structure",
        "members": {
          "interconnects": {
            "shape_name": "InterconnectList",
            "type": "list",
            "members": {
              "shape_name": "Interconnect",
              "type": "structure",
              "members": {
                "interconnectId": {
                  "shape_name": "InterconnectId",
                  "type": "string",
                  "documentation": "\n    <p>The ID of the interconnect.</p>\n    <p>Example: dxcon-abc123</p>\n  "
                },
                "interconnectName": {
                  "shape_name": "InterconnectName",
                  "type": "string",
                  "documentation": "\n    <p>The name of the interconnect.</p>\n    <p>Example: \"<i>1G Interconnect to AWS</i>\"</p>\n  "
                },
                "interconnectState": {
                  "shape_name": "InterconnectState",
                  "type": "string",
                  "enum": [
                    "requested",
                    "pending",
                    "available",
                    "down",
                    "deleting",
                    "deleted"
                  ],
                  "documentation": "\n    State of the interconnect.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Pending</b>: The interconnect has been approved, and is being initialized.</li>\n      <li>\n<b>Available</b>: The network link is up, and the interconnect is ready for use.</li>\n      <li>\n<b>Down</b>: The network link is down.</li>\n      <li>\n<b>Deleted</b>: The interconnect has been deleted.</li>\n    </ul>\n  "
                },
                "region": {
                  "shape_name": "Region",
                  "type": "string",
                  "documentation": "\n    <p>The AWS region where the connection is located.</p>\n    <p>Example: us-east-1</p>\n    <p>Default: None</p>\n  "
                },
                "location": {
                  "shape_name": "LocationCode",
                  "type": "string",
                  "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
                },
                "bandwidth": {
                  "shape_name": "Bandwidth",
                  "type": "string",
                  "documentation": "\n    <p>Bandwidth of the connection.</p>\n    <p>Example: 1Gbps</p>\n    <p>Default: None</p>\n  "
                }
              },
              "documentation": "\n    <p>An interconnect is a connection that can host other connections.</p>\n    <p>Like a standard AWS Direct Connect connection, an interconnect represents the physical\n      connection between an AWS Direct Connect partner's network and a specific Direct Connect\n      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>\n    <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>\n  "
            },
            "documentation": "\n    <p>A list of interconnects.</p>\n  "
          }
        },
        "documentation": "\n    <p>A structure containing a list of interconnects.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Returns a list of interconnects owned by the AWS account.</p>\n    <p>If an interconnect ID is provided, it will only return this particular interconnect.</p>\n  "
    },
    "DescribeLocations": {
      "name": "DescribeLocations",
      "input": null,
      "output": {
        "shape_name": "Locations",
        "type": "structure",
        "members": {
          "locations": {
            "shape_name": "LocationList",
            "type": "list",
            "members": {
              "shape_name": "Location",
              "type": "structure",
              "members": {
                "locationCode": {
                  "shape_name": "LocationCode",
                  "type": "string",
                  "documentation": "\n    <p>The code used to indicate the AWS Direct Connect location.</p>\n  "
                },
                "locationName": {
                  "shape_name": "LocationName",
                  "type": "string",
                  "documentation": "\n    <p>The name of the AWS Direct Connect location. The name includes the colocation partner name\n      and the physical site of the lit building.</p>\n  "
                }
              },
              "documentation": "\n    <p>An AWS Direct Connect location where connections and interconnects can be requested.</p>\n  "
            },
            "documentation": null
          }
        },
        "documentation": null
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <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>\n  "
    },
    "DescribeVirtualGateways": {
      "name": "DescribeVirtualGateways",
      "input": null,
      "output": {
        "shape_name": "VirtualGateways",
        "type": "structure",
        "members": {
          "virtualGateways": {
            "shape_name": "VirtualGatewayList",
            "type": "list",
            "members": {
              "shape_name": "VirtualGateway",
              "type": "structure",
              "members": {
                "virtualGatewayId": {
                  "shape_name": "VirtualGatewayId",
                  "type": "string",
                  "documentation": "\n    <p>The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.</p>\n    <p>Example: vgw-123er56</p>\n  "
                },
                "virtualGatewayState": {
                  "shape_name": "VirtualGatewayState",
                  "type": "string",
                  "documentation": "\n    State of the virtual private gateway.\n    <ul>\n      <li>\n<b>Pending</b>: This is the initial state after calling <i>CreateVpnGateway</i>.</li>\n      <li>\n<b>Available</b>: Ready for use by a private virtual interface.</li>\n      <li>\n<b>Deleting</b>:  This is the initial state after calling <i>DeleteVpnGateway</i>.</li>\n      <li>\n<b>Deleted</b>:  In this state, a private virtual interface is unable to send traffic over this gateway.</li>\n    </ul>\n  "
                }
              },
              "documentation": "\n    <p>You can create one or more AWS Direct Connect private virtual interfaces linking to your virtual private gateway.</p>\n    <p>Virtual private gateways can be managed using the Amazon Virtual Private Cloud (Amazon VPC)\n      console or the <a href=\"http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateVpnGateway.html\">Amazon\n        EC2 CreateVpnGateway action</a>.</p>\n  "
            },
            "documentation": "\n    <p>A list of virtual private gateways.</p>\n  "
          }
        },
        "documentation": "\n    <p>A structure containing a list of virtual private gateways.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <p>Returns a list of virtual private gateways owned by the AWS account.</p>\n    <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>\n  "
    },
    "DescribeVirtualInterfaces": {
      "name": "DescribeVirtualInterfaces",
      "input": {
        "shape_name": "DescribeVirtualInterfacesRequest",
        "type": "structure",
        "members": {
          "connectionId": {
            "shape_name": "ConnectionId",
            "type": "string",
            "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
          },
          "virtualInterfaceId": {
            "shape_name": "VirtualInterfaceId",
            "type": "string",
            "documentation": "\n    <p>ID of the virtual interface.</p>\n    <p>Example: dxvif-123dfg56</p>\n    <p>Default: None</p>\n  "
          }
        },
        "documentation": "\n    <p>Container for the parameters to the DescribeVirtualInterfaces operation.</p>\n  "
      },
      "output": {
        "shape_name": "VirtualInterfaces",
        "type": "structure",
        "members": {
          "virtualInterfaces": {
            "shape_name": "VirtualInterfaceList",
            "type": "list",
            "members": {
              "shape_name": "VirtualInterface",
              "type": "structure",
              "members": {
                "ownerAccount": {
                  "shape_name": "OwnerAccount",
                  "type": "string",
                  "documentation": null
                },
                "virtualInterfaceId": {
                  "shape_name": "VirtualInterfaceId",
                  "type": "string",
                  "documentation": "\n    <p>ID of the virtual interface.</p>\n    <p>Example: dxvif-123dfg56</p>\n    <p>Default: None</p>\n  "
                },
                "location": {
                  "shape_name": "LocationCode",
                  "type": "string",
                  "documentation": "\n    <p>Where the connection is located.</p>\n    <p>Example: EqSV5</p>\n    <p>Default: None</p>\n  "
                },
                "connectionId": {
                  "shape_name": "ConnectionId",
                  "type": "string",
                  "documentation": "\n    <p>ID of the connection.</p>\n    <p>Example: dxcon-fg5678gh</p>\n    <p>Default: None</p>\n  "
                },
                "virtualInterfaceType": {
                  "shape_name": "VirtualInterfaceType",
                  "type": "string",
                  "documentation": "\n    <p>The type of virtual interface.</p>\n    <p>Example: private (Amazon VPC) or public (Amazon S3, Amazon DynamoDB, and so on.)</p>\n  "
                },
                "virtualInterfaceName": {
                  "shape_name": "VirtualInterfaceName",
                  "type": "string",
                  "documentation": "\n    <p>The name of the virtual interface assigned by the customer.</p>\n    <p>Example: \"My VPC\"</p>\n  "
                },
                "vlan": {
                  "shape_name": "VLAN",
                  "type": "integer",
                  "documentation": "\n    <p>The VLAN ID.</p>\n    <p>Example: 101</p>\n  "
                },
                "asn": {
                  "shape_name": "ASN",
                  "type": "integer",
                  "documentation": "\n    <p>Autonomous system (AS) number for Border Gateway Protocol (BGP) configuration.</p>\n    <p>Example: 65000</p>\n  "
                },
                "authKey": {
                  "shape_name": "BGPAuthKey",
                  "type": "string",
                  "documentation": "\n    <p>Authentication key for BGP configuration.</p>\n    <p>Example: asdf34example</p>\n  "
                },
                "amazonAddress": {
                  "shape_name": "AmazonAddress",
                  "type": "string",
                  "documentation": "\n    <p>IP address assigned to the Amazon interface.</p>\n    <p>Example: 192.168.1.1/30</p>\n  "
                },
                "customerAddress": {
                  "shape_name": "CustomerAddress",
                  "type": "string",
                  "documentation": "\n    <p>IP address assigned to the customer interface.</p>\n    <p>Example: 192.168.1.2/30</p>\n  "
                },
                "virtualInterfaceState": {
                  "shape_name": "VirtualInterfaceState",
                  "type": "string",
                  "enum": [
                    "confirming",
                    "verifying",
                    "pending",
                    "available",
                    "deleting",
                    "deleted",
                    "rejected"
                  ],
                  "documentation": "\n    State of the virtual interface.\n    <ul>\n      <li>\n<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.</li>\n      <li>\n<b>Verifying</b>: This state only applies to public virtual interfaces.  Each public virtual interface needs validation before the virtual interface can be created.</li>\n      <li>\n<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.</li>\n      <li>\n<b>Available</b>: A virtual interface that is able to forward traffic.</li>\n      <li>\n<b>Deleting</b>:  A virtual interface is in this state immediately after calling <i>DeleteVirtualInterface</i> until it can no longer forward traffic.</li>\n      <li>\n<b>Deleted</b>:  A virtual interface that cannot forward traffic.</li>\n      <li>\n<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.</li>\n    </ul>\n  "
                },
                "customerRouterConfig": {
                  "shape_name": "RouterConfig",
                  "type": "string",
                  "documentation": "\n    <p>Information for generating the customer router configuration.</p>\n  "
                },
                "virtualGatewayId": {
                  "shape_name": "VirtualGatewayId",
                  "type": "string",
                  "documentation": "\n    <p>The ID of the virtual private gateway to a VPC. This only applies to private virtual interfaces.</p>\n    <p>Example: vgw-123er56</p>\n  "
                },
                "routeFilterPrefixes": {
                  "shape_name": "RouteFilterPrefixList",
                  "type": "list",
                  "members": {
                    "shape_name": "RouteFilterPrefix",
                    "type": "structure",
                    "members": {
                      "cidr": {
                        "shape_name": "CIDR",
                        "type": "string",
                        "documentation": "\n    <p>CIDR notation for the advertised route. Multiple routes are separated by commas.</p>\n    <p>Example: 10.10.10.0/24,10.10.11.0/24</p>\n  "
                      }
                    },
                    "documentation": "\n    <p>A route filter prefix that the customer can advertise through Border Gateway Protocol (BGP) over a public virtual interface.</p>\n  "
                  },
                  "documentation": "\n    <p>A list of routes to be advertised to the AWS network in this region (public virtual interface) or your VPC (private virtual interface).</p>\n  "
                }
              },
              "documentation": "\n    <p>A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.</p>\n  "
            },
            "documentation": "\n    <p>A list of virtual interfaces.</p>\n  "
          }
        },
        "documentation": "\n    <p>A structure containing a list of virtual interfaces.</p>\n  "
      },
      "errors": [
        {
          "shape_name": "DirectConnectServerException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>A server-side error occurred during the API call.  The error message will contain additional details about the cause.</p>\n  "
        },
        {
          "shape_name": "DirectConnectClientException",
          "type": "structure",
          "members": {
            "message": {
              "shape_name": "ErrorMessage",
              "type": "string",
              "documentation": null
            }
          },
          "documentation": "\n    <p>The API was called with invalid parameters.  The error message will contain additional details about the cause.</p>\n  "
        }
      ],
      "documentation": "\n    <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>\n    <p>A virtual interface (VLAN) transmits the traffic between the AWS Direct Connect location and the customer.</p>\n    <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>\n  "
    }
  },
  "pagination": {
    "DescribeConnections": {
      "result_key": "connections"
    },
    "DescribeOfferings": {
      "result_key": "offerings"
    },
    "DescribeVirtualGateways": {
      "result_key": "virtualGateways"
    },
    "DescribeVirtualInterfaces": {
      "result_key": "virtualInterfaces"
    }
  }
}
