aws-sdk-elasticache 1.92.0 → 1.94.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -770,6 +770,66 @@ module Aws::ElastiCache
770
770
  req.send_request(options)
771
771
  end
772
772
 
773
+ # Creates a copy of an existing serverless cache’s snapshot. Available
774
+ # for Redis only.
775
+ #
776
+ # @option params [required, String] :source_serverless_cache_snapshot_name
777
+ # The identifier of the existing serverless cache’s snapshot to be
778
+ # copied. Available for Redis only.
779
+ #
780
+ # @option params [required, String] :target_serverless_cache_snapshot_name
781
+ # The identifier for the snapshot to be created. Available for Redis
782
+ # only.
783
+ #
784
+ # @option params [String] :kms_key_id
785
+ # The identifier of the KMS key used to encrypt the target snapshot.
786
+ # Available for Redis only.
787
+ #
788
+ # @option params [Array<Types::Tag>] :tags
789
+ # A list of tags to be added to the target snapshot resource. A tag is a
790
+ # key-value pair. Available for Redis only. Default: NULL
791
+ #
792
+ # @return [Types::CopyServerlessCacheSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
793
+ #
794
+ # * {Types::CopyServerlessCacheSnapshotResponse#serverless_cache_snapshot #serverless_cache_snapshot} => Types::ServerlessCacheSnapshot
795
+ #
796
+ # @example Request syntax with placeholder values
797
+ #
798
+ # resp = client.copy_serverless_cache_snapshot({
799
+ # source_serverless_cache_snapshot_name: "String", # required
800
+ # target_serverless_cache_snapshot_name: "String", # required
801
+ # kms_key_id: "String",
802
+ # tags: [
803
+ # {
804
+ # key: "String",
805
+ # value: "String",
806
+ # },
807
+ # ],
808
+ # })
809
+ #
810
+ # @example Response structure
811
+ #
812
+ # resp.serverless_cache_snapshot.serverless_cache_snapshot_name #=> String
813
+ # resp.serverless_cache_snapshot.arn #=> String
814
+ # resp.serverless_cache_snapshot.kms_key_id #=> String
815
+ # resp.serverless_cache_snapshot.snapshot_type #=> String
816
+ # resp.serverless_cache_snapshot.status #=> String
817
+ # resp.serverless_cache_snapshot.create_time #=> Time
818
+ # resp.serverless_cache_snapshot.expiry_time #=> Time
819
+ # resp.serverless_cache_snapshot.bytes_used_for_cache #=> String
820
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.serverless_cache_name #=> String
821
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.engine #=> String
822
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.major_engine_version #=> String
823
+ #
824
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CopyServerlessCacheSnapshot AWS API Documentation
825
+ #
826
+ # @overload copy_serverless_cache_snapshot(params = {})
827
+ # @param [Hash] params ({})
828
+ def copy_serverless_cache_snapshot(params = {}, options = {})
829
+ req = build_request(:copy_serverless_cache_snapshot, params)
830
+ req.send_request(options)
831
+ end
832
+
773
833
  # Makes a copy of an existing snapshot.
774
834
  #
775
835
  # <note markdown="1"> This operation is valid for Redis only.
@@ -1098,16 +1158,20 @@ module Aws::ElastiCache
1098
1158
  #
1099
1159
  # * Current generation:
1100
1160
  #
1161
+ # **M7g node types**: `cache.m7g.large`, `cache.m7g.xlarge`,
1162
+ # `cache.m7g.2xlarge`, `cache.m7g.4xlarge`, `cache.m7g.8xlarge`,
1163
+ # `cache.m7g.12xlarge`, `cache.m7g.16xlarge`
1164
+ #
1165
+ # <note markdown="1"> For region availability, see [Supported Node Types][1]
1166
+ #
1167
+ # </note>
1168
+ #
1101
1169
  # **M6g node types** (available only for Redis engine version 5.0.6
1102
1170
  # onward and for Memcached engine version 1.5.16 onward):
1103
1171
  # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
1104
1172
  # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
1105
1173
  # `cache.m6g.16xlarge`
1106
1174
  #
1107
- # <note markdown="1"> For region availability, see [Supported Node Types][1]
1108
- #
1109
- # </note>
1110
- #
1111
1175
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
1112
1176
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
1113
1177
  # `cache.m5.24xlarge`
@@ -1149,17 +1213,20 @@ module Aws::ElastiCache
1149
1213
  #
1150
1214
  # * Current generation:
1151
1215
  #
1152
- # **R6g node types** (available only for Redis engine version 5.0.6
1153
- # onward and for Memcached engine version 1.5.16 onward).
1154
- #
1155
- # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
1156
- # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
1157
- # `cache.r6g.16xlarge`
1216
+ # **R7g node types**: `cache.r7g.large`, `cache.r7g.xlarge`,
1217
+ # `cache.r7g.2xlarge`, `cache.r7g.4xlarge`, `cache.r7g.8xlarge`,
1218
+ # `cache.r7g.12xlarge`, `cache.r7g.16xlarge`
1158
1219
  #
1159
1220
  # <note markdown="1"> For region availability, see [Supported Node Types][1]
1160
1221
  #
1161
1222
  # </note>
1162
1223
  #
1224
+ # **R6g node types** (available only for Redis engine version 5.0.6
1225
+ # onward and for Memcached engine version 1.5.16 onward):
1226
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
1227
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
1228
+ # `cache.r6g.16xlarge`
1229
+ #
1163
1230
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
1164
1231
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
1165
1232
  # `cache.r5.24xlarge`
@@ -2139,16 +2206,20 @@ module Aws::ElastiCache
2139
2206
  #
2140
2207
  # * Current generation:
2141
2208
  #
2209
+ # **M7g node types**: `cache.m7g.large`, `cache.m7g.xlarge`,
2210
+ # `cache.m7g.2xlarge`, `cache.m7g.4xlarge`, `cache.m7g.8xlarge`,
2211
+ # `cache.m7g.12xlarge`, `cache.m7g.16xlarge`
2212
+ #
2213
+ # <note markdown="1"> For region availability, see [Supported Node Types][1]
2214
+ #
2215
+ # </note>
2216
+ #
2142
2217
  # **M6g node types** (available only for Redis engine version 5.0.6
2143
2218
  # onward and for Memcached engine version 1.5.16 onward):
2144
2219
  # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
2145
2220
  # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
2146
2221
  # `cache.m6g.16xlarge`
2147
2222
  #
