:doc:`ElasticLoadBalancingv2 <../../elbv2>` / Paginator / DescribeTargetGroups

********************
DescribeTargetGroups
********************



.. py:class:: ElasticLoadBalancingv2.Paginator.DescribeTargetGroups

  ::

    
    paginator = client.get_paginator('describe_target_groups')

  
  

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

    Creates an iterator that will paginate through responses from :py:meth:`ElasticLoadBalancingv2.Client.describe_target_groups`.

    See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroups>`_    


    **Request Syntax**
    ::

      response_iterator = paginator.paginate(
          LoadBalancerArn='string',
          TargetGroupArns=[
              'string',
          ],
          Names=[
              'string',
          ],
          PaginationConfig={
              'MaxItems': 123,
              'PageSize': 123,
              'StartingToken': 'string'
          }
      )
      
    :type LoadBalancerArn: string
    :param LoadBalancerArn: 

      The Amazon Resource Name (ARN) of the load balancer.

      

    
    :type TargetGroupArns: list
    :param TargetGroupArns: 

      The Amazon Resource Names (ARN) of the target groups.

      

    
      - *(string) --* 

      
  
    :type Names: list
    :param Names: 

      The names of the target groups.

      

    
      - *(string) --* 

      
  
    :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**

      
      ::

        {
            'TargetGroups': [
                {
                    'TargetGroupArn': 'string',
                    'TargetGroupName': 'string',
                    'Protocol': 'HTTP'|'HTTPS'|'TCP'|'TLS'|'UDP'|'TCP_UDP'|'GENEVE'|'QUIC'|'TCP_QUIC',
                    'Port': 123,
                    'VpcId': 'string',
                    'HealthCheckProtocol': 'HTTP'|'HTTPS'|'TCP'|'TLS'|'UDP'|'TCP_UDP'|'GENEVE'|'QUIC'|'TCP_QUIC',
                    'HealthCheckPort': 'string',
                    'HealthCheckEnabled': True|False,
                    'HealthCheckIntervalSeconds': 123,
                    'HealthCheckTimeoutSeconds': 123,
                    'HealthyThresholdCount': 123,
                    'UnhealthyThresholdCount': 123,
                    'HealthCheckPath': 'string',
                    'Matcher': {
                        'HttpCode': 'string',
                        'GrpcCode': 'string'
                    },
                    'LoadBalancerArns': [
                        'string',
                    ],
                    'TargetType': 'instance'|'ip'|'lambda'|'alb',
                    'ProtocolVersion': 'string',
                    'IpAddressType': 'ipv4'|'ipv6',
                    'TargetControlPort': 123
                },
            ],
            'NextToken': 'string'
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **TargetGroups** *(list) --* 

          Information about the target groups.

          
          

          - *(dict) --* 

            Information about a target group.

            
            

            - **TargetGroupArn** *(string) --* 

              The Amazon Resource Name (ARN) of the target group.

              
            

            - **TargetGroupName** *(string) --* 

              The name of the target group.

              
            

            - **Protocol** *(string) --* 

              The protocol to use for routing traffic to the targets.

              
            

            - **Port** *(integer) --* 

              The port on which the targets are listening. This parameter is not used if the target is a Lambda function.

              
            

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

              The ID of the VPC for the targets.

              
            

            - **HealthCheckProtocol** *(string) --* 

              The protocol to use to connect with the target. The GENEVE, TLS, UDP, and TCP_UDP protocols are not supported for health checks.

              
            

            - **HealthCheckPort** *(string) --* 

              The port to use to connect with the target.

              
            

            - **HealthCheckEnabled** *(boolean) --* 

              Indicates whether health checks are enabled.

              
            

            - **HealthCheckIntervalSeconds** *(integer) --* 

              The approximate amount of time, in seconds, between health checks of an individual target.

              
            

            - **HealthCheckTimeoutSeconds** *(integer) --* 

              The amount of time, in seconds, during which no response means a failed health check.

              
            

            - **HealthyThresholdCount** *(integer) --* 

              The number of consecutive health checks successes required before considering an unhealthy target healthy.

              
            

            - **UnhealthyThresholdCount** *(integer) --* 

              The number of consecutive health check failures required before considering the target unhealthy.

              
            

            - **HealthCheckPath** *(string) --* 

              The destination for health checks on the targets.

              
            

            - **Matcher** *(dict) --* 

              The HTTP or gRPC codes to use when checking for a successful response from a target.

              
              

              - **HttpCode** *(string) --* 

                For Application Load Balancers, you can specify values between 200 and 499, with the default value being 200. You can specify multiple values (for example, "200,202") or a range of values (for example, "200-299").

                 

                For Network Load Balancers, you can specify values between 200 and 599, with the default value being 200-399. You can specify multiple values (for example, "200,202") or a range of values (for example, "200-299").

                 

                For Gateway Load Balancers, this must be "200–399".

                 

                Note that when using shorthand syntax, some values such as commas need to be escaped.

                
              

              - **GrpcCode** *(string) --* 

                You can specify values between 0 and 99. You can specify multiple values (for example, "0,1") or a range of values (for example, "0-5"). The default value is 12.

                
          
            

            - **LoadBalancerArns** *(list) --* 

              The Amazon Resource Name (ARN) of the load balancer that routes traffic to this target group. You can use each target group with only one load balancer.

              
              

              - *(string) --* 
          
            

            - **TargetType** *(string) --* 

              The type of target that you must specify when registering targets with this target group. The possible values are ``instance`` (register targets by instance ID), ``ip`` (register targets by IP address), ``lambda`` (register a single Lambda function as a target), or ``alb`` (register a single Application Load Balancer as a target).

              
            

            - **ProtocolVersion** *(string) --* 

              [HTTP/HTTPS protocol] The protocol version. The possible values are ``GRPC``, ``HTTP1``, and ``HTTP2``.

              
            

            - **IpAddressType** *(string) --* 

              The IP address type. The default value is ``ipv4``.

              
            

            - **TargetControlPort** *(integer) --* 

              The port on which the target control agent and application load balancer exchange management traffic for the target optimizer feature.

              
        
      
        

        - **NextToken** *(string) --* 

          A token to resume pagination.

          
    