From 507661ff1edbc896fbdfe3ea2e4c2e74be3b4e3c Mon Sep 17 00:00:00 2001 From: AWS SDK for Go v2 automation user Date: Tue, 28 Nov 2023 05:32:50 +0000 Subject: [PATCH] Update API model --- .../sdk-codegen/aws-models/elasticache.json | 1831 ++++++++++++++--- 1 file changed, 1577 insertions(+), 254 deletions(-) diff --git a/codegen/sdk-codegen/aws-models/elasticache.json b/codegen/sdk-codegen/aws-models/elasticache.json index 0bc2cc99ef9..bcd096fe4ba 100644 --- a/codegen/sdk-codegen/aws-models/elasticache.json +++ b/codegen/sdk-codegen/aws-models/elasticache.json @@ -96,12 +96,24 @@ { "target": "com.amazonaws.elasticache#InvalidReplicationGroupStateFault" }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheSnapshotStateFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheStateFault" + }, { "target": "com.amazonaws.elasticache#ReplicationGroupNotFoundFault" }, { "target": "com.amazonaws.elasticache#ReservedCacheNodeNotFoundFault" }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotNotFoundFault" + }, { "target": "com.amazonaws.elasticache#SnapshotNotFoundFault" }, @@ -225,6 +237,9 @@ { "target": "com.amazonaws.elasticache#CompleteMigration" }, + { + "target": "com.amazonaws.elasticache#CopyServerlessCacheSnapshot" + }, { "target": "com.amazonaws.elasticache#CopySnapshot" }, @@ -246,6 +261,12 @@ { "target": "com.amazonaws.elasticache#CreateReplicationGroup" }, + { + "target": "com.amazonaws.elasticache#CreateServerlessCache" + }, + { + "target": "com.amazonaws.elasticache#CreateServerlessCacheSnapshot" + }, { "target": "com.amazonaws.elasticache#CreateSnapshot" }, @@ -279,6 +300,12 @@ { "target": "com.amazonaws.elasticache#DeleteReplicationGroup" }, + { + "target": "com.amazonaws.elasticache#DeleteServerlessCache" + }, + { + "target": "com.amazonaws.elasticache#DeleteServerlessCacheSnapshot" + }, { "target": "com.amazonaws.elasticache#DeleteSnapshot" }, @@ -324,6 +351,12 @@ { "target": "com.amazonaws.elasticache#DescribeReservedCacheNodesOfferings" }, + { + "target": "com.amazonaws.elasticache#DescribeServerlessCaches" + }, + { + "target": "com.amazonaws.elasticache#DescribeServerlessCacheSnapshots" + }, { "target": "com.amazonaws.elasticache#DescribeServiceUpdates" }, @@ -342,6 +375,9 @@ { "target": "com.amazonaws.elasticache#DisassociateGlobalReplicationGroup" }, + { + "target": "com.amazonaws.elasticache#ExportServerlessCacheSnapshot" + }, { "target": "com.amazonaws.elasticache#FailoverGlobalReplicationGroup" }, @@ -375,6 +411,9 @@ { "target": "com.amazonaws.elasticache#ModifyReplicationGroupShardConfiguration" }, + { + "target": "com.amazonaws.elasticache#ModifyServerlessCache" + }, { "target": "com.amazonaws.elasticache#ModifyUser" }, @@ -1847,7 +1886,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The name of the compute and memory capacity node type for the cluster.

\n

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

\n \n

\n Additional node type info\n

\n " + "smithy.api#documentation": "

The name of the compute and memory capacity node type for the cluster.

\n

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

\n \n

\n Additional node type info\n

\n " } }, "Engine": { @@ -2223,7 +2262,7 @@ } }, "traits": { - "smithy.api#documentation": "

Represents an individual cache node within a cluster. Each cache node runs its own\n instance of the cluster's protocol-compliant caching software - either Memcached or\n Redis.

\n

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

\n \n

\n Additional node type info\n

\n " + "smithy.api#documentation": "

Represents an individual cache node within a cluster. Each cache node runs its own\n instance of the cluster's protocol-compliant caching software - either Memcached or\n Redis.

\n

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

\n \n

\n Additional node type info\n

\n " } }, "com.amazonaws.elasticache#CacheNodeIdsList": { @@ -2910,6 +2949,23 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.elasticache#CacheUsageLimits": { + "type": "structure", + "members": { + "DataStorage": { + "target": "com.amazonaws.elasticache#DataStorage", + "traits": { + "smithy.api#documentation": "

\n The maximum data storage limit in the cache, expressed in Gigabytes.\n

" + } + }, + "ECPUPerSecond": { + "target": "com.amazonaws.elasticache#ECPUPerSecond" + } + }, + "traits": { + "smithy.api#documentation": "

The usage limits for storage and ElastiCache Processing Units for the cache.

" + } + }, "com.amazonaws.elasticache#ChangeType": { "type": "enum", "members": { @@ -3082,6 +3138,94 @@ "smithy.api#documentation": "

Node group (shard) configuration options when adding or removing replicas. Each\n node group (shard) configuration has the following members: NodeGroupId,\n NewReplicaCount, and PreferredAvailabilityZones.

" } }, + "com.amazonaws.elasticache#CopyServerlessCacheSnapshot": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#CopyServerlessCacheSnapshotRequest" + }, + "output": { + "target": "com.amazonaws.elasticache#CopyServerlessCacheSnapshotResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheSnapshotStateFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotAlreadyExistsFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotQuotaExceededFault" + }, + { + "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#TagQuotaPerResourceExceeded" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a copy of an existing serverless cache’s snapshot. Available for Redis only.

" + } + }, + "com.amazonaws.elasticache#CopyServerlessCacheSnapshotRequest": { + "type": "structure", + "members": { + "SourceServerlessCacheSnapshotName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The identifier of the existing serverless cache’s snapshot to be copied. Available for Redis only.

", + "smithy.api#required": {} + } + }, + "TargetServerlessCacheSnapshotName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The identifier for the snapshot to be created. Available for Redis only.

", + "smithy.api#required": {} + } + }, + "KmsKeyId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The identifier of the KMS key used to encrypt the target snapshot. Available for Redis only.

" + } + }, + "Tags": { + "target": "com.amazonaws.elasticache#TagList", + "traits": { + "smithy.api#documentation": "

A list of tags to be added to the target snapshot resource. A tag is a key-value pair. Available for Redis only. Default: NULL

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#CopyServerlessCacheSnapshotResponse": { + "type": "structure", + "members": { + "ServerlessCacheSnapshot": { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshot", + "traits": { + "smithy.api#documentation": "

The response for the attempt to copy the serverless cache snapshot. Available for Redis only.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.elasticache#CopySnapshot": { "type": "operation", "input": { @@ -3350,7 +3494,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The compute and memory capacity of the nodes in the node group (shard).

\n

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

\n \n

\n Additional node type info\n

\n " + "smithy.api#documentation": "

The compute and memory capacity of the nodes in the node group (shard).

\n

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

\n \n

\n Additional node type info\n

\n " } }, "Engine": { @@ -4061,7 +4205,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The compute and memory capacity of the nodes in the node group (shard).

\n

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

\n \n

\n Additional node type info\n

\n " + "smithy.api#documentation": "

The compute and memory capacity of the nodes in the node group (shard).

\n

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

\n \n

\n Additional node type info\n