2148
- # <note markdown="1"> For region availability, see [Supported Node Types][1]
2149
- #
2150
- # </note>
2151
- #
2152
2223
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
2153
2224
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
2154
2225
  # `cache.m5.24xlarge`
@@ -2190,17 +2261,20 @@ module Aws::ElastiCache
2190
2261
  #
2191
2262
  # * Current generation:
2192
2263
  #
2193
- # **R6g node types** (available only for Redis engine version 5.0.6
2194
- # onward and for Memcached engine version 1.5.16 onward).
2195
- #
2196
- # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
2197
- # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
2198
- # `cache.r6g.16xlarge`
2264
+ # **R7g node types**: `cache.r7g.large`, `cache.r7g.xlarge`,
2265
+ # `cache.r7g.2xlarge`, `cache.r7g.4xlarge`, `cache.r7g.8xlarge`,
2266
+ # `cache.r7g.12xlarge`, `cache.r7g.16xlarge`
2199
2267
  #
2200
2268
  # <note markdown="1"> For region availability, see [Supported Node Types][1]
2201
2269
  #
2202
2270
  # </note>
2203
2271
  #
2272
+ # **R6g node types** (available only for Redis engine version 5.0.6
2273
+ # onward and for Memcached engine version 1.5.16 onward):
2274
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
2275
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
2276
+ # `cache.r6g.16xlarge`
2277
+ #
2204
2278
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
2205
2279
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
2206
2280
  # `cache.r5.24xlarge`
@@ -2504,6 +2578,10 @@ module Aws::ElastiCache
2504
2578
  # cluster mode enabled, you can then complete cluster mode configuration
2505
2579
  # and set the cluster mode to Enabled.
2506
2580
  #
2581
+ # @option params [String] :serverless_cache_snapshot_name
2582
+ # The name of the snapshot used to create a replication group. Available
2583
+ # for Redis only.
2584
+ #
2507
2585
  # @return [Types::CreateReplicationGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2508
2586
  #
2509
2587
  # * {Types::CreateReplicationGroupResult#replication_group #replication_group} => Types::ReplicationGroup
@@ -2670,6 +2748,7 @@ module Aws::ElastiCache
2670
2748
  # ip_discovery: "ipv4", # accepts ipv4, ipv6
2671
2749
  # transit_encryption_mode: "preferred", # accepts preferred, required
2672
2750
  # cluster_mode: "enabled", # accepts enabled, disabled, compatible
2751
+ # serverless_cache_snapshot_name: "String",
2673
2752
  # })
2674
2753
  #
2675
2754
  # @example Response structure
@@ -2758,6 +2837,199 @@ module Aws::ElastiCache
2758
2837
  req.send_request(options)
2759
2838
  end
2760
2839
 
