:doc:`ECS <../../ecs>` / Client / list_task_definition_families

*****************************
list_task_definition_families
*****************************



.. py:method:: ECS.Client.list_task_definition_families(**kwargs)

  

  Returns a list of task definition families that are registered to your account. This list includes task definition families that no longer have any ``ACTIVE`` task definition revisions.

   

  You can filter out task definition families that don't contain any ``ACTIVE`` task definition revisions by setting the ``status`` parameter to ``ACTIVE``. You can also filter the results with the ``familyPrefix`` parameter.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ListTaskDefinitionFamilies>`_  


  **Request Syntax**
  ::

    response = client.list_task_definition_families(
        familyPrefix='string',
        status='ACTIVE'|'INACTIVE'|'ALL',
        nextToken='string',
        maxResults=123
    )
    
  :type familyPrefix: string
  :param familyPrefix: 

    The ``familyPrefix`` is a string that's used to filter the results of ``ListTaskDefinitionFamilies``. If you specify a ``familyPrefix``, only task definition family names that begin with the ``familyPrefix`` string are returned.

    

  
  :type status: string
  :param status: 

    The task definition family status to filter the ``ListTaskDefinitionFamilies`` results with. By default, both ``ACTIVE`` and ``INACTIVE`` task definition families are listed. If this parameter is set to ``ACTIVE``, only task definition families that have an ``ACTIVE`` task definition revision are returned. If this parameter is set to ``INACTIVE``, only task definition families that do not have any ``ACTIVE`` task definition revisions are returned. If you paginate the resulting output, be sure to keep the ``status`` value constant in each subsequent request.

    

  
  :type nextToken: string
  :param nextToken: 

    The ``nextToken`` value returned from a ``ListTaskDefinitionFamilies`` request indicating that more results are available to fulfill the request and further calls will be needed. If ``maxResults`` was provided, it is possible the number of results to be fewer than ``maxResults``.

     

    .. note::

      

      This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

      

    

  
  :type maxResults: integer
  :param maxResults: 

    The maximum number of task definition family results that ``ListTaskDefinitionFamilies`` returned in paginated output. When this parameter is used, ``ListTaskDefinitions`` only returns ``maxResults`` results in a single page along with a ``nextToken`` response element. The remaining results of the initial request can be seen by sending another ``ListTaskDefinitionFamilies`` request with the returned ``nextToken`` value. This value can be between 1 and 100. If this parameter isn't used, then ``ListTaskDefinitionFamilies`` returns up to 100 results and a ``nextToken`` value if applicable.

    

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

    
    ::

      {
          'families': [
              'string',
          ],
          'nextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **families** *(list) --* 

        The list of task definition family names that match the ``ListTaskDefinitionFamilies`` request.

        
        

        - *(string) --* 
    
      

      - **nextToken** *(string) --* 

        The ``nextToken`` value to include in a future ``ListTaskDefinitionFamilies`` request. When the results of a ``ListTaskDefinitionFamilies`` request exceed ``maxResults``, this value can be used to retrieve the next page of results. This value is ``null`` when there are no more results to return.

        
  
  **Exceptions**
  
  *   :py:class:`ECS.Client.exceptions.ServerException`

  
  *   :py:class:`ECS.Client.exceptions.ClientException`

  
  *   :py:class:`ECS.Client.exceptions.InvalidParameterException`

  

  **Examples**

  This example lists all of your registered task definition families.
  ::

    response = client.list_task_definition_families(
    )
    
    print(response)

  
  Expected Output:
  ::

    {
        'families': [
            'node-js-app',
            'web-timer',
            'hpcc',
            'hpcc-c4-8xlarge',
        ],
        'ResponseMetadata': {
            '...': '...',
        },
    }

  

  This example lists the task definition revisions that start with "hpcc".
  ::

    response = client.list_task_definition_families(
        familyPrefix='hpcc',
    )
    
    print(response)

  
  Expected Output:
  ::

    {
        'families': [
            'hpcc',
            'hpcc-c4-8xlarge',
        ],
        'ResponseMetadata': {
            '...': '...',
        },
    }

  