aws-sdk-elasticache 1.92.0 → 1.94.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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