2840
+ # Creates a serverless cache.
2841
+ #
2842
+ # @option params [required, String] :serverless_cache_name
2843
+ # User-provided identifier for the serverless cache. This parameter is
2844
+ # stored as a lowercase string.
2845
+ #
2846
+ # @option params [String] :description
2847
+ # User-provided description for the serverless cache. The default is
2848
+ # NULL, i.e. if no description is provided then an empty string will be
2849
+ # returned. The maximum length is 255 characters.
2850
+ #
2851
+ # @option params [required, String] :engine
2852
+ # The name of the cache engine to be used for creating the serverless
2853
+ # cache.
2854
+ #
2855
+ # @option params [String] :major_engine_version
2856
+ # The version of the cache engine that will be used to create the
2857
+ # serverless cache.
2858
+ #
2859
+ # @option params [Types::CacheUsageLimits] :cache_usage_limits
2860
+ # Sets the cache usage limits for storage and ElastiCache Processing
2861
+ # Units for the cache.
2862
+ #
2863
+ # @option params [String] :kms_key_id
2864
+ # ARN of the customer managed key for encrypting the data at rest. If no
2865
+ # KMS key is provided, a default service key is used.
2866
+ #
2867
+ # @option params [Array<String>] :security_group_ids
2868
+ # A list of the one or more VPC security groups to be associated with
2869
+ # the serverless cache. The security group will authorize traffic access
2870
+ # for the VPC end-point (private-link). If no other information is given
2871
+ # this will be the VPC’s Default Security Group that is associated with
2872
+ # the cluster VPC end-point.
2873
+ #
2874
+ # @option params [Array<String>] :snapshot_arns_to_restore
2875
+ # The ARN(s) of the snapshot that the new serverless cache will be
2876
+ # created from. Available for Redis only.
2877
+ #
2878
+ # @option params [Array<Types::Tag>] :tags
2879
+ # The list of tags (key, value) pairs to be added to the serverless
2880
+ # cache resource. Default is NULL.
2881
+ #
2882
+ # @option params [String] :user_group_id
2883
+ # The identifier of the UserGroup to be associated with the serverless
2884
+ # cache. Available for Redis only. Default is NULL.
2885
+ #
2886
+ # @option params [Array<String>] :subnet_ids
2887
+ # A list of the identifiers of the subnets where the VPC endpoint for
2888
+ # the serverless cache will be deployed. All the subnetIds must belong
2889
+ # to the same VPC.
2890
+ #
2891
+ # @option params [Integer] :snapshot_retention_limit
2892
+ # The number of snapshots that will be retained for the serverless cache
2893
+ # that is being created. As new snapshots beyond this limit are added,
2894
+ # the oldest snapshots will be deleted on a rolling basis. Available for
2895
+ # Redis only.
2896
+ #
2897
+ # @option params [String] :daily_snapshot_time
2898
+ # The daily time that snapshots will be created from the new serverless
2899
+ # cache. By default this number is populated with 0, i.e. no snapshots
2900
+ # will be created on an automatic daily basis. Available for Redis only.
2901
+ #
2902
+ # @return [Types::CreateServerlessCacheResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2903
+ #
2904
+ # * {Types::CreateServerlessCacheResponse#serverless_cache #serverless_cache} => Types::ServerlessCache
2905
+ #
2906
+ # @example Request syntax with placeholder values
2907
+ #
2908
+ # resp = client.create_serverless_cache({
2909
+ # serverless_cache_name: "String", # required
2910
+ # description: "String",
2911
+ # engine: "String", # required
2912
+ # major_engine_version: "String",
2913
+ # cache_usage_limits: {
2914
+ # data_storage: {
2915
+ # maximum: 1, # required
2916
+ # unit: "GB", # required, accepts GB
2917
+ # },
2918
+ # ecpu_per_second: {
2919
+ # maximum: 1, # required
2920
+ # },
2921
+ # },
2922
+ # kms_key_id: "String",
2923
+ # security_group_ids: ["String"],
2924
+ # snapshot_arns_to_restore: ["String"],
2925
+ # tags: [
2926
+ # {
2927
+ # key: "String",
2928
+ # value: "String",
2929
+ # },
2930
+ # ],
2931
+ # user_group_id: "String",
2932
+ # subnet_ids: ["String"],
2933
+ # snapshot_retention_limit: 1,
2934
+ # daily_snapshot_time: "String",
2935
+ # })
2936
+ #
2937
+ # @example Response structure
2938
+ #
2939
+ # resp.serverless_cache.serverless_cache_name #=> String
2940
+ # resp.serverless_cache.description #=> String
2941
+ # resp.serverless_cache.create_time #=> Time
2942
+ # resp.serverless_cache.status #=> String
2943
+ # resp.serverless_cache.engine #=> String
2944
+ # resp.serverless_cache.major_engine_version #=> String
2945
+ # resp.serverless_cache.full_engine_version #=> String
2946
+ # resp.serverless_cache.cache_usage_limits.data_storage.maximum #=> Integer
2947
+ # resp.serverless_cache.cache_usage_limits.data_storage.unit #=> String, one of "GB"
2948
+ # resp.serverless_cache.cache_usage_limits.ecpu_per_second.maximum #=> Integer
2949
+ # resp.serverless_cache.kms_key_id #=> String
2950
+ # resp.serverless_cache.security_group_ids #=> Array
2951
+ # resp.serverless_cache.security_group_ids[0] #=> String
2952
+ # resp.serverless_cache.endpoint.address #=> String
2953
+ # resp.serverless_cache.endpoint.port #=> Integer
2954
+ # resp.serverless_cache.reader_endpoint.address #=> String
2955
+ # resp.serverless_cache.reader_endpoint.port #=> Integer
2956
+ # resp.serverless_cache.arn #=> String
2957
+ # resp.serverless_cache.user_group_id #=> String
2958
+ # resp.serverless_cache.subnet_ids #=> Array
2959
+ # resp.serverless_cache.subnet_ids[0] #=> String
2960
+ # resp.serverless_cache.snapshot_retention_limit #=> Integer
2961
+ # resp.serverless_cache.daily_snapshot_time #=> String
2962
+ #
2963
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateServerlessCache AWS API Documentation
2964
+ #
2965
+ # @overload create_serverless_cache(params = {})
2966
+ # @param [Hash] params ({})
2967
+ def create_serverless_cache(params = {}, options = {})
2968
+ req = build_request(:create_serverless_cache, params)
2969
+ req.send_request(options)
2970
+ end
2971
+
2972
+ # This API creates a copy of an entire ServerlessCache at a specific
2973
+ # moment in time. Available for Redis only.
2974
+ #
2975
+ # @option params [required, String] :serverless_cache_snapshot_name
2976
+ # The name for the snapshot being created. Must be unique for the
2977
+ # customer account. Available for Redis only. Must be between 1 and 255
2978
+ # characters.
2979
+ #
2980
+ # @option params [required, String] :serverless_cache_name
2981
+ # The name of an existing serverless cache. The snapshot is created from
2982
+ # this cache. Available for Redis only.
2983
+ #
2984
+ # @option params [String] :kms_key_id
2985
+ # The ID of the KMS key used to encrypt the snapshot. Available for
2986
+ # Redis only. Default: NULL
2987
+ #
2988
+ # @option params [Array<Types::Tag>] :tags
2989
+ # A list of tags to be added to the snapshot resource. A tag is a
2990
+ # key-value pair. Available for Redis only.
2991
+ #
2992
+ # @return [Types::CreateServerlessCacheSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2993
+ #
2994
+ # * {Types::CreateServerlessCacheSnapshotResponse#serverless_cache_snapshot #serverless_cache_snapshot} => Types::ServerlessCacheSnapshot
2995
+ #
2996
+ # @example Request syntax with placeholder values
2997
+ #
2998
+ # resp = client.create_serverless_cache_snapshot({
2999
+ # serverless_cache_snapshot_name: "String", # required
3000
+ # serverless_cache_name: "String", # required
3001
+ # kms_key_id: "String",
3002
+ # tags: [
3003
+ # {
3004
+ # key: "String",
3005
+ # value: "String",
3006
+ # },
3007
+ # ],
3008
+ # })
3009
+ #
3010
+ # @example Response structure
3011
+ #
3012
+ # resp.serverless_cache_snapshot.serverless_cache_snapshot_name #=> String
3013
+ # resp.serverless_cache_snapshot.arn #=> String
3014
+ # resp.serverless_cache_snapshot.kms_key_id #=> String
3015
+ # resp.serverless_cache_snapshot.snapshot_type #=> String
3016
+ # resp.serverless_cache_snapshot.status #=> String
3017
+ # resp.serverless_cache_snapshot.create_time #=> Time
3018
+ # resp.serverless_cache_snapshot.expiry_time #=> Time
3019
+ # resp.serverless_cache_snapshot.bytes_used_for_cache #=> String
3020
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.serverless_cache_name #=> String
3021
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.engine #=> String
3022
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.major_engine_version #=> String
3023
+ #
3024
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateServerlessCacheSnapshot AWS API Documentation
3025
+ #
3026
+ # @overload create_serverless_cache_snapshot(params = {})
3027
+ # @param [Hash] params ({})
3028
+ def create_serverless_cache_snapshot(params = {}, options = {})
3029
+ req = build_request(:create_serverless_cache_snapshot, params)
3030
+ req.send_request(options)
3031
+ end
3032
+
2761
3033
  # Creates a copy of an entire cluster or replication group at a specific
2762
3034
  # moment in time.
2763
3035
  #
@@ -3092,7 +3364,7 @@ module Aws::ElastiCache
3092
3364
  # @option params [Array<Types::Tag>] :tags
3093
3365
  # A list of tags to be added to this resource. A tag is a key-value
3094
3366
  # pair. A tag key must be accompanied by a tag value, although null is
3095
- # accepted.
3367
+ # accepted. Available for Redis only.
3096
3368
  #
3097
3369
  # @return [Types::UserGroup] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3098
3370
  #
@@ -3103,6 +3375,7 @@ module Aws::ElastiCache
3103
3375
  # * {Types::UserGroup#minimum_engine_version #minimum_engine_version} => String
3104
3376
  # * {Types::UserGroup#pending_changes #pending_changes} => Types::UserGroupPendingChanges
3105
3377
  # * {Types::UserGroup#replication_groups #replication_groups} => Array&lt;String&gt;
