Skip to content

describe_reserved_cache_nodes_offerings

describe_reserved_cache_nodes_offerings(
    *,
    config_overrides: Optional[ElastiCacheClientConfig] = None,
    reserved_cache_nodes_offering_id: Optional[String] = None,
    cache_node_type: Optional[String] = None,
    duration: Optional[String] = None,
    product_description: Optional[String] = None,
    offering_type: Optional[String] = None,
    max_records: Optional[IntegerOptional] = None,
    marker: Optional[String] = None,
) -> ReservedCacheNodesOfferingMessage

Lists available reserved cache node offerings.

Parameters:

  • reserved_cache_nodes_offering_id (Optional[String], default: None ) –

    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

  • cache_node_type (Optional[String], default: None ) –

    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

        For region availability, see Supported Node Types

        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

        For region availability, see Supported Node Types

        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 (Optional[String], default: None ) –

    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

  • product_description (Optional[String], default: None ) –

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

  • offering_type (Optional[String], default: None ) –

    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"

  • max_records (Optional[IntegerOptional], default: None ) –

    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.

  • marker (Optional[String], default: None ) –

    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.

Raises:

Examples:

DescribeReseredCacheNodeOfferings Lists available reserved cache node offerings for cache.r3.large nodes with a 3 year commitment.

