:doc:`EC2 <../../ec2>` / Paginator / DescribeTransitGateways

***********************
DescribeTransitGateways
***********************



.. py:class:: EC2.Paginator.DescribeTransitGateways

  ::

    
    paginator = client.get_paginator('describe_transit_gateways')

  
  

  .. py:method:: paginate(**kwargs)

    Creates an iterator that will paginate through responses from :py:meth:`EC2.Client.describe_transit_gateways`.

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


    **Request Syntax**
    ::

      response_iterator = paginator.paginate(
          TransitGatewayIds=[
              'string',
          ],
          Filters=[
              {
                  'Name': 'string',
                  'Values': [
                      'string',
                  ]
              },
          ],
          DryRun=True|False,
          PaginationConfig={
              'MaxItems': 123,
              'PageSize': 123,
              'StartingToken': 'string'
          }
      )
      
    :type TransitGatewayIds: list
    :param TransitGatewayIds: 

      The IDs of the transit gateways.

      

    
      - *(string) --* 

      
  
    :type Filters: list
    :param Filters: 

      One or more filters. The possible values are:

       

      
      * ``options.propagation-default-route-table-id`` - The ID of the default propagation route table.
       
      * ``options.amazon-side-asn`` - The private ASN for the Amazon side of a BGP session.
       
      * ``options.association-default-route-table-id`` - The ID of the default association route table.
       
      * ``options.auto-accept-shared-attachments`` - Indicates whether there is automatic acceptance of attachment requests ( ``enable`` | ``disable``).
       
      * ``options.default-route-table-association`` - Indicates whether resource attachments are automatically associated with the default association route table ( ``enable`` | ``disable``).
       
      * ``options.default-route-table-propagation`` - Indicates whether resource attachments automatically propagate routes to the default propagation route table ( ``enable`` | ``disable``).
       
      * ``options.dns-support`` - Indicates whether DNS support is enabled ( ``enable`` | ``disable``).
       
      * ``options.vpn-ecmp-support`` - Indicates whether Equal Cost Multipath Protocol support is enabled ( ``enable`` | ``disable``).
       
      * ``owner-id`` - The ID of the Amazon Web Services account that owns the transit gateway.
       
      * ``state`` - The state of the transit gateway ( ``available`` | ``deleted`` | ``deleting`` | ``modifying`` | ``pending``).
       
      * ``transit-gateway-id`` - The ID of the transit gateway.
       
      * ``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.
      

      

    
      - *(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 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``.

      

    
    :type PaginationConfig: dict
    :param PaginationConfig: 

      A dictionary that provides parameters to control pagination.

      

    
      - **MaxItems** *(integer) --* 

        The total number of items to return. If the total number of items available is more than the value specified in max-items then a ``NextToken`` will be provided in the output that you can use to resume pagination.

        

      
      - **PageSize** *(integer) --* 

        The size of each page.

        

      
      - **StartingToken** *(string) --* 

        A token to specify where to start paginating. This is the ``NextToken`` from a previous response.

        

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

      
      ::

        {
            'TransitGateways': [
                {
                    'TransitGatewayId': 'string',
                    'TransitGatewayArn': 'string',
                    'State': 'pending'|'available'|'modifying'|'deleting'|'deleted',
                    'OwnerId': 'string',
                    'Description': 'string',
                    'CreationTime': datetime(2015, 1, 1),
                    'Options': {
                        'AmazonSideAsn': 123,
                        'TransitGatewayCidrBlocks': [
                            'string',
                        ],
                        'AutoAcceptSharedAttachments': 'enable'|'disable',
                        'DefaultRouteTableAssociation': 'enable'|'disable',
                        'AssociationDefaultRouteTableId': 'string',
                        'DefaultRouteTablePropagation': 'enable'|'disable',
                        'PropagationDefaultRouteTableId': 'string',
                        'VpnEcmpSupport': 'enable'|'disable',
                        'DnsSupport': 'enable'|'disable',
                        'SecurityGroupReferencingSupport': 'enable'|'disable',
                        'MulticastSupport': 'enable'|'disable',
                        'EncryptionSupport': {
                            'EncryptionState': 'enabling'|'enabled'|'disabling'|'disabled',
                            'StateMessage': 'string'
                        }
                    },
                    'Tags': [
                        {
                            'Key': 'string',
                            'Value': 'string'
                        },
                    ]
                },
            ],
            
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **TransitGateways** *(list) --* 

          Information about the transit gateways.

          
          

          - *(dict) --* 

            Describes a transit gateway.

            
            

            - **TransitGatewayId** *(string) --* 

              The ID of the transit gateway.

              
            

            - **TransitGatewayArn** *(string) --* 

              The Amazon Resource Name (ARN) of the transit gateway.

              
            

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

              The state of the transit gateway.

              
            

            - **OwnerId** *(string) --* 

              The ID of the Amazon Web Services account that owns the transit gateway.

              
            

            - **Description** *(string) --* 

              The description of the transit gateway.

              
            

            - **CreationTime** *(datetime) --* 

              The creation time.

              
            

            - **Options** *(dict) --* 

              The transit gateway options.

              
              

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

                A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs.

                
              

              - **TransitGatewayCidrBlocks** *(list) --* 

                The transit gateway CIDR blocks.

                
                

                - *(string) --* 
            
              

              - **AutoAcceptSharedAttachments** *(string) --* 

                Indicates whether attachment requests are automatically accepted.

                
              

              - **DefaultRouteTableAssociation** *(string) --* 

                Indicates whether resource attachments are automatically associated with the default association route table. Enabled by default. Either ``defaultRouteTableAssociation`` or ``defaultRouteTablePropagation`` must be set to ``enable`` for Amazon Web Services Transit Gateway to create the default transit gateway route table.

                
              

              - **AssociationDefaultRouteTableId** *(string) --* 

                The ID of the default association route table.

                
              

              - **DefaultRouteTablePropagation** *(string) --* 

                Indicates whether resource attachments automatically propagate routes to the default propagation route table. Enabled by default. If ``defaultRouteTablePropagation`` is set to ``enable``, Amazon Web Services Transit Gateway creates the default transit gateway route table.

                
              

              - **PropagationDefaultRouteTableId** *(string) --* 

                The ID of the default propagation route table.

                
              

              - **VpnEcmpSupport** *(string) --* 

                Indicates whether Equal Cost Multipath Protocol support is enabled.

                
              

              - **DnsSupport** *(string) --* 

                Indicates whether DNS support is enabled.

                
              

              - **SecurityGroupReferencingSupport** *(string) --* 

                Enables you to reference a security group across VPCs attached to a transit gateway to simplify security group management.

                 

                This option is disabled by default.

                
              

              - **MulticastSupport** *(string) --* 

                Indicates whether multicast is enabled on the transit gateway

                
              

              - **EncryptionSupport** *(dict) --* 

                Defines if the Transit Gateway supports VPC Encryption Control.

                
                

                - **EncryptionState** *(string) --* 

                  The current encryption state of the resource.

                  
                

                - **StateMessage** *(string) --* 

                  A message describing the encryption state.

                  
            
          
            

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

              The tags for the transit 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.

                  
            
          
        
      
    