3378
+ # * {Types::UserGroup#serverless_caches #serverless_caches} => Array&lt;String&gt;
3106
3379
  # * {Types::UserGroup#arn #arn} => String
3107
3380
  #
3108
3381
  # @example Request syntax with placeholder values
@@ -3133,6 +3406,8 @@ module Aws::ElastiCache
3133
3406
  # resp.pending_changes.user_ids_to_add[0] #=> String
3134
3407
  # resp.replication_groups #=> Array
3135
3408
  # resp.replication_groups[0] #=> String
3409
+ # resp.serverless_caches #=> Array
3410
+ # resp.serverless_caches[0] #=> String
3136
3411
  # resp.arn #=> String
3137
3412
  #
3138
3413
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateUserGroup AWS API Documentation
@@ -3868,6 +4143,101 @@ module Aws::ElastiCache
3868
4143
  req.send_request(options)
3869
4144
  end
3870
4145
 
4146
+ # Deletes a specified existing serverless cache.
4147
+ #
4148
+ # @option params [required, String] :serverless_cache_name
4149
+ # The identifier of the serverless cache to be deleted.
4150
+ #
4151
+ # @option params [String] :final_snapshot_name
4152
+ # Name of the final snapshot to be taken before the serverless cache is
4153
+ # deleted. Available for Redis only. Default: NULL, i.e. a final
4154
+ # snapshot is not taken.
4155
+ #
4156
+ # @return [Types::DeleteServerlessCacheResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4157
+ #
4158
+ # * {Types::DeleteServerlessCacheResponse#serverless_cache #serverless_cache} => Types::ServerlessCache
4159
+ #
4160
+ # @example Request syntax with placeholder values
4161
+ #
4162
+ # resp = client.delete_serverless_cache({
4163
+ # serverless_cache_name: "String", # required
4164
+ # final_snapshot_name: "String",
4165
+ # })
4166
+ #
4167
+ # @example Response structure
4168
+ #
4169
+ # resp.serverless_cache.serverless_cache_name #=> String
4170
+ # resp.serverless_cache.description #=> String
4171
+ # resp.serverless_cache.create_time #=> Time
4172
+ # resp.serverless_cache.status #=> String
4173
+ # resp.serverless_cache.engine #=> String
4174
+ # resp.serverless_cache.major_engine_version #=> String
4175
+ # resp.serverless_cache.full_engine_version #=> String
4176
+ # resp.serverless_cache.cache_usage_limits.data_storage.maximum #=> Integer
4177
+ # resp.serverless_cache.cache_usage_limits.data_storage.unit #=> String, one of "GB"
4178
+ # resp.serverless_cache.cache_usage_limits.ecpu_per_second.maximum #=> Integer
4179
+ # resp.serverless_cache.kms_key_id #=> String
4180
+ # resp.serverless_cache.security_group_ids #=> Array
4181
+ # resp.serverless_cache.security_group_ids[0] #=> String
4182
+ # resp.serverless_cache.endpoint.address #=> String
4183
+ # resp.serverless_cache.endpoint.port #=> Integer
4184
+ # resp.serverless_cache.reader_endpoint.address #=> String
4185
+ # resp.serverless_cache.reader_endpoint.port #=> Integer
4186
+ # resp.serverless_cache.arn #=> String
4187
+ # resp.serverless_cache.user_group_id #=> String
4188
+ # resp.serverless_cache.subnet_ids #=> Array
4189
+ # resp.serverless_cache.subnet_ids[0] #=> String
4190
+ # resp.serverless_cache.snapshot_retention_limit #=> Integer
4191
+ # resp.serverless_cache.daily_snapshot_time #=> String
4192
+ #
4193
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteServerlessCache AWS API Documentation
4194
+ #
4195
+ # @overload delete_serverless_cache(params = {})
4196
+ # @param [Hash] params ({})
4197
+ def delete_serverless_cache(params = {}, options = {})
4198
+ req = build_request(:delete_serverless_cache, params)
4199
+ req.send_request(options)
4200
+ end
4201
+
4202
+ # Deletes an existing serverless cache snapshot. Available for Redis
4203
+ # only.
4204
+ #
4205
+ # @option params [required, String] :serverless_cache_snapshot_name
4206
+ # Idenfitier of the snapshot to be deleted. Available for Redis only.
4207
+ #
4208
+ # @return [Types::DeleteServerlessCacheSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4209
+ #
4210
+ # * {Types::DeleteServerlessCacheSnapshotResponse#serverless_cache_snapshot #serverless_cache_snapshot} => Types::ServerlessCacheSnapshot
4211
+ #
4212
+ # @example Request syntax with placeholder values
4213
+ #
4214
+ # resp = client.delete_serverless_cache_snapshot({
4215
+ # serverless_cache_snapshot_name: "String", # required
4216
+ # })
4217
+ #
4218
+ # @example Response structure
4219
+ #
4220
+ # resp.serverless_cache_snapshot.serverless_cache_snapshot_name #=> String
4221
+ # resp.serverless_cache_snapshot.arn #=> String
4222
+ # resp.serverless_cache_snapshot.kms_key_id #=> String
4223
+ # resp.serverless_cache_snapshot.snapshot_type #=> String
4224
+ # resp.serverless_cache_snapshot.status #=> String
4225
+ # resp.serverless_cache_snapshot.create_time #=> Time
4226
+ # resp.serverless_cache_snapshot.expiry_time #=> Time
4227
+ # resp.serverless_cache_snapshot.bytes_used_for_cache #=> String
4228
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.serverless_cache_name #=> String
4229
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.engine #=> String
4230
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.major_engine_version #=> String
4231
+ #
4232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteServerlessCacheSnapshot AWS API Documentation
4233
+ #
4234
+ # @overload delete_serverless_cache_snapshot(params = {})
4235
+ # @param [Hash] params ({})
4236
+ def delete_serverless_cache_snapshot(params = {}, options = {})
4237
+ req = build_request(:delete_serverless_cache_snapshot, params)
4238
+ req.send_request(options)
4239
+ end
4240
+
3871
4241
  # Deletes an existing snapshot. When you receive a successful response
3872
4242
  # from this operation, ElastiCache immediately begins deleting the
3873
4243
  # snapshot; you cannot cancel or revert this operation.
@@ -4059,6 +4429,7 @@ module Aws::ElastiCache
4059
4429
  # * {Types::UserGroup#minimum_engine_version #minimum_engine_version} => String
4060
4430
  # * {Types::UserGroup#pending_changes #pending_changes} => Types::UserGroupPendingChanges
