:doc:`ElastiCache <../../elasticache>` / Client / describe_cache_engine_versions

******************************
describe_cache_engine_versions
******************************



.. py:method:: ElastiCache.Client.describe_cache_engine_versions(**kwargs)

  

  Returns a list of the available cache engines and their versions.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeCacheEngineVersions>`_  


  **Request Syntax**
  ::

    response = client.describe_cache_engine_versions(
        Engine='string',
        EngineVersion='string',
        CacheParameterGroupFamily='string',
        MaxRecords=123,
        Marker='string',
        DefaultOnly=True|False
    )
    
  :type Engine: string
  :param Engine: 

    The cache engine to return. Valid values: ``memcached`` | ``redis``

    

  
  :type EngineVersion: string
  :param EngineVersion: 

    The cache engine version to return.

     

    Example: ``1.4.14``

    

  
  :type CacheParameterGroupFamily: string
  :param CacheParameterGroupFamily: 

    The name of a specific cache parameter group family to return details for.

     

    Valid values are: ``memcached1.4`` | ``memcached1.5`` | ``memcached1.6`` | ``redis2.6`` | ``redis2.8`` | ``redis3.2`` | ``redis4.0`` | ``redis5.0`` | ``redis6.x`` | ``redis6.2`` | ``redis7`` | ``valkey7``

     

    Constraints:

     

    
    * Must be 1 to 255 alphanumeric characters
     
    * First character must be a letter
     
    * Cannot end with a hyphen or contain two consecutive hyphens
    

    

  
  :type MaxRecords: integer
  :param MaxRecords: 

    The maximum number of records to include in the response. If more records exist than the specified ``MaxRecords`` value, a marker is included in the response so that the remaining results can be retrieved.

     

    Default: 100

     

    Constraints: minimum 20; maximum 100.

    

  
  :type Marker: string
  :param Marker: 

    An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ``MaxRecords``.

    

  
  :type DefaultOnly: boolean
  :param DefaultOnly: 

    If ``true``, specifies that only the default version of the specified engine or engine and major version combination is to be returned.

    

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

    
    ::

      {
          'Marker': 'string',
          'CacheEngineVersions': [
              {
                  'Engine': 'string',
                  'EngineVersion': 'string',
                  'CacheParameterGroupFamily': 'string',
                  'CacheEngineDescription': 'string',
                  'CacheEngineVersionDescription': 'string'
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Represents the output of a  DescribeCacheEngineVersions operation.

      
      

      - **Marker** *(string) --* 

        Provides an identifier to allow retrieval of paginated results.

        
      

      - **CacheEngineVersions** *(list) --* 

        A list of cache engine version details. Each element in the list contains detailed information about one cache engine version.

        
        

        - *(dict) --* 

          Provides all of the details about a particular cache engine version.

          
          

          - **Engine** *(string) --* 

            The name of the cache engine.

            
          

          - **EngineVersion** *(string) --* 

            The version number of the cache engine.

            
          

          - **CacheParameterGroupFamily** *(string) --* 

            The name of the cache parameter group family associated with this cache engine.

             

            Valid values are: ``memcached1.4`` | ``memcached1.5`` | ``memcached1.6`` | ``redis2.6`` | ``redis2.8`` | ``redis3.2`` | ``redis4.0`` | ``redis5.0`` | ``redis6.x`` | ``redis7``

            
          

          - **CacheEngineDescription** *(string) --* 

            The description of the cache engine.

            
          

          - **CacheEngineVersionDescription** *(string) --* 

            The description of the cache engine version.

            
      
    
  

  **Examples**

  Lists the details for up to 50 Redis cache engine versions.
  ::

    response = client.describe_cache_engine_versions(
        DefaultOnly=False,
        Engine='redis',
        MaxRecords=50,
    )
    
    print(response)

  
  Expected Output:
  ::

    {
        'CacheEngineVersions': [
            {
                'CacheEngineDescription': 'Redis',
                'CacheEngineVersionDescription': 'redis version 2.6.13',
                'CacheParameterGroupFamily': 'redis2.6',
                'Engine': 'redis',
                'EngineVersion': '2.6.13',
            },
            {
                'CacheEngineDescription': 'Redis',
                'CacheEngineVersionDescription': 'redis version 2.8.19',
                'CacheParameterGroupFamily': 'redis2.8',
                'Engine': 'redis',
                'EngineVersion': '2.8.19',
            },
            {
                'CacheEngineDescription': 'Redis',
                'CacheEngineVersionDescription': 'redis version 2.8.21',
                'CacheParameterGroupFamily': 'redis2.8',
                'Engine': 'redis',
                'EngineVersion': '2.8.21',
            },
            {
                'CacheEngineDescription': 'Redis',
                'CacheEngineVersionDescription': 'redis version 2.8.22 R5',
                'CacheParameterGroupFamily': 'redis2.8',
                'Engine': 'redis',
                'EngineVersion': '2.8.22',
            },
            {
                'CacheEngineDescription': 'Redis',
                'CacheEngineVersionDescription': 'redis version 2.8.23 R4',
                'CacheParameterGroupFamily': 'redis2.8',
                'Engine': 'redis',
                'EngineVersion': '2.8.23',
            },
            {
                'CacheEngineDescription': 'Redis',
                'CacheEngineVersionDescription': 'redis version 2.8.24 R3',
                'CacheParameterGroupFamily': 'redis2.8',
                'Engine': 'redis',
                'EngineVersion': '2.8.24',
            },
            {
                'CacheEngineDescription': 'Redis',
                'CacheEngineVersionDescription': 'redis version 2.8.6',
                'CacheParameterGroupFamily': 'redis2.8',
                'Engine': 'redis',
                'EngineVersion': '2.8.6',
            },
            {
                'CacheEngineDescription': 'Redis',
                'CacheEngineVersionDescription': 'redis version 3.2.4',
                'CacheParameterGroupFamily': 'redis3.2',
                'Engine': 'redis',
                'EngineVersion': '3.2.4',
            },
        ],
        'Marker': '',
        'ResponseMetadata': {
            '...': '...',
        },
    }

  