\n " } }, "Engine": { @@ -4219,6 +4363,12 @@ "traits": { "smithy.api#documentation": "

Enabled or Disabled. To modify cluster mode from Disabled to Enabled, you must first\n set the cluster mode to Compatible. Compatible mode allows your Redis clients to connect\n using both cluster mode enabled and cluster mode disabled. After you migrate all Redis\n clients to use cluster mode enabled, you can then complete cluster mode configuration\n and set the cluster mode to Enabled.

" } + }, + "ServerlessCacheSnapshotName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The name of the snapshot used to create a replication group. Available for Redis only.

" + } } }, "traits": { @@ -4237,20 +4387,17 @@ "smithy.api#output": {} } }, - "com.amazonaws.elasticache#CreateSnapshot": { + "com.amazonaws.elasticache#CreateServerlessCache": { "type": "operation", "input": { - "target": "com.amazonaws.elasticache#CreateSnapshotMessage" + "target": "com.amazonaws.elasticache#CreateServerlessCacheRequest" }, "output": { - "target": "com.amazonaws.elasticache#CreateSnapshotResult" + "target": "com.amazonaws.elasticache#CreateServerlessCacheResponse" }, "errors": [ { - "target": "com.amazonaws.elasticache#CacheClusterNotFoundFault" - }, - { - "target": "com.amazonaws.elasticache#InvalidCacheClusterStateFault" + "target": "com.amazonaws.elasticache#InvalidCredentialsException" }, { "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" @@ -4259,131 +4406,147 @@ "target": "com.amazonaws.elasticache#InvalidParameterValueException" }, { - "target": "com.amazonaws.elasticache#InvalidReplicationGroupStateFault" + "target": "com.amazonaws.elasticache#InvalidServerlessCacheStateFault" }, { - "target": "com.amazonaws.elasticache#ReplicationGroupNotFoundFault" + "target": "com.amazonaws.elasticache#InvalidUserGroupStateFault" }, { - "target": "com.amazonaws.elasticache#SnapshotAlreadyExistsFault" + "target": "com.amazonaws.elasticache#ServerlessCacheAlreadyExistsFault" }, { - "target": "com.amazonaws.elasticache#SnapshotFeatureNotSupportedFault" + "target": "com.amazonaws.elasticache#ServerlessCacheNotFoundFault" }, { - "target": "com.amazonaws.elasticache#SnapshotQuotaExceededFault" + "target": "com.amazonaws.elasticache#ServerlessCacheQuotaForCustomerExceededFault" + }, + { + "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" }, { "target": "com.amazonaws.elasticache#TagQuotaPerResourceExceeded" + }, + { + "target": "com.amazonaws.elasticache#UserGroupNotFoundFault" } ], "traits": { - "smithy.api#documentation": "

Creates a copy of an entire cluster or replication group at a specific moment in\n time.

\n \n

This operation is valid for Redis only.

\n
", - "smithy.api#examples": [ - { - "title": "CreateSnapshot - NonClustered Redis, no read-replicas", - "documentation": "Creates a snapshot of a non-clustered Redis cluster that has only one node.", - "input": { - "CacheClusterId": "onenoderedis", - "SnapshotName": "snapshot-1" - }, - "output": { - "Snapshot": { - "Engine": "redis", - "CacheParameterGroupName": "default.redis3.2", - "VpcId": "vpc-73c3cd17", - "CacheClusterId": "onenoderedis", - "SnapshotRetentionLimit": 1, - "NumCacheNodes": 1, - "SnapshotName": "snapshot-1", - "CacheClusterCreateTime": "2017-02-03T15:43:36.278Z", - "AutoMinorVersionUpgrade": true, - "PreferredAvailabilityZone": "us-west-2c", - "SnapshotStatus": "creating", - "SnapshotSource": "manual", - "SnapshotWindow": "00:00-01:00", - "EngineVersion": "3.2.4", - "NodeSnapshots": [ - { - "CacheSize": "", - "CacheNodeId": "0001", - "CacheNodeCreateTime": "2017-02-03T15:43:36.278Z" - } - ], - "CacheSubnetGroupName": "default", - "Port": 6379, - "PreferredMaintenanceWindow": "sat:08:00-sat:09:00", - "CacheNodeType": "cache.m3.medium" - } - } - } - ] + "smithy.api#documentation": "

Creates a serverless cache.

" } }, - "com.amazonaws.elasticache#CreateSnapshotMessage": { + "com.amazonaws.elasticache#CreateServerlessCacheRequest": { "type": "structure", "members": { - "ReplicationGroupId": { + "ServerlessCacheName": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The identifier of an existing replication group. The snapshot is created from this\n replication group.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

User-provided identifier for the serverless cache. This parameter is stored as a lowercase string.

", + "smithy.api#required": {} } }, - "CacheClusterId": { + "Description": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The identifier of an existing cluster. The snapshot is created from this\n cluster.

" + "smithy.api#documentation": "

User-provided description for the serverless cache. \n The default is NULL, i.e. if no description is provided then an empty string will be returned. \n The maximum length is 255 characters.

" } }, - "SnapshotName": { + "Engine": { "target": "com.amazonaws.elasticache#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A name for the snapshot being created.

", + "smithy.api#documentation": "

The name of the cache engine to be used for creating the serverless cache.

", "smithy.api#required": {} } }, + "MajorEngineVersion": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The version of the cache engine that will be used to create the serverless cache.

" + } + }, + "CacheUsageLimits": { + "target": "com.amazonaws.elasticache#CacheUsageLimits", + "traits": { + "smithy.api#documentation": "

Sets the cache usage limits for storage and ElastiCache Processing Units for the cache.

" + } + }, "KmsKeyId": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The ID of the KMS key used to encrypt the snapshot.

" + "smithy.api#documentation": "

ARN of the customer managed key for encrypting the data at rest. If no KMS key is provided, a default service key is used.

" + } + }, + "SecurityGroupIds": { + "target": "com.amazonaws.elasticache#SecurityGroupIdsList", + "traits": { + "smithy.api#documentation": "

A list of the one or more VPC security groups to be associated with the serverless cache. \n The security group will authorize traffic access for the VPC end-point (private-link). \n If no other information is given this will be the VPC’s Default Security Group that is associated with the cluster VPC \n end-point.

" + } + }, + "SnapshotArnsToRestore": { + "target": "com.amazonaws.elasticache#SnapshotArnsList", + "traits": { + "smithy.api#documentation": "

The ARN(s) of the snapshot that the new serverless cache will be created from. Available for Redis only.

" } }, "Tags": { "target": "com.amazonaws.elasticache#TagList", "traits": { - "smithy.api#documentation": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must\n be accompanied by a tag value, although null is accepted.

" + "smithy.api#documentation": "

The list of tags (key, value) pairs to be added to the serverless cache resource. Default is NULL.

" + } + }, + "UserGroupId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The identifier of the UserGroup to be associated with the serverless cache. Available for Redis only. Default is NULL.

" + } + }, + "SubnetIds": { + "target": "com.amazonaws.elasticache#SubnetIdsList", + "traits": { + "smithy.api#documentation": "

A list of the identifiers of the subnets where the VPC endpoint for the serverless cache will be deployed. \n All the subnetIds must belong to the same VPC.

" + } + }, + "SnapshotRetentionLimit": { + "target": "com.amazonaws.elasticache#IntegerOptional", + "traits": { + "smithy.api#documentation": "