4061
4431
  # * {Types::UserGroup#replication_groups #replication_groups} => Array&lt;String&gt;
4432
+ # * {Types::UserGroup#serverless_caches #serverless_caches} => Array&lt;String&gt;
4062
4433
  # * {Types::UserGroup#arn #arn} => String
4063
4434
  #
4064
4435
  # @example Request syntax with placeholder values
@@ -4081,6 +4452,8 @@ module Aws::ElastiCache
4081
4452
  # resp.pending_changes.user_ids_to_add[0] #=> String
4082
4453
  # resp.replication_groups #=> Array
4083
4454
  # resp.replication_groups[0] #=> String
4455
+ # resp.serverless_caches #=> Array
4456
+ # resp.serverless_caches[0] #=> String
4084
4457
  # resp.arn #=> String
4085
4458
  #
4086
4459
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteUserGroup AWS API Documentation
@@ -6205,7 +6578,7 @@ module Aws::ElastiCache
6205
6578
  #
6206
6579
  # resp = client.describe_events({
6207
6580
  # source_identifier: "String",
6208
- # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group, user, user-group
6581
+ # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group, serverless-cache, serverless-cache-snapshot, user, user-group
6209
6582
  # start_time: Time.now,
6210
6583
  # end_time: Time.now,
6211
6584
  # duration: 1,
@@ -6218,7 +6591,7 @@ module Aws::ElastiCache
6218
6591
  # resp.marker #=> String
6219
6592
  # resp.events #=> Array
6220
6593
  # resp.events[0].source_identifier #=> String
6221
- # resp.events[0].source_type #=> String, one of "cache-cluster", "cache-parameter-group", "cache-security-group", "cache-subnet-group", "replication-group", "user", "user-group"
6594
+ # resp.events[0].source_type #=> String, one of "cache-cluster", "cache-parameter-group", "cache-security-group", "cache-subnet-group", "replication-group", "serverless-cache", "serverless-cache-snapshot", "user", "user-group"
6222
6595
  # resp.events[0].message #=> String
6223
6596
  # resp.events[0].date #=> Time
6224
6597
  #
@@ -6530,16 +6903,20 @@ module Aws::ElastiCache
6530
6903
  #
6531
6904
  # * Current generation:
6532
6905
  #
6906
+ # **M7g node types**: `cache.m7g.large`, `cache.m7g.xlarge`,
6907
+ # `cache.m7g.2xlarge`, `cache.m7g.4xlarge`, `cache.m7g.8xlarge`,
6908
+ # `cache.m7g.12xlarge`, `cache.m7g.16xlarge`
6909
+ #
6910
+ # <note markdown="1"> For region availability, see [Supported Node Types][1]
6911
+ #
6912
+ # </note>
6913
+ #
6533
6914
  # **M6g node types** (available only for Redis engine version 5.0.6
6534
6915
  # onward and for Memcached engine version 1.5.16 onward):
6535
6916
  # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
6536
6917
  # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
6537
6918
  # `cache.m6g.16xlarge`
6538
6919
  #
6539
- # <note markdown="1"> For region availability, see [Supported Node Types][1]
6540
- #
6541
- # </note>
6542
- #
6543
6920
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
6544
6921
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
6545
6922
  # `cache.m5.24xlarge`
@@ -6581,17 +6958,20 @@ module Aws::ElastiCache
6581
6958
  #
6582
6959
  # * Current generation:
6583
6960
  #
6584
- # **R6g node types** (available only for Redis engine version 5.0.6
6585
- # onward and for Memcached engine version 1.5.16 onward).
6586
- #
6587
- # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
6588
- # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
6589
- # `cache.r6g.16xlarge`
6961
+ # **R7g node types**: `cache.r7g.large`, `cache.r7g.xlarge`,
6962
+ # `cache.r7g.2xlarge`, `cache.r7g.4xlarge`, `cache.r7g.8xlarge`,
6963
+ # `cache.r7g.12xlarge`, `cache.r7g.16xlarge`
6590
6964
  #
6591
6965
  # <note markdown="1"> For region availability, see [Supported Node Types][1]
6592
6966
  #
6593
6967
  # </note>
6594
6968
  #
6969
+ # **R6g node types** (available only for Redis engine version 5.0.6
6970
+ # onward and for Memcached engine version 1.5.16 onward):
6971
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
6972
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
6973
+ # `cache.r6g.16xlarge`
6974
+ #
6595
6975
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
6596
6976
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
6597
6977
  # `cache.r5.24xlarge`
@@ -6742,16 +7122,20 @@ module Aws::ElastiCache
6742
7122
  #
6743
7123
  # * Current generation:
6744
7124
  #
7125
+ # **M7g node types**: `cache.m7g.large`, `cache.m7g.xlarge`,
7126
+ # `cache.m7g.2xlarge`, `cache.m7g.4xlarge`, `cache.m7g.8xlarge`,
7127
+ # `cache.m7g.12xlarge`, `cache.m7g.16xlarge`
7128
+ #
7129
+ # <note markdown="1"> For region availability, see [Supported Node Types][1]
7130
+ #
7131
+ # </note>
7132
+ #
6745
7133
  # **M6g node types** (available only for Redis engine version 5.0.6
6746
7134
  # onward and for Memcached engine version 1.5.16 onward):
6747
7135
  # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
6748
7136
  # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
6749
7137
  # `cache.m6g.16xlarge`
6750
7138
  #
6751
- # <note markdown="1"> For region availability, see [Supported Node Types][1]
6752
- #
6753
- # </note>
6754
- #
6755
7139
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
6756
7140
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
6757
7141
  # `cache.m5.24xlarge`
@@ -6793,17 +7177,20 @@ module Aws::ElastiCache
6793
7177
  #
6794
7178
  # * Current generation:
6795
7179
  #
6796
- # **R6g node types** (available only for Redis engine version 5.0.6
6797
- # onward and for Memcached engine version 1.5.16 onward).
6798
- #
6799
- # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
6800
- # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
6801
- # `cache.r6g.16xlarge`
7180
+ # **R7g node types**: `cache.r7g.large`, `cache.r7g.xlarge`,
7181
+ # `cache.r7g.2xlarge`, `cache.r7g.4xlarge`, `cache.r7g.8xlarge`,
7182
+ # `cache.r7g.12xlarge`, `cache.r7g.16xlarge`
6802
7183
  #
6803
7184
  # <note markdown="1"> For region availability, see [Supported Node Types][1]
6804
7185
  #
6805
7186
  # </note>
6806
7187
  #
