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

***************************************
describe_reserved_cache_nodes_offerings
***************************************



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

  

  Lists available reserved cache node offerings.

  

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


  **Request Syntax**
  ::

    response = client.describe_reserved_cache_nodes_offerings(
        ReservedCacheNodesOfferingId='string',
        CacheNodeType='string',
        Duration='string',
        ProductDescription='string',
        OfferingType='string',
        MaxRecords=123,
        Marker='string'
    )
    
  :type ReservedCacheNodesOfferingId: string
  :param ReservedCacheNodesOfferingId: 

    The offering identifier filter value. Use this parameter to show only the available offering that matches the specified reservation identifier.

     

    Example: ``438012d3-4052-4cc7-b2e3-8d3372e0e706``

    

  
  :type CacheNodeType: string
  :param CacheNodeType: 

    The cache node type filter value. Use this parameter to show only the available offerings matching the specified cache node type.

     

    The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

     

    
    * General purpose: 

      
      * Current generation: **M7g node types**: ``cache.m7g.large``, ``cache.m7g.xlarge``, ``cache.m7g.2xlarge``, ``cache.m7g.4xlarge``, ``cache.m7g.8xlarge``, ``cache.m7g.12xlarge``, ``cache.m7g.16xlarge`` 

      .. note::

        For region availability, see `Supported Node Types <https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion>`__

       **M6g node types** (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): ``cache.m6g.large``, ``cache.m6g.xlarge``, ``cache.m6g.2xlarge``, ``cache.m6g.4xlarge``, ``cache.m6g.8xlarge``, ``cache.m6g.12xlarge``, ``cache.m6g.16xlarge`` **M5 node types:** ``cache.m5.large``, ``cache.m5.xlarge``, ``cache.m5.2xlarge``, ``cache.m5.4xlarge``, ``cache.m5.12xlarge``, ``cache.m5.24xlarge`` **M4 node types:** ``cache.m4.large``, ``cache.m4.xlarge``, ``cache.m4.2xlarge``, ``cache.m4.4xlarge``, ``cache.m4.10xlarge`` **T4g node types** (available only for Redis OSS engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): ``cache.t4g.micro``, ``cache.t4g.small``, ``cache.t4g.medium`` **T3 node types:** ``cache.t3.micro``, ``cache.t3.small``, ``cache.t3.medium`` **T2 node types:** ``cache.t2.micro``, ``cache.t2.small``, ``cache.t2.medium``
       
      * Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.) **T1 node types:** ``cache.t1.micro`` **M1 node types:** ``cache.m1.small``, ``cache.m1.medium``, ``cache.m1.large``, ``cache.m1.xlarge`` **M3 node types:** ``cache.m3.medium``, ``cache.m3.large``, ``cache.m3.xlarge``, ``cache.m3.2xlarge``
      

    
     
    * Compute optimized: 

      
      * Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.) **C1 node types:** ``cache.c1.xlarge``
      

    
     
    * Memory optimized: 

      
      * Current generation: **R7g node types**: ``cache.r7g.large``, ``cache.r7g.xlarge``, ``cache.r7g.2xlarge``, ``cache.r7g.4xlarge``, ``cache.r7g.8xlarge``, ``cache.r7g.12xlarge``, ``cache.r7g.16xlarge`` 

      .. note::

        For region availability, see `Supported Node Types <https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion>`__

       **R6g node types** (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): ``cache.r6g.large``, ``cache.r6g.xlarge``, ``cache.r6g.2xlarge``, ``cache.r6g.4xlarge``, ``cache.r6g.8xlarge``, ``cache.r6g.12xlarge``, ``cache.r6g.16xlarge`` **R5 node types:** ``cache.r5.large``, ``cache.r5.xlarge``, ``cache.r5.2xlarge``, ``cache.r5.4xlarge``, ``cache.r5.12xlarge``, ``cache.r5.24xlarge`` **R4 node types:** ``cache.r4.large``, ``cache.r4.xlarge``, ``cache.r4.2xlarge``, ``cache.r4.4xlarge``, ``cache.r4.8xlarge``, ``cache.r4.16xlarge``
       
      * Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.) **M2 node types:** ``cache.m2.xlarge``, ``cache.m2.2xlarge``, ``cache.m2.4xlarge`` **R3 node types:** ``cache.r3.large``, ``cache.r3.xlarge``, ``cache.r3.2xlarge``, ``cache.r3.4xlarge``, ``cache.r3.8xlarge``
      

    
    

     

    **Additional node type info**

     

    
    * All current generation instance types are created in Amazon VPC by default.
     
    * Valkey or Redis OSS append-only files (AOF) are not supported for T1 or T2 instances.
     
    * Valkey or Redis OSS Multi-AZ with automatic failover is not supported on T1 instances.
     
    * The configuration variables ``appendonly`` and ``appendfsync`` are not supported on Valkey, or on Redis OSS version 2.8.22 and later.
    

    

  
  :type Duration: string
  :param Duration: 

    Duration filter value, specified in years or seconds. Use this parameter to show only reservations for a given duration.

     

    Valid Values: ``1 | 3 | 31536000 | 94608000``

    

  
  :type ProductDescription: string
  :param ProductDescription: 

    The product description filter value. Use this parameter to show only the available offerings matching the specified product description.

    

  
  :type OfferingType: string
  :param OfferingType: 

    The offering type filter value. Use this parameter to show only the available offerings matching the specified offering type.

     

    Valid Values: ``"Light Utilization"|"Medium Utilization"|"Heavy Utilization" |"All Upfront"|"Partial Upfront"| "No Upfront"``

    

  
  :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``.

    

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

    
    ::

      {
          'Marker': 'string',
          'ReservedCacheNodesOfferings': [
              {
                  'ReservedCacheNodesOfferingId': 'string',
                  'CacheNodeType': 'string',
                  'Duration': 123,
                  'FixedPrice': 123.0,
                  'UsagePrice': 123.0,
                  'ProductDescription': 'string',
                  'OfferingType': 'string',
                  'RecurringCharges': [
                      {
                          'RecurringChargeAmount': 123.0,
                          'RecurringChargeFrequency': 'string'
                      },
                  ]
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Represents the output of a ``DescribeReservedCacheNodesOfferings`` operation.

      
      

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

        Provides an identifier to allow retrieval of paginated results.

        
      

      - **ReservedCacheNodesOfferings** *(list) --* 

        A list of reserved cache node offerings. Each element in the list contains detailed information about one offering.

        
        

        - *(dict) --* 

          Describes all of the attributes of a reserved cache node offering.

          
          

          - **ReservedCacheNodesOfferingId** *(string) --* 

            A unique identifier for the reserved cache node offering.

            
          

          - **CacheNodeType** *(string) --* 

            The cache node type for the reserved cache node.

             

            The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

             

            
            * General purpose: 

              
              * Current generation: **M7g node types**: ``cache.m7g.large``, ``cache.m7g.xlarge``, ``cache.m7g.2xlarge``, ``cache.m7g.4xlarge``, ``cache.m7g.8xlarge``, ``cache.m7g.12xlarge``, ``cache.m7g.16xlarge`` 

              .. note::

                For region availability, see `Supported Node Types <https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion>`__

               **M6g node types** (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): ``cache.m6g.large``, ``cache.m6g.xlarge``, ``cache.m6g.2xlarge``, ``cache.m6g.4xlarge``, ``cache.m6g.8xlarge``, ``cache.m6g.12xlarge``, ``cache.m6g.16xlarge`` **M5 node types:** ``cache.m5.large``, ``cache.m5.xlarge``, ``cache.m5.2xlarge``, ``cache.m5.4xlarge``, ``cache.m5.12xlarge``, ``cache.m5.24xlarge`` **M4 node types:** ``cache.m4.large``, ``cache.m4.xlarge``, ``cache.m4.2xlarge``, ``cache.m4.4xlarge``, ``cache.m4.10xlarge`` **T4g node types** (available only for Redis OSS engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): ``cache.t4g.micro``, ``cache.t4g.small``, ``cache.t4g.medium`` **T3 node types:** ``cache.t3.micro``, ``cache.t3.small``, ``cache.t3.medium`` **T2 node types:** ``cache.t2.micro``, ``cache.t2.small``, ``cache.t2.medium``
               
              * Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.) **T1 node types:** ``cache.t1.micro`` **M1 node types:** ``cache.m1.small``, ``cache.m1.medium``, ``cache.m1.large``, ``cache.m1.xlarge`` **M3 node types:** ``cache.m3.medium``, ``cache.m3.large``, ``cache.m3.xlarge``, ``cache.m3.2xlarge``
              

            
             
            * Compute optimized: 

              
              * Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.) **C1 node types:** ``cache.c1.xlarge``
              

            
             
            * Memory optimized: 

              
              * Current generation: **R7g node types**: ``cache.r7g.large``, ``cache.r7g.xlarge``, ``cache.r7g.2xlarge``, ``cache.r7g.4xlarge``, ``cache.r7g.8xlarge``, ``cache.r7g.12xlarge``, ``cache.r7g.16xlarge`` 

              .. note::

                For region availability, see `Supported Node Types <https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion>`__

               **R6g node types** (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): ``cache.r6g.large``, ``cache.r6g.xlarge``, ``cache.r6g.2xlarge``, ``cache.r6g.4xlarge``, ``cache.r6g.8xlarge``, ``cache.r6g.12xlarge``, ``cache.r6g.16xlarge`` **R5 node types:** ``cache.r5.large``, ``cache.r5.xlarge``, ``cache.r5.2xlarge``, ``cache.r5.4xlarge``, ``cache.r5.12xlarge``, ``cache.r5.24xlarge`` **R4 node types:** ``cache.r4.large``, ``cache.r4.xlarge``, ``cache.r4.2xlarge``, ``cache.r4.4xlarge``, ``cache.r4.8xlarge``, ``cache.r4.16xlarge``
               
              * Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.) **M2 node types:** ``cache.m2.xlarge``, ``cache.m2.2xlarge``, ``cache.m2.4xlarge`` **R3 node types:** ``cache.r3.large``, ``cache.r3.xlarge``, ``cache.r3.2xlarge``, ``cache.r3.4xlarge``, ``cache.r3.8xlarge``
              

            
            

             

            **Additional node type info**

             

            
            * All current generation instance types are created in Amazon VPC by default.
             
            * Valkey or Redis OSS append-only files (AOF) are not supported for T1 or T2 instances.
             
            * Valkey or Redis OSS Multi-AZ with automatic failover is not supported on T1 instances.
             
            * The configuration variables ``appendonly`` and ``appendfsync`` are not supported on Valkey, or on Redis OSS version 2.8.22 and later.
            

            
          

          - **Duration** *(integer) --* 

            The duration of the offering. in seconds.

            
          

          - **FixedPrice** *(float) --* 

            The fixed price charged for this offering.

            
          

          - **UsagePrice** *(float) --* 

            The hourly price charged for this offering.

            
          

          - **ProductDescription** *(string) --* 

            The cache engine used by the offering.

            
          

          - **OfferingType** *(string) --* 

            The offering type.

            
          

          - **RecurringCharges** *(list) --* 

            The recurring price charged to run this reserved cache node.

            
            

            - *(dict) --* 

              Contains the specific price and frequency of a recurring charges for a reserved cache node, or for a reserved cache node offering.

              
              

              - **RecurringChargeAmount** *(float) --* 

                The monetary amount of the recurring charge.

                
              

              - **RecurringChargeFrequency** *(string) --* 

                The frequency of the recurring charge.

                
          
        
      
    
  
  **Exceptions**
  
  *   :py:class:`ElastiCache.Client.exceptions.ReservedCacheNodesOfferingNotFoundFault`

  
  *   :py:class:`ElastiCache.Client.exceptions.InvalidParameterValueException`

  
  *   :py:class:`ElastiCache.Client.exceptions.InvalidParameterCombinationException`

  

  **Examples**

  Lists available reserved cache node offerings.
  ::

    response = client.describe_reserved_cache_nodes_offerings(
        CacheNodeType='',
        Duration='',
        Marker='',
        MaxRecords=25,
        OfferingType='',
        ProductDescription='',
        ReservedCacheNodesOfferingId='438012d3-4052-4cc7-b2e3-8d3372e0e706',
    )
    
    print(response)

  
  Expected Output:
  ::

    {
        'Marker': '',
        'ReservedCacheNodesOfferings': [
        ],
        'ResponseMetadata': {
            '...': '...',
        },
    }

  