:doc:`EC2 <../../ec2>` / Client / describe_vpn_gateways

*********************
describe_vpn_gateways
*********************



.. py:method:: EC2.Client.describe_vpn_gateways(**kwargs)

  

  Describes one or more of your virtual private gateways.

   

  For more information, see `Amazon Web Services Site-to-Site VPN <https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html>`__ in the *Amazon Web Services Site-to-Site VPN User Guide*.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpnGateways>`_  


  **Request Syntax**
  ::

    response = client.describe_vpn_gateways(
        Filters=[
            {
                'Name': 'string',
                'Values': [
                    'string',
                ]
            },
        ],
        VpnGatewayIds=[
            'string',
        ],
        DryRun=True|False
    )
    
  :type Filters: list
  :param Filters: 

    One or more filters.

     

    
    * ``amazon-side-asn`` - The Autonomous System Number (ASN) for the Amazon side of the gateway.
     
    * ``attachment.state`` - The current state of the attachment between the gateway and the VPC ( ``attaching`` | ``attached`` | ``detaching`` | ``detached``).
     
    * ``attachment.vpc-id`` - The ID of an attached VPC.
     
    * ``availability-zone`` - The Availability Zone for the virtual private gateway (if applicable).
     
    * ``state`` - The state of the virtual private gateway ( ``pending`` | ``available`` | ``deleting`` | ``deleted``).
     
    * ``tag``:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key ``Owner`` and the value ``TeamA``, specify ``tag:Owner`` for the filter name and ``TeamA`` for the filter value.
     
    * ``tag-key`` - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
     
    * ``type`` - The type of virtual private gateway. Currently the only supported type is ``ipsec.1``.
     
    * ``vpn-gateway-id`` - The ID of the virtual private gateway.
    

    

  
    - *(dict) --* 

      A filter name and value pair that is used to return a more specific list of results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

       

      If you specify multiple filters, the filters are joined with an ``AND``, and the request returns only results that match all of the specified filters.

       

      For more information, see `List and filter using the CLI and API <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Filtering.html#Filtering_Resources_CLI>`__ in the *Amazon EC2 User Guide*.

      

    
      - **Name** *(string) --* 

        The name of the filter. Filter names are case-sensitive.

        

      
      - **Values** *(list) --* 

        The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an ``OR``, and the request returns all results that match any of the specified values.

        

      
        - *(string) --* 

        
    
    

  :type VpnGatewayIds: list
  :param VpnGatewayIds: 

    One or more virtual private gateway IDs.

     

    Default: Describes all your virtual private gateways.

    

  
    - *(string) --* 

    

  :type DryRun: boolean
  :param DryRun: 

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is ``DryRunOperation``. Otherwise, it is ``UnauthorizedOperation``.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'VpnGateways': [
              {
                  'AmazonSideAsn': 123,
                  'Tags': [
                      {
                          'Key': 'string',
                          'Value': 'string'
                      },
                  ],
                  'VpnGatewayId': 'string',
                  'State': 'pending'|'available'|'deleting'|'deleted',
                  'Type': 'ipsec.1',
                  'AvailabilityZone': 'string',
                  'VpcAttachments': [
                      {
                          'VpcId': 'string',
                          'State': 'attaching'|'attached'|'detaching'|'detached'
                      },
                  ]
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Contains the output of DescribeVpnGateways.

      
      

      - **VpnGateways** *(list) --* 

        Information about one or more virtual private gateways.

        
        

        - *(dict) --* 

          Describes a virtual private gateway.

          
          

          - **AmazonSideAsn** *(integer) --* 

            The private Autonomous System Number (ASN) for the Amazon side of a BGP session.

            
          

          - **Tags** *(list) --* 

            Any tags assigned to the virtual private gateway.

            
            

            - *(dict) --* 

              Describes a tag.

              
              

              - **Key** *(string) --* 

                The key of the tag.

                 

                Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with ``aws:``.

                
              

              - **Value** *(string) --* 

                The value of the tag.

                 

                Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.

                
          
        
          

          - **VpnGatewayId** *(string) --* 

            The ID of the virtual private gateway.

            
          

          - **State** *(string) --* 

            The current state of the virtual private gateway.

            
          

          - **Type** *(string) --* 

            The type of VPN connection the virtual private gateway supports.

            
          

          - **AvailabilityZone** *(string) --* 

            The Availability Zone where the virtual private gateway was created, if applicable. This field may be empty or not returned.

            
          

          - **VpcAttachments** *(list) --* 

            Any VPCs attached to the virtual private gateway.

            
            

            - *(dict) --* 

              Describes an attachment between a virtual private gateway and a VPC.

              
              

              - **VpcId** *(string) --* 

                The ID of the VPC.

                
              

              - **State** *(string) --* 

                The current state of the attachment.

                
          
        
      
    
  