7188
+ # **R6g node types** (available only for Redis engine version 5.0.6
7189
+ # onward and for Memcached engine version 1.5.16 onward):
7190
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
7191
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
7192
+ # `cache.r6g.16xlarge`
7193
+ #
6807
7194
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
6808
7195
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
6809
7196
  # `cache.r5.24xlarge`
@@ -7236,6 +7623,154 @@ module Aws::ElastiCache
7236
7623
  req.send_request(options)
7237
7624
  end
7238
7625
 
7626
+ # Returns information about serverless cache snapshots. By default, this
7627
+ # API lists all of the customer’s serverless cache snapshots. It can
7628
+ # also describe a single serverless cache snapshot, or the snapshots
7629
+ # associated with a particular serverless cache. Available for Redis
7630
+ # only.
7631
+ #
7632
+ # @option params [String] :serverless_cache_name
7633
+ # The identifier of serverless cache. If this parameter is specified,
7634
+ # only snapshots associated with that specific serverless cache are
7635
+ # described. Available for Redis only.
7636
+ #
7637
+ # @option params [String] :serverless_cache_snapshot_name
7638
+ # The identifier of the serverless cache’s snapshot. If this parameter
7639
+ # is specified, only this snapshot is described. Available for Redis
7640
+ # only.
7641
+ #
7642
+ # @option params [String] :snapshot_type
7643
+ # The type of snapshot that is being described. Available for Redis
7644
+ # only.
7645
+ #
7646
+ # @option params [String] :next_token
7647
+ # An optional marker returned from a prior request to support pagination
7648
+ # of results from this operation. If this parameter is specified, the
7649
+ # response includes only records beyond the marker, up to the value
7650
+ # specified by max-results. Available for Redis only.
7651
+ #
7652
+ # @option params [Integer] :max_results
7653
+ # The maximum number of records to include in the response. If more
7654
+ # records exist than the specified max-results value, a market is
7655
+ # included in the response so that remaining results can be retrieved.
7656
+ # Available for Redis only.The default is 50. The Validation Constraints
7657
+ # are a maximum of 50.
7658
+ #
7659
+ # @return [Types::DescribeServerlessCacheSnapshotsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7660
+ #
7661
+ # * {Types::DescribeServerlessCacheSnapshotsResponse#next_token #next_token} => String
7662
+ # * {Types::DescribeServerlessCacheSnapshotsResponse#serverless_cache_snapshots #serverless_cache_snapshots} => Array&lt;Types::ServerlessCacheSnapshot&gt;
7663
+ #
7664
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7665
+ #
7666
+ # @example Request syntax with placeholder values
7667
+ #
7668
+ # resp = client.describe_serverless_cache_snapshots({
7669
+ # serverless_cache_name: "String",
7670
+ # serverless_cache_snapshot_name: "String",
7671
+ # snapshot_type: "String",
7672
+ # next_token: "String",
7673
+ # max_results: 1,
7674
+ # })
7675
+ #
7676
+ # @example Response structure
7677
+ #
7678
+ # resp.next_token #=> String
7679
+ # resp.serverless_cache_snapshots #=> Array
7680
+ # resp.serverless_cache_snapshots[0].serverless_cache_snapshot_name #=> String
7681
+ # resp.serverless_cache_snapshots[0].arn #=> String
7682
+ # resp.serverless_cache_snapshots[0].kms_key_id #=> String
7683
+ # resp.serverless_cache_snapshots[0].snapshot_type #=> String
7684
+ # resp.serverless_cache_snapshots[0].status #=> String
7685
+ # resp.serverless_cache_snapshots[0].create_time #=> Time
7686
+ # resp.serverless_cache_snapshots[0].expiry_time #=> Time
7687
+ # resp.serverless_cache_snapshots[0].bytes_used_for_cache #=> String
7688
+ # resp.serverless_cache_snapshots[0].serverless_cache_configuration.serverless_cache_name #=> String
7689
+ # resp.serverless_cache_snapshots[0].serverless_cache_configuration.engine #=> String
7690
+ # resp.serverless_cache_snapshots[0].serverless_cache_configuration.major_engine_version #=> String
7691
+ #
7692
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeServerlessCacheSnapshots AWS API Documentation
7693
+ #
7694
+ # @overload describe_serverless_cache_snapshots(params = {})
7695
+ # @param [Hash] params ({})
7696
+ def describe_serverless_cache_snapshots(params = {}, options = {})
7697
+ req = build_request(:describe_serverless_cache_snapshots, params)
7698
+ req.send_request(options)
7699
+ end
7700
+
7701
+ # Returns information about a specific serverless cache. If no
7702
+ # identifier is specified, then the API returns information on all the
7703
+ # serverless caches belonging to this Amazon Web Services account.
7704
+ #
7705
+ # @option params [String] :serverless_cache_name
7706
+ # The identifier for the serverless cache. If this parameter is
7707
+ # specified, only information about that specific serverless cache is
7708
+ # returned. Default: NULL
7709
+ #
7710
+ # @option params [Integer] :max_results
7711
+ # The maximum number of records in the response. If more records exist
7712
+ # than the specified max-records value, the next token is included in
7713
+ # the response so that remaining results can be retrieved. The default
7714
+ # is 50.
7715
+ #
7716
+ # @option params [String] :next_token
7717
+ # An optional marker returned from a prior request to support pagination
7718
+ # of results from this operation. If this parameter is specified, the
7719
+ # response includes only records beyond the marker, up to the value
7720
+ # specified by MaxResults.
7721
+ #
7722
+ # @return [Types::DescribeServerlessCachesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7723
+ #
7724
+ # * {Types::DescribeServerlessCachesResponse#next_token #next_token} => String
7725
+ # * {Types::DescribeServerlessCachesResponse#serverless_caches #serverless_caches} => Array&lt;Types::ServerlessCache&gt;
7726
+ #
7727
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7728
+ #
7729
+ # @example Request syntax with placeholder values
7730
+ #
7731
+ # resp = client.describe_serverless_caches({
7732
+ # serverless_cache_name: "String",
7733
+ # max_results: 1,
7734
+ # next_token: "String",
7735
+ # })
7736
+ #
7737
+ # @example Response structure
7738
+ #
7739
+ # resp.next_token #=> String
7740
+ # resp.serverless_caches #=> Array
7741
+ # resp.serverless_caches[0].serverless_cache_name #=> String
7742
+ # resp.serverless_caches[0].description #=> String
7743
+ # resp.serverless_caches[0].create_time #=> Time
7744
+ # resp.serverless_caches[0].status #=> String
7745
+ # resp.serverless_caches[0].engine #=> String
7746
+ # resp.serverless_caches[0].major_engine_version #=> String
7747
+ # resp.serverless_caches[0].full_engine_version #=> String
7748
+ # resp.serverless_caches[0].cache_usage_limits.data_storage.maximum #=> Integer
7749
+ # resp.serverless_caches[0].cache_usage_limits.data_storage.unit #=> String, one of "GB"
7750
+ # resp.serverless_caches[0].cache_usage_limits.ecpu_per_second.maximum #=> Integer
7751
+ # resp.serverless_caches[0].kms_key_id #=> String
7752
+ # resp.serverless_caches[0].security_group_ids #=> Array
7753
+ # resp.serverless_caches[0].security_group_ids[0] #=> String
7754
+ # resp.serverless_caches[0].endpoint.address #=> String
7755
+ # resp.serverless_caches[0].endpoint.port #=> Integer
7756
+ # resp.serverless_caches[0].reader_endpoint.address #=> String
7757
+ # resp.serverless_caches[0].reader_endpoint.port #=> Integer
7758
+ # resp.serverless_caches[0].arn #=> String
7759
+ # resp.serverless_caches[0].user_group_id #=> String
7760
+ # resp.serverless_caches[0].subnet_ids #=> Array
7761
+ # resp.serverless_caches[0].subnet_ids[0] #=> String
7762
+ # resp.serverless_caches[0].snapshot_retention_limit #=> Integer
7763
+ # resp.serverless_caches[0].daily_snapshot_time #=> String
7764
+ #
7765
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeServerlessCaches AWS API Documentation
7766
+ #
7767
+ # @overload describe_serverless_caches(params = {})
7768
+ # @param [Hash] params ({})
7769
+ def describe_serverless_caches(params = {}, options = {})
7770
+ req = build_request(:describe_serverless_caches, params)
7771
+ req.send_request(options)
7772
+ end
7773
+
7239
7774
  # Returns details of the service updates