>>> client.describe_reserved_cache_nodes_offerings(reserved_cache_nodes_offering_id='', cache_node_type='cache.r3.large', duration='3', offering_type='Light Utilization', max_records=25)
DescribeReseredCacheNodeOfferings
Lists available reserved cache node offerings.
>>> client.describe_reserved_cache_nodes_offerings(max_records=20)
DescribeReseredCacheNodeOfferings
Lists available reserved cache node offerings.
>>> client.describe_reserved_cache_nodes_offerings(reserved_cache_nodes_offering_id='438012d3-4052-4cc7-b2e3-8d3372e0e706', cache_node_type='', duration='', product_description='', offering_type='', max_records=25, marker='')
Source code in docs_src/capo_elasticache/_services/elasti_cache.py
def describe_reserved_cache_nodes_offerings(
    self,
    *,
    config_overrides: Optional[ElastiCacheClientConfig] = None,
    reserved_cache_nodes_offering_id: Optional[
        "capo_elasticache.types.string.String"
    ] = None,
    cache_node_type: Optional["capo_elasticache.types.string.String"] = None,
    duration: Optional["capo_elasticache.types.string.String"] = None,
    product_description: Optional["capo_elasticache.types.string.String"] = None,
    offering_type: Optional["capo_elasticache.types.string.String"] = None,
    max_records: Optional[
        "capo_elasticache.types.integer_optional.IntegerOptional"
    ] = None,
    marker: Optional["capo_elasticache.types.string.String"] = None,
) -> "capo_elasticache.types.reserved_cache_nodes_offering_message.ReservedCacheNodesOfferingMessage":
    """<p>Lists available reserved cache node offerings.</p>

    Args:
        reserved_cache_nodes_offering_id: <p>The offering identifier filter value. Use this parameter to show only the available offering that matches the specified reservation identifier.</p> <p>Example: <code>438012d3-4052-4cc7-b2e3-8d3372e0e706</code> </p>
        cache_node_type: <p>The cache node type filter value. Use this parameter to show only the available offerings matching the specified cache node type.</p> <p>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.</p> <ul> <li> <p>General purpose:</p> <ul> <li> <p>Current generation: </p> <p> <b>M7g node types</b>: <code>cache.m7g.large</code>, <code>cache.m7g.xlarge</code>, <code>cache.m7g.2xlarge</code>, <code>cache.m7g.4xlarge</code>, <code>cache.m7g.8xlarge</code>, <code>cache.m7g.12xlarge</code>, <code>cache.m7g.16xlarge</code> </p> <note> <p>For region availability, see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion">Supported Node Types</a> </p> </note> <p> <b>M6g node types</b> (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): <code>cache.m6g.large</code>, <code>cache.m6g.xlarge</code>, <code>cache.m6g.2xlarge</code>, <code>cache.m6g.4xlarge</code>, <code>cache.m6g.8xlarge</code>, <code>cache.m6g.12xlarge</code>, <code>cache.m6g.16xlarge</code> </p> <p> <b>M5 node types:</b> <code>cache.m5.large</code>, <code>cache.m5.xlarge</code>, <code>cache.m5.2xlarge</code>, <code>cache.m5.4xlarge</code>, <code>cache.m5.12xlarge</code>, <code>cache.m5.24xlarge</code> </p> <p> <b>M4 node types:</b> <code>cache.m4.large</code>, <code>cache.m4.xlarge</code>, <code>cache.m4.2xlarge</code>, <code>cache.m4.4xlarge</code>, <code>cache.m4.10xlarge</code> </p> <p> <b>T4g node types</b> (available only for Redis OSS engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): <code>cache.t4g.micro</code>, <code>cache.t4g.small</code>, <code>cache.t4g.medium</code> </p> <p> <b>T3 node types:</b> <code>cache.t3.micro</code>, <code>cache.t3.small</code>, <code>cache.t3.medium</code> </p> <p> <b>T2 node types:</b> <code>cache.t2.micro</code>, <code>cache.t2.small</code>, <code>cache.t2.medium</code> </p> </li> <li> <p>Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)</p> <p> <b>T1 node types:</b> <code>cache.t1.micro</code> </p> <p> <b>M1 node types:</b> <code>cache.m1.small</code>, <code>cache.m1.medium</code>, <code>cache.m1.large</code>, <code>cache.m1.xlarge</code> </p> <p> <b>M3 node types:</b> <code>cache.m3.medium</code>, <code>cache.m3.large</code>, <code>cache.m3.xlarge</code>, <code>cache.m3.2xlarge</code> </p> </li> </ul> </li> <li> <p>Compute optimized:</p> <ul> <li> <p>Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)</p> <p> <b>C1 node types:</b> <code>cache.c1.xlarge</code> </p> </li> </ul> </li> <li> <p>Memory optimized:</p> <ul> <li> <p>Current generation: </p> <p> <b>R7g node types</b>: <code>cache.r7g.large</code>, <code>cache.r7g.xlarge</code>, <code>cache.r7g.2xlarge</code>, <code>cache.r7g.4xlarge</code>, <code>cache.r7g.8xlarge</code>, <code>cache.r7g.12xlarge</code>, <code>cache.r7g.16xlarge</code> </p> <note> <p>For region availability, see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion">Supported Node Types</a> </p> </note> <p> <b>R6g node types</b> (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): <code>cache.r6g.large</code>, <code>cache.r6g.xlarge</code>, <code>cache.r6g.2xlarge</code>, <code>cache.r6g.4xlarge</code>, <code>cache.r6g.8xlarge</code>, <code>cache.r6g.12xlarge</code>, <code>cache.r6g.16xlarge</code> </p> <p> <b>R5 node types:</b> <code>cache.r5.large</code>, <code>cache.r5.xlarge</code>, <code>cache.r5.2xlarge</code>, <code>cache.r5.4xlarge</code>, <code>cache.r5.12xlarge</code>, <code>cache.r5.24xlarge</code> </p> <p> <b>R4 node types:</b> <code>cache.r4.large</code>, <code>cache.r4.xlarge</code>, <code>cache.r4.2xlarge</code>, <code>cache.r4.4xlarge</code>, <code>cache.r4.8xlarge</code>, <code>cache.r4.16xlarge</code> </p> </li> <li> <p>Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)</p> <p> <b>M2 node types:</b> <code>cache.m2.xlarge</code>, <code>cache.m2.2xlarge</code>, <code>cache.m2.4xlarge</code> </p> <p> <b>R3 node types:</b> <code>cache.r3.large</code>, <code>cache.r3.xlarge</code>, <code>cache.r3.2xlarge</code>, <code>cache.r3.4xlarge</code>, <code>cache.r3.8xlarge</code> </p> </li> </ul> </li> </ul> <p> <b>Additional node type info</b> </p> <ul> <li> <p>All current generation instance types are created in Amazon VPC by default.</p> </li> <li> <p>Valkey or Redis OSS append-only files (AOF) are not supported for T1 or T2 instances.</p> </li> <li> <p>Valkey or Redis OSS Multi-AZ with automatic failover is not supported on T1 instances.</p> </li> <li> <p>The configuration variables <code>appendonly</code> and <code>appendfsync</code> are not supported on Valkey, or on Redis OSS version 2.8.22 and later.</p> </li> </ul>
        duration: <p>Duration filter value, specified in years or seconds. Use this parameter to show only reservations for a given duration.</p> <p>Valid Values: <code>1 | 3 | 31536000 | 94608000</code> </p>
        product_description: <p>The product description filter value. Use this parameter to show only the available offerings matching the specified product description.</p>
        offering_type: <p>The offering type filter value. Use this parameter to show only the available offerings matching the specified offering type.</p> <p>Valid Values: <code>"Light Utilization"|"Medium Utilization"|"Heavy Utilization" |"All Upfront"|"Partial Upfront"| "No Upfront"</code> </p>
        max_records: <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, a marker is included in the response so that the remaining results can be retrieved.</p> <p>Default: 100</p> <p>Constraints: minimum 20; maximum 100.</p>
        marker: <p>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 <code>MaxRecords</code>.</p>

    Raises:
        capo_elasticache.errors.invalid_parameter_combination_exception.InvalidParameterCombinationException: <p>Two or more incompatible parameters were specified.</p>
        capo_elasticache.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>The value for a parameter is invalid.</p>
        capo_elasticache.errors.reserved_cache_nodes_offering_not_found_fault.ReservedCacheNodesOfferingNotFoundFault: <p>The requested cache node offering does not exist.</p>
        capo_elasticache.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        DescribeReseredCacheNodeOfferings
        Lists available reserved cache node offerings for cache.r3.large nodes with a 3 year commitment.

        >>> client.describe_reserved_cache_nodes_offerings(reserved_cache_nodes_offering_id='', cache_node_type='cache.r3.large', duration='3', offering_type='Light Utilization', max_records=25)
        DescribeReseredCacheNodeOfferings
        Lists available reserved cache node offerings.

        >>> client.describe_reserved_cache_nodes_offerings(max_records=20)
        DescribeReseredCacheNodeOfferings
        Lists available reserved cache node offerings.

        >>> client.describe_reserved_cache_nodes_offerings(reserved_cache_nodes_offering_id='438012d3-4052-4cc7-b2e3-8d3372e0e706', cache_node_type='', duration='', product_description='', offering_type='', max_records=25, marker='')
    """

    def _handler(
        req: "OperationRequest[capo_elasticache.types.describe_reserved_cache_nodes_offerings_message.DescribeReservedCacheNodesOfferingsMessage]",
    ) -> OperationResponse[
        "capo_elasticache.types.reserved_cache_nodes_offering_message.ReservedCacheNodesOfferingMessage"
    ]:
        import capo_elasticache._operations.amazon_elasti_cache_v9.describe_reserved_cache_nodes_offerings

        output, http_response = (
            capo_elasticache._operations.amazon_elasti_cache_v9.describe_reserved_cache_nodes_offerings.describe_reserved_cache_nodes_offerings(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DescribeReservedCacheNodesOfferings")
    )
    input_: capo_elasticache.types.describe_reserved_cache_nodes_offerings_message.DescribeReservedCacheNodesOfferingsMessage = {}
    if reserved_cache_nodes_offering_id is not None:
        input_["reserved_cache_nodes_offering_id"] = (
            reserved_cache_nodes_offering_id
        )
    if cache_node_type is not None:
        input_["cache_node_type"] = cache_node_type
    if duration is not None:
        input_["duration"] = duration
    if product_description is not None:
        input_["product_description"] = product_description
    if offering_type is not None:
        input_["offering_type"] = offering_type
    if max_records is not None:
        input_["max_records"] = max_records
    if marker is not None:
        input_["marker"] = marker

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output