The number of snapshots that will be retained for the serverless cache that is being created. \n As new snapshots beyond this limit are added, the oldest snapshots will be deleted on a rolling basis. Available for Redis only.

" + } + }, + "DailySnapshotTime": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The daily time that snapshots will be created from the new serverless cache. By default this number is populated with \n 0, i.e. no snapshots will be created on an automatic daily basis. Available for Redis only.

" } } }, "traits": { - "smithy.api#documentation": "

Represents the input of a CreateSnapshot operation.

", "smithy.api#input": {} } }, - "com.amazonaws.elasticache#CreateSnapshotResult": { + "com.amazonaws.elasticache#CreateServerlessCacheResponse": { "type": "structure", "members": { - "Snapshot": { - "target": "com.amazonaws.elasticache#Snapshot" + "ServerlessCache": { + "target": "com.amazonaws.elasticache#ServerlessCache", + "traits": { + "smithy.api#documentation": "

The response for the attempt to create the serverless cache.

" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.elasticache#CreateUser": { + "com.amazonaws.elasticache#CreateServerlessCacheSnapshot": { "type": "operation", "input": { - "target": "com.amazonaws.elasticache#CreateUserMessage" + "target": "com.amazonaws.elasticache#CreateServerlessCacheSnapshotRequest" }, "output": { - "target": "com.amazonaws.elasticache#User" + "target": "com.amazonaws.elasticache#CreateServerlessCacheSnapshotResponse" }, "errors": [ - { - "target": "com.amazonaws.elasticache#DuplicateUserNameFault" - }, { "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" }, @@ -4391,47 +4554,273 @@ "target": "com.amazonaws.elasticache#InvalidParameterValueException" }, { - "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" - }, - { - "target": "com.amazonaws.elasticache#TagQuotaPerResourceExceeded" - }, - { - "target": "com.amazonaws.elasticache#UserAlreadyExistsFault" + "target": "com.amazonaws.elasticache#InvalidServerlessCacheStateFault" }, { - "target": "com.amazonaws.elasticache#UserQuotaExceededFault" - } - ], - "traits": { - "smithy.api#documentation": "

For Redis engine version 6.0 onwards: Creates a Redis user. For more information, see\n Using Role Based Access Control (RBAC).

" - } - }, - "com.amazonaws.elasticache#CreateUserGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.elasticache#CreateUserGroupMessage" - }, - "output": { - "target": "com.amazonaws.elasticache#UserGroup" - }, - "errors": [ - { - "target": "com.amazonaws.elasticache#DefaultUserRequired" + "target": "com.amazonaws.elasticache#ServerlessCacheNotFoundFault" }, { - "target": "com.amazonaws.elasticache#DuplicateUserNameFault" + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotAlreadyExistsFault" }, { - "target": "com.amazonaws.elasticache#InvalidParameterValueException" + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotQuotaExceededFault" }, { "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" }, { "target": "com.amazonaws.elasticache#TagQuotaPerResourceExceeded" - }, - { + } + ], + "traits": { + "smithy.api#documentation": "

This API creates a copy of an entire ServerlessCache at a specific moment in time. Available for Redis only.

" + } + }, + "com.amazonaws.elasticache#CreateServerlessCacheSnapshotRequest": { + "type": "structure", + "members": { + "ServerlessCacheSnapshotName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name for the snapshot being created. Must be unique for the customer account. Available for Redis only.\n Must be between 1 and 255 characters.

", + "smithy.api#required": {} + } + }, + "ServerlessCacheName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name of an existing serverless cache. The snapshot is created from this cache. Available for Redis only.

", + "smithy.api#required": {} + } + }, + "KmsKeyId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The ID of the KMS key used to encrypt the snapshot. Available for Redis only. Default: NULL

" + } + }, + "Tags": { + "target": "com.amazonaws.elasticache#TagList", + "traits": { + "smithy.api#documentation": "

A list of tags to be added to the snapshot resource. A tag is a key-value pair. Available for Redis only.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#CreateServerlessCacheSnapshotResponse": { + "type": "structure", + "members": { + "ServerlessCacheSnapshot": { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshot", + "traits": { + "smithy.api#documentation": "

The state of a serverless cache snapshot at a specific point in time, to the millisecond. Available for Redis only.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.elasticache#CreateSnapshot": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#CreateSnapshotMessage" + }, + "output": { + "target": "com.amazonaws.elasticache#CreateSnapshotResult" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#CacheClusterNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidCacheClusterStateFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.elasticache#InvalidReplicationGroupStateFault" + }, + { + "target": "com.amazonaws.elasticache#ReplicationGroupNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#SnapshotAlreadyExistsFault" + }, + { + "target": "com.amazonaws.elasticache#SnapshotFeatureNotSupportedFault" + }, + { + "target": "com.amazonaws.elasticache#SnapshotQuotaExceededFault" + }, + { + "target": "com.amazonaws.elasticache#TagQuotaPerResourceExceeded" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a copy of an entire cluster or replication group at a specific moment in\n time.

\n \n

This operation is valid for Redis only.

\n
", + "smithy.api#examples": [ + { + "title": "CreateSnapshot - NonClustered Redis, no read-replicas", + "documentation": "Creates a snapshot of a non-clustered Redis cluster that has only one node.", + "input": { + "CacheClusterId": "onenoderedis", + "SnapshotName": "snapshot-1" + }, + "output": { + "Snapshot": { + "Engine": "redis", + "CacheParameterGroupName": "default.redis3.2", + "VpcId": "vpc-73c3cd17", + "CacheClusterId": "onenoderedis", + "SnapshotRetentionLimit": 1, + "NumCacheNodes": 1, + "SnapshotName": "snapshot-1", + "CacheClusterCreateTime": "2017-02-03T15:43:36.278Z", + "AutoMinorVersionUpgrade": true, + "PreferredAvailabilityZone": "us-west-2c", + "SnapshotStatus": "creating", + "SnapshotSource": "manual", + "SnapshotWindow": "00:00-01:00", + "EngineVersion": "3.2.4", + "NodeSnapshots": [ + { + "CacheSize": "", + "CacheNodeId": "0001", + "CacheNodeCreateTime": "2017-02-03T15:43:36.278Z" + } + ], + "CacheSubnetGroupName": "default", + "Port": 6379, + "PreferredMaintenanceWindow": "sat:08:00-sat:09:00", + "CacheNodeType": "cache.m3.medium" + } + } + } + ] + } + }, + "com.amazonaws.elasticache#CreateSnapshotMessage": { + "type": "structure", + "members": { + "ReplicationGroupId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The identifier of an existing replication group. The snapshot is created from this\n replication group.

" + } + }, + "CacheClusterId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The identifier of an existing cluster. The snapshot is created from this\n cluster.

" + } + }, + "SnapshotName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A name for the snapshot being created.

", + "smithy.api#required": {} + } + }, + "KmsKeyId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The ID of the KMS key used to encrypt the snapshot.

" + } + }, + "Tags": { + "target": "com.amazonaws.elasticache#TagList", + "traits": { + "smithy.api#documentation": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must\n be accompanied by a tag value, although null is accepted.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents the input of a CreateSnapshot operation.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#CreateSnapshotResult": { + "type": "structure", + "members": { + "Snapshot": { + "target": "com.amazonaws.elasticache#Snapshot" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.elasticache#CreateUser": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#CreateUserMessage" + }, + "output": { + "target": "com.amazonaws.elasticache#User" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#DuplicateUserNameFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#TagQuotaPerResourceExceeded" + }, + { + "target": "com.amazonaws.elasticache#UserAlreadyExistsFault" + }, + { + "target": "com.amazonaws.elasticache#UserQuotaExceededFault" + } + ], + "traits": { + "smithy.api#documentation": "

For Redis engine version 6.0 onwards: Creates a Redis user. For more information, see\n Using Role Based Access Control (RBAC).

" + } + }, + "com.amazonaws.elasticache#CreateUserGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#CreateUserGroupMessage" + }, + "output": { + "target": "com.amazonaws.elasticache#UserGroup" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#DefaultUserRequired" + }, + { + "target": "com.amazonaws.elasticache#DuplicateUserNameFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#TagQuotaPerResourceExceeded" + }, + { "target": "com.amazonaws.elasticache#UserGroupAlreadyExistsFault" }, { @@ -4473,7 +4862,7 @@ "Tags": { "target": "com.amazonaws.elasticache#TagList", "traits": { - "smithy.api#documentation": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must\n be accompanied by a tag value, although null is accepted.

" + "smithy.api#documentation": "

A list of tags to be added to this resource. A tag is a key-value pair. A tag key must\n be accompanied by a tag value, although null is accepted. Available for Redis only.

" } } }, @@ -4571,19 +4960,54 @@ "target": "com.amazonaws.elasticache#CustomerNodeEndpoint" } }, - "com.amazonaws.elasticache#DataTieringStatus": { - "type": "enum", + "com.amazonaws.elasticache#DataStorage": { + "type": "structure", "members": { - "ENABLED": { - "target": "smithy.api#Unit", + "Maximum": { + "target": "com.amazonaws.elasticache#IntegerOptional", "traits": { - "smithy.api#enumValue": "enabled" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The upper limit for data storage the cache is set to use.

", + "smithy.api#required": {} } }, - "DISABLED": { - "target": "smithy.api#Unit", + "Unit": { + "target": "com.amazonaws.elasticache#DataStorageUnit", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The unit that the storage is measured in, in GB.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The data storage limit.

" + } + }, + "com.amazonaws.elasticache#DataStorageUnit": { + "type": "enum", + "members": { + "GB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GB" + } + } + } + }, + "com.amazonaws.elasticache#DataTieringStatus": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enabled" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disabled" } } } @@ -5213,6 +5637,133 @@ "smithy.api#output": {} } }, + "com.amazonaws.elasticache#DeleteServerlessCache": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#DeleteServerlessCacheRequest" + }, + "output": { + "target": "com.amazonaws.elasticache#DeleteServerlessCacheResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#InvalidCredentialsException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheStateFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotAlreadyExistsFault" + }, + { + "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a specified existing serverless cache.

" + } + }, + "com.amazonaws.elasticache#DeleteServerlessCacheRequest": { + "type": "structure", + "members": { + "ServerlessCacheName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The identifier of the serverless cache to be deleted.

", + "smithy.api#required": {} + } + }, + "FinalSnapshotName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

Name of the final snapshot to be taken before the serverless cache is deleted. Available for Redis only.\n Default: NULL, i.e. a final snapshot is not taken.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#DeleteServerlessCacheResponse": { + "type": "structure", + "members": { + "ServerlessCache": { + "target": "com.amazonaws.elasticache#ServerlessCache", + "traits": { + "smithy.api#documentation": "

Provides the details of the specified serverless cache that is about to be deleted.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.elasticache#DeleteServerlessCacheSnapshot": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#DeleteServerlessCacheSnapshotRequest" + }, + "output": { + "target": "com.amazonaws.elasticache#DeleteServerlessCacheSnapshotResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheSnapshotStateFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes an existing serverless cache snapshot. Available for Redis only.

" + } + }, + "com.amazonaws.elasticache#DeleteServerlessCacheSnapshotRequest": { + "type": "structure", + "members": { + "ServerlessCacheSnapshotName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Idenfitier of the snapshot to be deleted. Available for Redis only.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#DeleteServerlessCacheSnapshotResponse": { + "type": "structure", + "members": { + "ServerlessCacheSnapshot": { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshot", + "traits": { + "smithy.api#documentation": "

The snapshot to be deleted. Available for Redis only.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.elasticache#DeleteSnapshot": { "type": "operation", "input": { @@ -7605,7 +8156,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The cache node type filter value. Use this parameter to show only those reservations\n matching the specified cache node type.

\n

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

\n \n

\n Additional node type info\n

\n " + "smithy.api#documentation": "

The cache node type filter value. Use this parameter to show only those reservations\n matching the specified cache node type.

\n

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

\n \n

\n Additional node type info\n

\n " } }, "Duration": { @@ -7954,7 +8505,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

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

\n

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

\n \n

\n Additional node type info\n

\n " + "smithy.api#documentation": "

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

\n

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

\n \n

\n Additional node type info\n

\n " } }, "Duration": { @@ -7993,6 +8544,171 @@ "smithy.api#input": {} } }, + "com.amazonaws.elasticache#DescribeServerlessCacheSnapshots": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#DescribeServerlessCacheSnapshotsRequest" + }, + "output": { + "target": "com.amazonaws.elasticache#DescribeServerlessCacheSnapshotsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotNotFoundFault" + } + ], + "traits": { + "smithy.api#documentation": "

Returns information about serverless cache snapshots. \n By default, this API lists all of the customer’s serverless cache snapshots. \n It can also describe a single serverless cache snapshot, or the snapshots associated with \n a particular serverless cache. Available for Redis only.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ServerlessCacheSnapshots", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.elasticache#DescribeServerlessCacheSnapshotsRequest": { + "type": "structure", + "members": { + "ServerlessCacheName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The identifier of serverless cache. If this parameter is specified, \n only snapshots associated with that specific serverless cache are described. Available for Redis only.

" + } + }, + "ServerlessCacheSnapshotName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The identifier of the serverless cache’s snapshot.\n If this parameter is specified, only this snapshot is described. Available for Redis only.

" + } + }, + "SnapshotType": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The type of snapshot that is being described. Available for Redis only.

" + } + }, + "NextToken": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

An optional marker returned from a prior request to support pagination of results from this operation. \n If this parameter is specified, the response includes only records beyond the marker, \n up to the value specified by max-results. Available for Redis only.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.elasticache#IntegerOptional", + "traits": { + "smithy.api#documentation": "

The maximum number of records to include in the response. If more records exist than \n the specified max-results value, a market is included in the response so that remaining results \n can be retrieved. Available for Redis only.The default is 50. The Validation Constraints are a maximum of 50.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#DescribeServerlessCacheSnapshotsResponse": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

An optional marker returned from a prior request to support pagination of results from this operation. \n If this parameter is specified, the response includes only records beyond the marker, \n up to the value specified by max-results. Available for Redis only.

" + } + }, + "ServerlessCacheSnapshots": { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotList", + "traits": { + "smithy.api#documentation": "

The serverless caches snapshots associated with a given description request. Available for Redis only.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.elasticache#DescribeServerlessCaches": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#DescribeServerlessCachesRequest" + }, + "output": { + "target": "com.amazonaws.elasticache#DescribeServerlessCachesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheNotFoundFault" + } + ], + "traits": { + "smithy.api#documentation": "

Returns information about a specific serverless cache. \n If no identifier is specified, then the API returns information on all the serverless caches belonging to \n this Amazon Web Services account.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ServerlessCaches", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.elasticache#DescribeServerlessCachesRequest": { + "type": "structure", + "members": { + "ServerlessCacheName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The identifier for the serverless cache. If this parameter is specified, \n only information about that specific serverless cache is returned. Default: NULL

" + } + }, + "MaxResults": { + "target": "com.amazonaws.elasticache#IntegerOptional", + "traits": { + "smithy.api#documentation": "

The maximum number of records in the response. If more records exist than the specified max-records value, \n the next token is included in the response so that remaining results can be retrieved. \n The default is 50.

" + } + }, + "NextToken": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

An optional marker returned from a prior request to support pagination of results from this operation. \n If this parameter is specified, the response includes only records beyond the marker, \n up to the value specified by MaxResults.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#DescribeServerlessCachesResponse": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

An optional marker returned from a prior request to support pagination of results from this operation. \n If this parameter is specified, the response includes only records beyond the marker, \n up to the value specified by MaxResults.

" + } + }, + "ServerlessCaches": { + "target": "com.amazonaws.elasticache#ServerlessCacheList", + "traits": { + "smithy.api#documentation": "

The serverless caches associated with a given description request.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.elasticache#DescribeServiceUpdates": { "type": "operation", "input": { @@ -8617,6 +9333,22 @@ } } }, + "com.amazonaws.elasticache#ECPUPerSecond": { + "type": "structure", + "members": { + "Maximum": { + "target": "com.amazonaws.elasticache#IntegerOptional", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The configuration for the maximum number of ECPUs the cache can consume per second.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for the number of ElastiCache Processing Units (ECPU) the cache can consume per second.

" + } + }, "com.amazonaws.elasticache#Endpoint": { "type": "structure", "members": { @@ -8740,20 +9472,84 @@ "com.amazonaws.elasticache#ExceptionMessage": { "type": "string" }, - "com.amazonaws.elasticache#FailoverGlobalReplicationGroup": { + "com.amazonaws.elasticache#ExportServerlessCacheSnapshot": { "type": "operation", "input": { - "target": "com.amazonaws.elasticache#FailoverGlobalReplicationGroupMessage" + "target": "com.amazonaws.elasticache#ExportServerlessCacheSnapshotRequest" }, "output": { - "target": "com.amazonaws.elasticache#FailoverGlobalReplicationGroupResult" + "target": "com.amazonaws.elasticache#ExportServerlessCacheSnapshotResponse" }, "errors": [ { - "target": "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault" + "target": "com.amazonaws.elasticache#InvalidParameterValueException" }, { - "target": "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault" + "target": "com.amazonaws.elasticache#InvalidServerlessCacheSnapshotStateFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" + } + ], + "traits": { + "smithy.api#documentation": "

Provides the functionality to export the serverless cache snapshot data to Amazon S3. Available for Redis only.

" + } + }, + "com.amazonaws.elasticache#ExportServerlessCacheSnapshotRequest": { + "type": "structure", + "members": { + "ServerlessCacheSnapshotName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The identifier of the serverless cache snapshot to be exported to S3. Available for Redis only.

", + "smithy.api#required": {} + } + }, + "S3BucketName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Name of the Amazon S3 bucket to export the snapshot to. The Amazon S3 bucket must also be in same region \n as the snapshot. Available for Redis only.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#ExportServerlessCacheSnapshotResponse": { + "type": "structure", + "members": { + "ServerlessCacheSnapshot": { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshot", + "traits": { + "smithy.api#documentation": "

The state of a serverless cache at a specific point in time, to the millisecond. Available for Redis only.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.elasticache#FailoverGlobalReplicationGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#FailoverGlobalReplicationGroupMessage" + }, + "output": { + "target": "com.amazonaws.elasticache#FailoverGlobalReplicationGroupResult" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#GlobalReplicationGroupNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault" }, { "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" @@ -9379,6 +10175,23 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.elasticache#InvalidCredentialsException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.elasticache#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "InvalidCredentialsException", + "httpResponseCode": 408 + }, + "smithy.api#documentation": "

You must enter valid credentials.

", + "smithy.api#error": "client", + "smithy.api#httpError": 408 + } + }, "com.amazonaws.elasticache#InvalidGlobalReplicationGroupStateFault": { "type": "structure", "members": { @@ -9470,6 +10283,40 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.elasticache#InvalidServerlessCacheSnapshotStateFault": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.elasticache#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "InvalidServerlessCacheSnapshotStateFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "

The state of the serverless cache snapshot was not received. Available for Redis only.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.elasticache#InvalidServerlessCacheStateFault": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.elasticache#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "InvalidServerlessCacheStateFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "

The account for these credentials is not currently active.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, "com.amazonaws.elasticache#InvalidSnapshotStateFault": { "type": "structure", "members": { @@ -9687,12 +10534,24 @@ { "target": "com.amazonaws.elasticache#InvalidReplicationGroupStateFault" }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheSnapshotStateFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheStateFault" + }, { "target": "com.amazonaws.elasticache#ReplicationGroupNotFoundFault" }, { "target": "com.amazonaws.elasticache#ReservedCacheNodeNotFoundFault" }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotNotFoundFault" + }, { "target": "com.amazonaws.elasticache#SnapshotNotFoundFault" }, @@ -10488,7 +11347,7 @@ } ], "traits": { - "smithy.api#documentation": "

Modifies the settings for a replication group.

\n \n \n

This operation is valid for Redis only.

\n
", + "smithy.api#documentation": "

Modifies the settings for a replication group. This is limited to Redis 7 and newer.

\n \n \n

This operation is valid for Redis only.

\n
", "smithy.api#examples": [ { "title": "ModifyReplicationGroup", @@ -10864,6 +11723,116 @@ "smithy.api#output": {} } }, + "com.amazonaws.elasticache#ModifyServerlessCache": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#ModifyServerlessCacheRequest" + }, + "output": { + "target": "com.amazonaws.elasticache#ModifyServerlessCacheResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#InvalidCredentialsException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheStateFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidUserGroupStateFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#UserGroupNotFoundFault" + } + ], + "traits": { + "smithy.api#documentation": "

This API modifies the attributes of a serverless cache.

" + } + }, + "com.amazonaws.elasticache#ModifyServerlessCacheRequest": { + "type": "structure", + "members": { + "ServerlessCacheName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

User-provided identifier for the serverless cache to be modified.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

User provided description for the serverless cache. \n Default = NULL, i.e. the existing description is not removed/modified. \n The description has a maximum length of 255 characters.

" + } + }, + "CacheUsageLimits": { + "target": "com.amazonaws.elasticache#CacheUsageLimits", + "traits": { + "smithy.api#documentation": "

Modify the cache usage limit for the serverless cache.

" + } + }, + "RemoveUserGroup": { + "target": "com.amazonaws.elasticache#BooleanOptional", + "traits": { + "smithy.api#documentation": "

The identifier of the UserGroup to be removed from association with the Redis serverless cache. Available for Redis only. Default is NULL.

" + } + }, + "UserGroupId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The identifier of the UserGroup to be associated with the serverless cache. Available for Redis only. \n Default is NULL - the existing UserGroup is not removed.

" + } + }, + "SecurityGroupIds": { + "target": "com.amazonaws.elasticache#SecurityGroupIdsList", + "traits": { + "smithy.api#documentation": "

The new list of VPC security groups to be associated with the serverless cache. \n Populating this list means the current VPC security groups will be removed. \n This security group is used to authorize traffic access for the VPC end-point (private-link). \n Default = NULL - the existing list of VPC security groups is not removed.

" + } + }, + "SnapshotRetentionLimit": { + "target": "com.amazonaws.elasticache#IntegerOptional", + "traits": { + "smithy.api#documentation": "

The number of days for which Elasticache retains automatic snapshots before deleting them. \n Available for Redis only.\n Default = NULL, i.e. the existing snapshot-retention-limit will not be removed or modified. \n The maximum value allowed is 35 days.

" + } + }, + "DailySnapshotTime": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The daily time during which Elasticache begins taking a daily snapshot of the serverless cache. Available for Redis only.\n The default is NULL, i.e. the existing snapshot time configured for the cluster is not removed.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#ModifyServerlessCacheResponse": { + "type": "structure", + "members": { + "ServerlessCache": { + "target": "com.amazonaws.elasticache#ServerlessCache", + "traits": { + "smithy.api#documentation": "

The response for the attempt to modify the serverless cache.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.elasticache#ModifyUser": { "type": "operation", "input": { @@ -12213,12 +13182,24 @@ { "target": "com.amazonaws.elasticache#InvalidReplicationGroupStateFault" }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheSnapshotStateFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidServerlessCacheStateFault" + }, { "target": "com.amazonaws.elasticache#ReplicationGroupNotFoundFault" }, { "target": "com.amazonaws.elasticache#ReservedCacheNodeNotFoundFault" }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshotNotFoundFault" + }, { "target": "com.amazonaws.elasticache#SnapshotNotFoundFault" }, @@ -12701,7 +13682,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The cache node type for the reserved cache nodes.

\n

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

\n \n

\n Additional node type info\n

\n " + "smithy.api#documentation": "

The cache node type for the reserved cache nodes.

\n

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

\n \n

\n Additional node type info\n

\n " } }, "StartTime": { @@ -12862,7 +13843,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The cache node type for the reserved cache node.

\n

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

\n \n

\n Additional node type info\n

\n " + "smithy.api#documentation": "

The cache node type for the reserved cache node.

\n

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

\n \n

\n Additional node type info\n

\n " } }, "Duration": { @@ -12974,216 +13955,525 @@ { "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" }, - { - "target": "com.amazonaws.elasticache#InvalidParameterValueException" - } - ], - "traits": { - "smithy.api#documentation": "

Modifies the parameters of a cache parameter group to the engine or system default\n value. You can reset specific parameters by submitting a list of parameter names. To\n reset the entire cache parameter group, specify the ResetAllParameters and\n CacheParameterGroupName parameters.

", - "smithy.api#examples": [ - { - "title": "ResetCacheParameterGroup", - "documentation": "Modifies the parameters of a cache parameter group to the engine or system default value.", - "input": { - "CacheParameterGroupName": "custom-mem1-4", - "ResetAllParameters": true - }, - "output": { - "CacheParameterGroupName": "custom-mem1-4" - } + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + } + ], + "traits": { + "smithy.api#documentation": "

Modifies the parameters of a cache parameter group to the engine or system default\n value. You can reset specific parameters by submitting a list of parameter names. To\n reset the entire cache parameter group, specify the ResetAllParameters and\n CacheParameterGroupName parameters.

", + "smithy.api#examples": [ + { + "title": "ResetCacheParameterGroup", + "documentation": "Modifies the parameters of a cache parameter group to the engine or system default value.", + "input": { + "CacheParameterGroupName": "custom-mem1-4", + "ResetAllParameters": true + }, + "output": { + "CacheParameterGroupName": "custom-mem1-4" + } + } + ] + } + }, + "com.amazonaws.elasticache#ResetCacheParameterGroupMessage": { + "type": "structure", + "members": { + "CacheParameterGroupName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name of the cache parameter group to reset.

", + "smithy.api#required": {} + } + }, + "ResetAllParameters": { + "target": "com.amazonaws.elasticache#Boolean", + "traits": { + "smithy.api#documentation": "

If true, all parameters in the cache parameter group are reset to their\n default values. If false, only the parameters listed by\n ParameterNameValues are reset to their default values.

\n

Valid values: true | false\n

" + } + }, + "ParameterNameValues": { + "target": "com.amazonaws.elasticache#ParameterNameValueList", + "traits": { + "smithy.api#documentation": "

An array of parameter names to reset to their default values. If\n ResetAllParameters is true, do not use\n ParameterNameValues. If ResetAllParameters is\n false, you must specify the name of at least one parameter to\n reset.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents the input of a ResetCacheParameterGroup operation.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#ReshardingConfiguration": { + "type": "structure", + "members": { + "NodeGroupId": { + "target": "com.amazonaws.elasticache#AllowedNodeGroupId", + "traits": { + "smithy.api#documentation": "

Either the ElastiCache for Redis supplied 4-digit id or a user supplied id for the\n node group these configuration values apply to.

" + } + }, + "PreferredAvailabilityZones": { + "target": "com.amazonaws.elasticache#AvailabilityZonesList", + "traits": { + "smithy.api#documentation": "

A list of preferred availability zones for the nodes in this cluster.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A list of PreferredAvailabilityZones objects that specifies the\n configuration of a node group in the resharded cluster.

" + } + }, + "com.amazonaws.elasticache#ReshardingConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticache#ReshardingConfiguration", + "traits": { + "smithy.api#xmlName": "ReshardingConfiguration" + } + } + }, + "com.amazonaws.elasticache#ReshardingStatus": { + "type": "structure", + "members": { + "SlotMigration": { + "target": "com.amazonaws.elasticache#SlotMigration", + "traits": { + "smithy.api#documentation": "

Represents the progress of an online resharding operation.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The status of an online resharding operation.

" + } + }, + "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngress": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngressMessage" + }, + "output": { + "target": "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngressResult" + }, + "errors": [ + { + "target": "com.amazonaws.elasticache#AuthorizationNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidCacheSecurityGroupStateFault" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" + }, + { + "target": "com.amazonaws.elasticache#InvalidParameterValueException" + } + ], + "traits": { + "smithy.api#documentation": "

Revokes ingress from a cache security group. Use this operation to disallow access\n from an Amazon EC2 security group that had been previously authorized.

", + "smithy.api#examples": [ + { + "title": "DescribeCacheSecurityGroups", + "documentation": "Returns a list of cache security group descriptions. If a cache security group name is specified, the list contains only the description of that group.", + "input": { + "CacheSecurityGroupName": "my-sec-grp", + "EC2SecurityGroupName": "my-ec2-sec-grp", + "EC2SecurityGroupOwnerId": "1234567890" + } + } + ] + } + }, + "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngressMessage": { + "type": "structure", + "members": { + "CacheSecurityGroupName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name of the cache security group to revoke ingress from.

", + "smithy.api#required": {} + } + }, + "EC2SecurityGroupName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name of the Amazon EC2 security group to revoke access from.

", + "smithy.api#required": {} + } + }, + "EC2SecurityGroupOwnerId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Amazon account number of the Amazon EC2 security group owner. Note that this is\n not the same thing as an Amazon access key ID - you must provide a valid Amazon account\n number for this parameter.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents the input of a RevokeCacheSecurityGroupIngress\n operation.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngressResult": { + "type": "structure", + "members": { + "CacheSecurityGroup": { + "target": "com.amazonaws.elasticache#CacheSecurityGroup" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.elasticache#SecurityGroupIdsList": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#xmlName": "SecurityGroupId" + } + } + }, + "com.amazonaws.elasticache#SecurityGroupMembership": { + "type": "structure", + "members": { + "SecurityGroupId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The identifier of the cache security group.

" + } + }, + "Status": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The status of the cache security group membership. The status changes whenever a cache\n security group is modified, or when the cache security groups assigned to a cluster are\n modified.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents a single cache security group and its status.

" + } + }, + "com.amazonaws.elasticache#SecurityGroupMembershipList": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticache#SecurityGroupMembership" + } + }, + "com.amazonaws.elasticache#ServerlessCache": { + "type": "structure", + "members": { + "ServerlessCacheName": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The unique identifier of the serverless cache.

" + } + }, + "Description": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

A description of the serverless cache.

" + } + }, + "CreateTime": { + "target": "com.amazonaws.elasticache#TStamp", + "traits": { + "smithy.api#documentation": "

When the serverless cache was created.

" + } + }, + "Status": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The current status of the serverless cache. The allowed values are CREATING, AVAILABLE, DELETING, CREATE-FAILED and MODIFYING.

" + } + }, + "Engine": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The engine the serverless cache is compatible with.

" + } + }, + "MajorEngineVersion": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The version number of the engine the serverless cache is compatible with.

" + } + }, + "FullEngineVersion": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The name and version number of the engine the serverless cache is compatible with.

" + } + }, + "CacheUsageLimits": { + "target": "com.amazonaws.elasticache#CacheUsageLimits", + "traits": { + "smithy.api#documentation": "

The cache usage limit for the serverless cache.

" + } + }, + "KmsKeyId": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services Key Management Service (KMS) key that is used to encrypt data at rest in the serverless cache.

" + } + }, + "SecurityGroupIds": { + "target": "com.amazonaws.elasticache#SecurityGroupIdsList", + "traits": { + "smithy.api#documentation": "

The IDs of the EC2 security groups associated with the serverless \n cache.

" + } + }, + "Endpoint": { + "target": "com.amazonaws.elasticache#Endpoint" + }, + "ReaderEndpoint": { + "target": "com.amazonaws.elasticache#Endpoint" + }, + "ARN": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the serverless cache.

" } - ] - } - }, - "com.amazonaws.elasticache#ResetCacheParameterGroupMessage": { - "type": "structure", - "members": { - "CacheParameterGroupName": { + }, + "UserGroupId": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the cache parameter group to reset.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The identifier of the user group associated with the serverless cache. Available for Redis only. Default is NULL.

" } }, - "ResetAllParameters": { - "target": "com.amazonaws.elasticache#Boolean", + "SubnetIds": { + "target": "com.amazonaws.elasticache#SubnetIdsList", "traits": { - "smithy.api#documentation": "

If true, all parameters in the cache parameter group are reset to their\n default values. If false, only the parameters listed by\n ParameterNameValues are reset to their default values.

\n

Valid values: true | false\n

" + "smithy.api#documentation": "

If no subnet IDs are given and your VPC is in SFO, then ElastiCache will select 2 default subnets across AZs in your VPC. \n For all other Regions, if no subnet IDs are given then ElastiCache will select 3 default subnets across AZs in your default VPC.

" } }, - "ParameterNameValues": { - "target": "com.amazonaws.elasticache#ParameterNameValueList", + "SnapshotRetentionLimit": { + "target": "com.amazonaws.elasticache#IntegerOptional", "traits": { - "smithy.api#documentation": "

An array of parameter names to reset to their default values. If\n ResetAllParameters is true, do not use\n ParameterNameValues. If ResetAllParameters is\n false, you must specify the name of at least one parameter to\n reset.

" + "smithy.api#documentation": "

The current setting for the number of serverless cache snapshots the system will retain. Available for Redis only.

" + } + }, + "DailySnapshotTime": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The daily time that a cache snapshot will be created. Default is NULL, i.e. snapshots will not be created at a\n specific time on a daily basis. Available for Redis only.

" } } }, "traits": { - "smithy.api#documentation": "

Represents the input of a ResetCacheParameterGroup operation.

", - "smithy.api#input": {} + "smithy.api#documentation": "

The resource representing a serverless cache.

" } }, - "com.amazonaws.elasticache#ReshardingConfiguration": { + "com.amazonaws.elasticache#ServerlessCacheAlreadyExistsFault": { "type": "structure", "members": { - "NodeGroupId": { - "target": "com.amazonaws.elasticache#AllowedNodeGroupId", + "message": { + "target": "com.amazonaws.elasticache#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "ServerlessCacheAlreadyExistsFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "

A serverless cache with this name already exists.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.elasticache#ServerlessCacheConfiguration": { + "type": "structure", + "members": { + "ServerlessCacheName": { + "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

Either the ElastiCache for Redis supplied 4-digit id or a user supplied id for the\n node group these configuration values apply to.

" + "smithy.api#documentation": "

The identifier of a serverless cache.

" } }, - "PreferredAvailabilityZones": { - "target": "com.amazonaws.elasticache#AvailabilityZonesList", + "Engine": { + "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

A list of preferred availability zones for the nodes in this cluster.

" + "smithy.api#documentation": "

The engine that the serverless cache is configured with.

" + } + }, + "MajorEngineVersion": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The engine version number that the serverless cache is configured with.

" } } }, "traits": { - "smithy.api#documentation": "

A list of PreferredAvailabilityZones objects that specifies the\n configuration of a node group in the resharded cluster.

" + "smithy.api#documentation": "

The configuration settings for a specific serverless cache.

" } }, - "com.amazonaws.elasticache#ReshardingConfigurationList": { + "com.amazonaws.elasticache#ServerlessCacheList": { "type": "list", "member": { - "target": "com.amazonaws.elasticache#ReshardingConfiguration", - "traits": { - "smithy.api#xmlName": "ReshardingConfiguration" - } + "target": "com.amazonaws.elasticache#ServerlessCache" } }, - "com.amazonaws.elasticache#ReshardingStatus": { + "com.amazonaws.elasticache#ServerlessCacheNotFoundFault": { "type": "structure", "members": { - "SlotMigration": { - "target": "com.amazonaws.elasticache#SlotMigration", - "traits": { - "smithy.api#documentation": "

Represents the progress of an online resharding operation.

" - } + "message": { + "target": "com.amazonaws.elasticache#ExceptionMessage" } }, "traits": { - "smithy.api#documentation": "

The status of an online resharding operation.

" + "aws.protocols#awsQueryError": { + "code": "ServerlessCacheNotFoundFault", + "httpResponseCode": 404 + }, + "smithy.api#documentation": "

The serverless cache was not found or does not exist.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 } }, - "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngress": { - "type": "operation", - "input": { - "target": "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngressMessage" - }, - "output": { - "target": "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngressResult" - }, - "errors": [ - { - "target": "com.amazonaws.elasticache#AuthorizationNotFoundFault" - }, - { - "target": "com.amazonaws.elasticache#CacheSecurityGroupNotFoundFault" - }, - { - "target": "com.amazonaws.elasticache#InvalidCacheSecurityGroupStateFault" - }, - { - "target": "com.amazonaws.elasticache#InvalidParameterCombinationException" - }, - { - "target": "com.amazonaws.elasticache#InvalidParameterValueException" + "com.amazonaws.elasticache#ServerlessCacheQuotaForCustomerExceededFault": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.elasticache#ExceptionMessage" } - ], + }, "traits": { - "smithy.api#documentation": "

Revokes ingress from a cache security group. Use this operation to disallow access\n from an Amazon EC2 security group that had been previously authorized.

", - "smithy.api#examples": [ - { - "title": "DescribeCacheSecurityGroups", - "documentation": "Returns a list of cache security group descriptions. If a cache security group name is specified, the list contains only the description of that group.", - "input": { - "CacheSecurityGroupName": "my-sec-grp", - "EC2SecurityGroupName": "my-ec2-sec-grp", - "EC2SecurityGroupOwnerId": "1234567890" - } - } - ] + "aws.protocols#awsQueryError": { + "code": "ServerlessCacheQuotaForCustomerExceededFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "

The number of serverless caches exceeds the customer quota.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 } }, - "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngressMessage": { + "com.amazonaws.elasticache#ServerlessCacheSnapshot": { "type": "structure", "members": { - "CacheSecurityGroupName": { + "ServerlessCacheSnapshotName": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the cache security group to revoke ingress from.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The identifier of a serverless cache snapshot. Available for Redis only.

" } }, - "EC2SecurityGroupName": { + "ARN": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the Amazon EC2 security group to revoke access from.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a serverless cache snapshot. Available for Redis only.

" } }, - "EC2SecurityGroupOwnerId": { + "KmsKeyId": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Amazon account number of the Amazon EC2 security group owner. Note that this is\n not the same thing as an Amazon access key ID - you must provide a valid Amazon account\n number for this parameter.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the Amazon Web Services Key Management Service (KMS) key of a serverless cache snapshot. Available for Redis only.

" + } + }, + "SnapshotType": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The type of snapshot of serverless cache. Available for Redis only.

" + } + }, + "Status": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The current status of the serverless cache. Available for Redis only.

" + } + }, + "CreateTime": { + "target": "com.amazonaws.elasticache#TStamp", + "traits": { + "smithy.api#documentation": "

The date and time that the source serverless cache's metadata and cache data set was obtained for\n the snapshot. Available for Redis only.

" + } + }, + "ExpiryTime": { + "target": "com.amazonaws.elasticache#TStamp", + "traits": { + "smithy.api#documentation": "

The time that the serverless cache snapshot will expire. Available for Redis only.

" + } + }, + "BytesUsedForCache": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#documentation": "

The total size of a serverless cache snapshot, in bytes. Available for Redis only.

" + } + }, + "ServerlessCacheConfiguration": { + "target": "com.amazonaws.elasticache#ServerlessCacheConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration of the serverless cache, at the time the snapshot was taken. Available for Redis only.

" } } }, "traits": { - "smithy.api#documentation": "

Represents the input of a RevokeCacheSecurityGroupIngress\n operation.

", - "smithy.api#input": {} + "smithy.api#documentation": "

The resource representing a serverless cache snapshot. Available for Redis only.

" } }, - "com.amazonaws.elasticache#RevokeCacheSecurityGroupIngressResult": { + "com.amazonaws.elasticache#ServerlessCacheSnapshotAlreadyExistsFault": { "type": "structure", "members": { - "CacheSecurityGroup": { - "target": "com.amazonaws.elasticache#CacheSecurityGroup" + "message": { + "target": "com.amazonaws.elasticache#ExceptionMessage" } }, "traits": { - "smithy.api#output": {} + "aws.protocols#awsQueryError": { + "code": "ServerlessCacheSnapshotAlreadyExistsFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "

A serverless cache snapshot with this name already exists. Available for Redis only.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 } }, - "com.amazonaws.elasticache#SecurityGroupIdsList": { + "com.amazonaws.elasticache#ServerlessCacheSnapshotList": { "type": "list", "member": { - "target": "com.amazonaws.elasticache#String", + "target": "com.amazonaws.elasticache#ServerlessCacheSnapshot", "traits": { - "smithy.api#xmlName": "SecurityGroupId" + "smithy.api#xmlName": "ServerlessCacheSnapshot" } } }, - "com.amazonaws.elasticache#SecurityGroupMembership": { + "com.amazonaws.elasticache#ServerlessCacheSnapshotNotFoundFault": { "type": "structure", "members": { - "SecurityGroupId": { - "target": "com.amazonaws.elasticache#String", - "traits": { - "smithy.api#documentation": "

The identifier of the cache security group.

" - } - }, - "Status": { - "target": "com.amazonaws.elasticache#String", - "traits": { - "smithy.api#documentation": "

The status of the cache security group membership. The status changes whenever a cache\n security group is modified, or when the cache security groups assigned to a cluster are\n modified.

" - } + "message": { + "target": "com.amazonaws.elasticache#ExceptionMessage" } }, "traits": { - "smithy.api#documentation": "

Represents a single cache security group and its status.

" + "aws.protocols#awsQueryError": { + "code": "ServerlessCacheSnapshotNotFoundFault", + "httpResponseCode": 404 + }, + "smithy.api#documentation": "

This serverless cache snapshot could not be found or does not exist. Available for Redis only.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 } }, - "com.amazonaws.elasticache#SecurityGroupMembershipList": { - "type": "list", - "member": { - "target": "com.amazonaws.elasticache#SecurityGroupMembership" + "com.amazonaws.elasticache#ServerlessCacheSnapshotQuotaExceededFault": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.elasticache#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "ServerlessCacheSnapshotQuotaExceededFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "

The number of serverless cache snapshots exceeds the customer snapshot quota. Available for Redis only.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 } }, "com.amazonaws.elasticache#ServiceLinkedRoleNotFoundFault": { @@ -13483,7 +14773,7 @@ "CacheNodeType": { "target": "com.amazonaws.elasticache#String", "traits": { - "smithy.api#documentation": "

The name of the compute and memory capacity node type for the source cluster.

\n

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

\n \n

\n Additional node type info\n

\n " + "smithy.api#documentation": "

The name of the compute and memory capacity node type for the source cluster.

\n

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

\n \n

\n Additional node type info\n

\n " } }, "Engine": { @@ -13736,6 +15026,18 @@ "smithy.api#enumValue": "replication-group" } }, + "serverless_cache": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "serverless-cache" + } + }, + "serverless_cache_snapshot": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "serverless-cache-snapshot" + } + }, "user": { "target": "smithy.api#Unit", "traits": { @@ -13855,6 +15157,15 @@ } } }, + "com.amazonaws.elasticache#SubnetIdsList": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticache#String", + "traits": { + "smithy.api#xmlName": "SubnetId" + } + } + }, "com.amazonaws.elasticache#SubnetInUse": { "type": "structure", "members": { @@ -14189,6 +15500,12 @@ "target": "com.amazonaws.elasticache#String" } }, + "com.amazonaws.elasticache#UGServerlessCacheIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticache#String" + } + }, "com.amazonaws.elasticache#UnprocessedUpdateAction": { "type": "structure", "members": { @@ -14584,6 +15901,12 @@ "smithy.api#documentation": "

A list of replication groups that the user group can access.

" } }, + "ServerlessCaches": { + "target": "com.amazonaws.elasticache#UGServerlessCacheIdList", + "traits": { + "smithy.api#documentation": "

Indicates which serverless caches the specified user group is associated with. Available for Redis only.

" + } + }, "ARN": { "target": "com.amazonaws.elasticache#String", "traits": {