7240
7775
  #
7241
7776
  # @option params [String] :service_update_name
@@ -7622,6 +8157,8 @@ module Aws::ElastiCache
7622
8157
  # resp.user_groups[0].pending_changes.user_ids_to_add[0] #=> String
7623
8158
  # resp.user_groups[0].replication_groups #=> Array
7624
8159
  # resp.user_groups[0].replication_groups[0] #=> String
8160
+ # resp.user_groups[0].serverless_caches #=> Array
8161
+ # resp.user_groups[0].serverless_caches[0] #=> String
7625
8162
  # resp.user_groups[0].arn #=> String
7626
8163
  # resp.marker #=> String
7627
8164
  #
@@ -7764,6 +8301,52 @@ module Aws::ElastiCache
7764
8301
  req.send_request(options)
7765
8302
  end
7766
8303
 
8304
+ # Provides the functionality to export the serverless cache snapshot
8305
+ # data to Amazon S3. Available for Redis only.
8306
+ #
8307
+ # @option params [required, String] :serverless_cache_snapshot_name
8308
+ # The identifier of the serverless cache snapshot to be exported to S3.
8309
+ # Available for Redis only.
8310
+ #
8311
+ # @option params [required, String] :s3_bucket_name
8312
+ # Name of the Amazon S3 bucket to export the snapshot to. The Amazon S3
8313
+ # bucket must also be in same region as the snapshot. Available for
8314
+ # Redis only.
8315
+ #
8316
+ # @return [Types::ExportServerlessCacheSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8317
+ #
8318
+ # * {Types::ExportServerlessCacheSnapshotResponse#serverless_cache_snapshot #serverless_cache_snapshot} => Types::ServerlessCacheSnapshot
8319
+ #
8320
+ # @example Request syntax with placeholder values
8321
+ #
8322
+ # resp = client.export_serverless_cache_snapshot({
8323
+ # serverless_cache_snapshot_name: "String", # required
8324
+ # s3_bucket_name: "String", # required
8325
+ # })
8326
+ #
8327
+ # @example Response structure
8328
+ #
8329
+ # resp.serverless_cache_snapshot.serverless_cache_snapshot_name #=> String
8330
+ # resp.serverless_cache_snapshot.arn #=> String
8331
+ # resp.serverless_cache_snapshot.kms_key_id #=> String
8332
+ # resp.serverless_cache_snapshot.snapshot_type #=> String
8333
+ # resp.serverless_cache_snapshot.status #=> String
8334
+ # resp.serverless_cache_snapshot.create_time #=> Time
8335
+ # resp.serverless_cache_snapshot.expiry_time #=> Time
8336
+ # resp.serverless_cache_snapshot.bytes_used_for_cache #=> String
8337
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.serverless_cache_name #=> String
8338
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.engine #=> String
8339
+ # resp.serverless_cache_snapshot.serverless_cache_configuration.major_engine_version #=> String
8340
+ #
8341
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ExportServerlessCacheSnapshot AWS API Documentation
8342
+ #
8343
+ # @overload export_serverless_cache_snapshot(params = {})
8344
+ # @param [Hash] params ({})
8345
+ def export_serverless_cache_snapshot(params = {}, options = {})
8346
+ req = build_request(:export_serverless_cache_snapshot, params)
8347
+ req.send_request(options)
8348
+ end
8349
+
7767
8350
  # Used to failover the primary region to a secondary region. The
7768
8351
  # secondary region will become primary, and all other clusters will
7769
8352
  # become secondary.
@@ -8936,7 +9519,8 @@ module Aws::ElastiCache
8936
9519
  req.send_request(options)
8937
9520
  end
8938
9521
 
8939
- # Modifies the settings for a replication group.
9522
+ # Modifies the settings for a replication group. This is limited to
9523
+ # Redis 7 and newer.
8940
9524
  #
8941
9525
  # * [Scaling for Amazon ElastiCache for Redis (cluster mode enabled)][1]
8942
9526
  # in the ElastiCache User Guide
@@ -9552,6 +10136,107 @@ module Aws::ElastiCache
9552
10136
  req.send_request(options)
9553
10137
  end
9554
10138
 
10139
+ # This API modifies the attributes of a serverless cache.
10140
+ #
10141
+ # @option params [required, String] :serverless_cache_name
10142
+ # User-provided identifier for the serverless cache to be modified.
10143
+ #
10144
+ # @option params [String] :description
10145
+ # User provided description for the serverless cache. Default = NULL,
10146
+ # i.e. the existing description is not removed/modified. The description
10147
+ # has a maximum length of 255 characters.
10148
+ #
10149
+ # @option params [Types::CacheUsageLimits] :cache_usage_limits
10150
+ # Modify the cache usage limit for the serverless cache.
10151
+ #
10152
+ # @option params [Boolean] :remove_user_group
10153
+ # The identifier of the UserGroup to be removed from association with
10154
+ # the Redis serverless cache. Available for Redis only. Default is NULL.
10155
+ #
10156
+ # @option params [String] :user_group_id
10157
+ # The identifier of the UserGroup to be associated with the serverless
10158
+ # cache. Available for Redis only. Default is NULL - the existing
10159
+ # UserGroup is not removed.
10160
+ #
10161
+ # @option params [Array<String>] :security_group_ids
10162
+ # The new list of VPC security groups to be associated with the
10163
+ # serverless cache. Populating this list means the current VPC security
10164
+ # groups will be removed. This security group is used to authorize
10165
+ # traffic access for the VPC end-point (private-link). Default = NULL -
10166
+ # the existing list of VPC security groups is not removed.
10167
+ #
10168
+ # @option params [Integer] :snapshot_retention_limit
10169
+ # The number of days for which Elasticache retains automatic snapshots
10170
+ # before deleting them. Available for Redis only. Default = NULL, i.e.
10171
+ # the existing snapshot-retention-limit will not be removed or modified.
10172
+ # The maximum value allowed is 35 days.
10173
+ #
10174
+ # @option params [String] :daily_snapshot_time
10175
+ # The daily time during which Elasticache begins taking a daily snapshot
10176
+ # of the serverless cache. Available for Redis only. The default is
10177
+ # NULL, i.e. the existing snapshot time configured for the cluster is
10178
+ # not removed.
10179
+ #
10180
+ # @return [Types::ModifyServerlessCacheResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10181
+ #
10182
+ # * {Types::ModifyServerlessCacheResponse#serverless_cache #serverless_cache} => Types::ServerlessCache
10183
+ #
10184
+ # @example Request syntax with placeholder values
10185
+ #
10186
+ # resp = client.modify_serverless_cache({
10187
+ # serverless_cache_name: "String", # required
10188
+ # description: "String",
10189
+ # cache_usage_limits: {
10190
+ # data_storage: {
10191
+ # maximum: 1, # required
10192
+ # unit: "GB", # required, accepts GB
10193
+ # },
10194
+ # ecpu_per_second: {
10195
+ # maximum: 1, # required
10196
+ # },
10197
+ # },
10198
+ # remove_user_group: false,
10199
+ # user_group_id: "String",
10200
+ # security_group_ids: ["String"],
10201
+ # snapshot_retention_limit: 1,
10202
+ # daily_snapshot_time: "String",
10203
+ # })
10204
+ #
10205
+ # @example Response structure
10206
+ #
10207
+ # resp.serverless_cache.serverless_cache_name #=> String
10208
+ # resp.serverless_cache.description #=> String
10209
+ # resp.serverless_cache.create_time #=> Time
10210
+ # resp.serverless_cache.status #=> String
10211
+ # resp.serverless_cache.engine #=> String
10212
+ # resp.serverless_cache.major_engine_version #=> String
10213
+ # resp.serverless_cache.full_engine_version #=> String
10214
+ # resp.serverless_cache.cache_usage_limits.data_storage.maximum #=> Integer
10215
+ # resp.serverless_cache.cache_usage_limits.data_storage.unit #=> String, one of "GB"
10216
+ # resp.serverless_cache.cache_usage_limits.ecpu_per_second.maximum #=> Integer
10217
+ # resp.serverless_cache.kms_key_id #=> String
10218
+ # resp.serverless_cache.security_group_ids #=> Array
10219
+ # resp.serverless_cache.security_group_ids[0] #=> String
10220
+ # resp.serverless_cache.endpoint.address #=> String
10221
+ # resp.serverless_cache.endpoint.port #=> Integer
10222
+ # resp.serverless_cache.reader_endpoint.address #=> String
10223
+ # resp.serverless_cache.reader_endpoint.port #=> Integer
10224
+ # resp.serverless_cache.arn #=> String
10225
+ # resp.serverless_cache.user_group_id #=> String
10226
+ # resp.serverless_cache.subnet_ids #=> Array
10227
+ # resp.serverless_cache.subnet_ids[0] #=> String
10228
+ # resp.serverless_cache.snapshot_retention_limit #=> Integer
10229
+ # resp.serverless_cache.daily_snapshot_time #=> String
10230
+ #
10231
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyServerlessCache AWS API Documentation
10232
+ #
10233
+ # @overload modify_serverless_cache(params = {})
10234
+ # @param [Hash] params ({})
10235
+ def modify_serverless_cache(params = {}, options = {})
10236
+ req = build_request(:modify_serverless_cache, params)
10237
+ req.send_request(options)
10238
+ end
10239
+
9555
10240
  # Changes user password(s) and/or access string.
9556
10241
  #
9557
10242
  # @option params [required, String] :user_id
@@ -9641,6 +10326,7 @@ module Aws::ElastiCache
9641
10326
  # * {Types::UserGroup#minimum_engine_version #minimum_engine_version} => String
9642
10327
  # * {Types::UserGroup#pending_changes #pending_changes} => Types::UserGroupPendingChanges
9643
10328
  # * {Types::UserGroup#replication_groups #replication_groups} => Array&lt;String&gt;
10329
+ # * {Types::UserGroup#serverless_caches #serverless_caches} => Array&lt;String&gt;
9644
10330
  # * {Types::UserGroup#arn #arn} => String
9645
10331
  #
9646
10332
  # @example Request syntax with placeholder values
@@ -9665,6 +10351,8 @@ module Aws::ElastiCache
9665
10351
  # resp.pending_changes.user_ids_to_add[0] #=> String
9666
10352
  # resp.replication_groups #=> Array
9667
10353
  # resp.replication_groups[0] #=> String
10354
+ # resp.serverless_caches #=> Array
10355
+ # resp.serverless_caches[0] #=> String
9668
10356
  # resp.arn #=> String
9669
10357
  #
9670
10358
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyUserGroup AWS API Documentation
@@ -10612,7 +11300,7 @@ module Aws::ElastiCache
10612
11300
  params: params,
10613
11301
  config: config)
10614
11302
  context[:gem_name] = 'aws-sdk-elasticache'
10615
- context[:gem_version] = '1.92.0'
11303
+ context[:gem_version] = '1.94.0'
10616
11304
  Seahorse::Client::Request.new(handlers, context)
10617
11305
  end
10618
11306