Amazon MemoryDB Clusters API

The Clusters API from Amazon MemoryDB — 1 operation(s) for clusters.

Operations 5

POST /#BatchUpdateCluster Batch Update Cluster #
POST /#CreateCluster Create Cluster #
POST /#DeleteCluster Delete Cluster #
POST /#DescribeClusters Describe Clusters #
POST /#UpdateCluster Update Cluster #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-memorydb:amazon-memorydb-clusters-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-memorydb-clusters-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amazon MemoryDB Clusters API
  version: '2021-01-01'
  description: Generated from AWS's published Smithy model for Amazon MemoryDB. 5 operation(s).
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  license:
    name: Apache 2.0
    identifier: Apache-2.0
    url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://memory-db.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /#BatchUpdateCluster:
    post:
      operationId: BatchUpdateCluster
      summary: Batch Update Cluster
      description: Apply the service update to a list of clusters supplied. For more information on service updates and applying
        them, see Applying the service updates.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/BatchUpdateClusterResponse'
        '400':
          description: InvalidParameterValueException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidParameterValueException'
        '404':
          description: ServiceUpdateNotFoundFault
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ServiceUpdateNotFoundFault'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonMemoryDB.BatchUpdateCluster
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/BatchUpdateClusterRequest'
      tags:
      - Clusters
  /#CreateCluster:
    post:
      operationId: CreateCluster
      summary: Create Cluster
      description: Creates a cluster. All nodes in the cluster run the same protocol-compliant engine software.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/CreateClusterResponse'
        '404':
          description: ACLNotFoundFault; MultiRegionClusterNotFoundFault; ParameterGroupNotFoundFault; SubnetGroupNotFoundFault
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ACLNotFoundFault'
        '400':
          description: ClusterAlreadyExistsFault; ClusterQuotaForCustomerExceededFault; InsufficientClusterCapacityFault;
            InvalidACLStateFault; InvalidMultiRegionClusterStateFault; InvalidParameterCombinationException; InvalidParameterValueException;
            InvalidVPCNetworkStateFault; NodeQuotaForClusterExceededFault; NodeQuotaForCustomerExceededFault; ServiceLinkedRoleNotFoundFault;
            ShardsPerClusterQuotaExceededFault; TagQuotaPerResourceExceeded
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ClusterAlreadyExistsFault'
        '408':
          description: InvalidCredentialsException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidCredentialsException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonMemoryDB.CreateCluster
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/CreateClusterRequest'
      tags:
      - Clusters
  /#DeleteCluster:
    post:
      operationId: DeleteCluster
      summary: Delete Cluster
      description: Deletes a cluster. It also deletes all associated nodes and node endpoints. CreateSnapshot permission is
        required to create a final snapshot. Without this permission, the API call will fail with an Access Denied exception.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/DeleteClusterResponse'
        '404':
          description: ClusterNotFoundFault
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ClusterNotFoundFault'
        '400':
          description: InvalidClusterStateFault; InvalidParameterCombinationException; InvalidParameterValueException; ServiceLinkedRoleNotFoundFault;
            SnapshotAlreadyExistsFault
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidClusterStateFault'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonMemoryDB.DeleteCluster
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/DeleteClusterRequest'
      tags:
      - Clusters
  /#DescribeClusters:
    post:
      operationId: DescribeClusters
      summary: Describe Clusters
      description: Returns information about all provisioned clusters if no cluster identifier is specified, or about a specific
        cluster if a cluster name is supplied.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/DescribeClustersResponse'
        '404':
          description: ClusterNotFoundFault
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ClusterNotFoundFault'
        '400':
          description: InvalidParameterCombinationException; InvalidParameterValueException; ServiceLinkedRoleNotFoundFault
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidParameterCombinationException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonMemoryDB.DescribeClusters
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/DescribeClustersRequest'
      tags:
      - Clusters
  /#UpdateCluster:
    post:
      operationId: UpdateCluster
      summary: Update Cluster
      description: Modifies the settings for a cluster. You can use this operation to change one or more cluster configuration
        settings by specifying the settings and the new values.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/UpdateClusterResponse'
        '404':
          description: ACLNotFoundFault; ClusterNotFoundFault; ParameterGroupNotFoundFault
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ACLNotFoundFault'
        '400':
          description: ClusterQuotaForCustomerExceededFault; InvalidACLStateFault; InvalidClusterStateFault; InvalidKMSKeyFault;
            InvalidNodeStateFault; InvalidParameterCombinationException; InvalidParameterValueException; InvalidVPCNetworkStateFault;
            NodeQuotaForClusterExceededFault; NodeQuotaForCustomerExceededFault; NoOperationFault; ServiceLinkedRoleNotFoundFault;
            ShardsPerClusterQuotaExceededFault
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ClusterQuotaForCustomerExceededFault'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonMemoryDB.UpdateCluster
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/UpdateClusterRequest'
      tags:
      - Clusters
components:
  securitySchemes:
    sigv4:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
        request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
      x-aws-sigv4:
        signingName: memorydb
  schemas:
    ACLNotFoundFault:
      type: object
      properties:
        message:
          type: string
    ACLsUpdateStatus:
      type: object
      properties:
        ACLToApply:
          type: string
          description: A list of ACLs pending to be applied.
    BatchUpdateClusterRequest:
      type: object
      properties:
        ClusterNames:
          type: array
          items:
            type: string
          description: The cluster names to apply the updates.
        ServiceUpdate:
          $ref: '#/components/schemas/ServiceUpdateRequest'
      required:
      - ClusterNames
    BatchUpdateClusterResponse:
      type: object
      properties:
        ProcessedClusters:
          type: array
          items:
            $ref: '#/components/schemas/Cluster'
          description: The list of clusters that have been updated.
        UnprocessedClusters:
          type: array
          items:
            $ref: '#/components/schemas/UnprocessedCluster'
          description: The list of clusters where updates have not been applied.
    Cluster:
      type: object
      properties:
        Name:
          type: string
          description: The user-supplied name of the cluster. This identifier is a unique key that identifies a cluster.
        Description:
          type: string
          description: A description of the cluster
        Status:
          type: string
          description: The status of the cluster. For example, Available, Updating, Creating.
        PendingUpdates:
          $ref: '#/components/schemas/ClusterPendingUpdates'
        MultiRegionClusterName:
          type: string
          description: The name of the multi-Region cluster that this cluster belongs to.
        NumberOfShards:
          type: integer
          description: The number of shards in the cluster
        Shards:
          type: array
          items:
            $ref: '#/components/schemas/Shard'
          description: A list of shards that are members of the cluster.
        AvailabilityMode:
          type: string
          enum:
          - singleaz
          - multiaz
          description: Indicates if the cluster has a Multi-AZ configuration (multiaz) or not (singleaz).
        ClusterEndpoint:
          $ref: '#/components/schemas/Endpoint'
        NodeType:
          type: string
          description: The cluster's node type
        Engine:
          type: string
          description: The name of the engine used by the cluster.
        EngineVersion:
          type: string
          description: The Redis OSS engine version used by the cluster
        EnginePatchVersion:
          type: string
          description: The Redis OSS engine patch version used by the cluster
        ParameterGroupName:
          type: string
          description: The name of the parameter group used by the cluster
        ParameterGroupStatus:
          type: string
          description: The status of the parameter group used by the cluster, for example 'active' or 'applying'.
        SecurityGroups:
          type: array
          items:
            $ref: '#/components/schemas/SecurityGroupMembership'
          description: A list of security groups used by the cluster
        SubnetGroupName:
          type: string
          description: The name of the subnet group used by the cluster
        TLSEnabled:
          type: boolean
          description: A flag to indicate if In-transit encryption is enabled
        KmsKeyId:
          type: string
          description: The ID of the KMS key used to encrypt the cluster
        ARN:
          type: string
          description: The Amazon Resource Name (ARN) of the cluster.
        SnsTopicArn:
          type: string
          description: The Amazon Resource Name (ARN) of the SNS notification topic
        SnsTopicStatus:
          type: string
          description: The SNS topic must be in Active status to receive notifications
        SnapshotRetentionLimit:
          type: integer
          description: The number of days for which MemoryDB retains automatic snapshots before deleting them. For example,
            if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.
        MaintenanceWindow:
          type: string
          description: Specifies the weekly time range during which maintenance on the cluster is performed. It is specified
            as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute
            period.
        SnapshotWindow:
          type: string
          description: 'The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard.
            Example: 05:00-09:00 If you do not specify this parameter, MemoryDB automatically chooses an appropriate time
            range.'
        ACLName:
          type: string
          description: The name of the Access Control List associated with this cluster.
        AutoMinorVersionUpgrade:
          type: boolean
          description: When set to true, the cluster will automatically receive minor engine version upgrades after launch.
        DataTiering:
          type: string
          enum:
          - 'true'
          - 'false'
          description: Enables data tiering. Data tiering is only supported for clusters using the r6gd node type. This parameter
            must be set when using r6gd nodes. For more information, see Data tiering.
        NetworkType:
          type: string
          enum:
          - ipv4
          - ipv6
          - dual_stack
          description: The IP address type for the cluster. Returns 'ipv4' for IPv4 only, 'ipv6' for IPv6 only, or 'dual-stack'
            if the cluster supports both IPv4 and IPv6 addressing.
        IpDiscovery:
          type: string
          enum:
          - ipv4
          - ipv6
          description: The mechanism that the cluster uses to discover IP addresses. Returns 'ipv4' when DNS endpoints resolve
            to IPv4 addresses, or 'ipv6' when DNS endpoints resolve to IPv6 addresses.
    ClusterAlreadyExistsFault:
      type: object
      properties:
        message:
          type: string
    ClusterNotFoundFault:
      type: object
      properties:
        message:
          type: string
    ClusterPendingUpdates:
      type: object
      properties:
        Resharding:
          $ref: '#/components/schemas/ReshardingStatus'
        ACLs:
          $ref: '#/components/schemas/ACLsUpdateStatus'
        ServiceUpdates:
          type: array
          items:
            $ref: '#/components/schemas/PendingModifiedServiceUpdate'
          description: A list of service updates being applied to the cluster
    ClusterQuotaForCustomerExceededFault:
      type: object
      properties:
        message:
          type: string
    CreateClusterRequest:
      type: object
      properties:
        ClusterName:
          type: string
          description: The name of the cluster. This value must be unique as it also serves as the cluster identifier.
        NodeType:
          type: string
          description: The compute and memory capacity of the nodes in the cluster.
        MultiRegionClusterName:
          type: string
          description: The name of the multi-Region cluster to be created.
        ParameterGroupName:
          type: string
          description: The name of the parameter group associated with the cluster.
        Description:
          type: string
          description: An optional description of the cluster.
        NumShards:
          type: integer
          description: The number of shards the cluster will contain. The default value is 1.
        NumReplicasPerShard:
          type: integer
          description: The number of replicas to apply to each shard. The default value is 1. The maximum is 5.
        SubnetGroupName:
          type: string
          description: The name of the subnet group to be used for the cluster.
        SecurityGroupIds:
          type: array
          items:
            type: string
          description: A list of security group names to associate with this cluster.
        MaintenanceWindow:
          type: string
          description: 'Specifies the weekly time range during which maintenance on the cluster is performed. It is specified
            as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute
            period. Valid values for ddd are: sun mon tue wed thu fri sat Example: sun:23:00-mon:01:30'
        Port:
          type: integer
          description: The port number on which each of the nodes accepts connections.
        SnsTopicArn:
          type: string
          description: The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications
            are sent.
        TLSEnabled:
          type: boolean
          description: A flag to enable in-transit encryption on the cluster.
        KmsKeyId:
          type: string
          description: The ID of the KMS key used to encrypt the cluster.
        SnapshotArns:
          type: array
          items:
            type: string
          description: A list of Amazon Resource Names (ARN) that uniquely identify the RDB snapshot files stored in Amazon
            S3. The snapshot files are used to populate the new cluster. The Amazon S3 object name in the ARN cannot contain
            any commas.
        SnapshotName:
          type: string
          description: The name of a snapshot from which to restore data into the new cluster. The snapshot status changes
            to restoring while the new cluster is being created.
        SnapshotRetentionLimit:
          type: integer
          description: The number of days for which MemoryDB retains automatic snapshots before deleting them. For example,
            if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.
        Tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: 'A list of tags to be added to this resource. Tags are comma-separated key,value pairs (e.g. Key=myKey,
            Value=myKeyValue. You can include multiple tags as shown following: Key=myKey, Value=myKeyValue Key=mySecondKey,
            Value=mySecondKeyValue.'
        SnapshotWindow:
          type: string
          description: 'The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard.
            Example: 05:00-09:00 If you do not specify this parameter, MemoryDB automatically chooses an appropriate time
            range.'
        ACLName:
          type: string
          description: The name of the Access Control List to associate with the cluster.
        Engine:
          type: string
          description: The name of the engine to be used for the cluster.
        EngineVersion:
          type: string
          description: The version number of the Redis OSS engine to be used for the cluster.
        AutoMinorVersionUpgrade:
          type: boolean
          description: When set to true, the cluster will automatically receive minor engine version upgrades after launch.
        DataTiering:
          type: boolean
          description: Enables data tiering. Data tiering is only supported for clusters using the r6gd node type. This parameter
            must be set when using r6gd nodes. For more information, see Data tiering.
        NetworkType:
          type: string
          enum:
          - ipv4
          - ipv6
          - dual_stack
          description: Specifies the IP address type for the cluster. Valid values are 'ipv4', 'ipv6', or 'dual_stack'. When
            set to 'ipv4', the cluster will only be accessible via IPv4 addresses. When set to 'ipv6', the cluster will only
            be accessible via IPv6 addresses. When set to 'dual_stack', the cluster will be accessible via both IPv4 and IPv6
            addresses. If not specified, the default is 'ipv4'.
        IpDiscovery:
          type: string
          enum:
          - ipv4
          - ipv6
          description: The mechanism for discovering IP addresses for the cluster discovery protocol. Valid values are 'ipv4'
            or 'ipv6'. When set to 'ipv4', cluster discovery functions such as cluster slots, cluster shards, and cluster
            nodes return IPv4 addresses for cluster nodes. When set to 'ipv6', the cluster discovery functions return IPv6
            addresses for cluster nodes. The value must be compatible with the NetworkType parameter. If not specified, the
            default is 'ipv4'.
      required:
      - ClusterName
      - NodeType
      - ACLName
    CreateClusterResponse:
      type: object
      properties:
        Cluster:
          $ref: '#/components/schemas/Cluster'
    DeleteClusterRequest:
      type: object
      properties:
        ClusterName:
          type: string
          description: The name of the cluster to be deleted
        MultiRegionClusterName:
          type: string
          description: The name of the multi-Region cluster to be deleted.
        FinalSnapshotName:
          type: string
          description: The user-supplied name of a final cluster snapshot. This is the unique name that identifies the snapshot.
            MemoryDB creates the snapshot, and then deletes the cluster immediately afterward.
      required:
      - ClusterName
    DeleteClusterResponse:
      type: object
      properties:
        Cluster:
          $ref: '#/components/schemas/Cluster'
    DescribeClustersRequest:
      type: object
      properties:
        ClusterName:
          type: string
          description: The name of the cluster.
        MaxResults:
          type: integer
          description: The maximum number of records to include in the response. If more records exist than the specified
            MaxResults value, a token is included in the response so that the remaining results can be retrieved.
        NextToken:
          type: string
          description: An optional argument to pass in case the total number of records exceeds the value of MaxResults. If
            nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for
            each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.
        ShowShardDetails:
          type: boolean
          description: An optional flag that can be included in the request to retrieve information about the individual shard(s).
    DescribeClustersResponse:
      type: object
      properties:
        NextToken:
          type: string
          description: An optional argument to pass in case the total number of records exceeds the value of MaxResults. If
            nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for
            each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.
        Clusters:
          type: array
          items:
            $ref: '#/components/schemas/Cluster'
          description: A list of clusters
    Endpoint:
      type: object
      properties:
        Address:
          type: string
          description: The DNS hostname of the node.
        Port:
          type: integer
          description: The port number that the engine is listening on.
    InvalidClusterStateFault:
      type: object
      properties:
        message:
          type: string
    InvalidCredentialsException:
      type: object
      properties:
        message:
          type: string
    InvalidParameterCombinationException:
      type: object
      properties:
        message:
          type: string
    InvalidParameterValueException:
      type: object
      properties:
        message:
          type: string
    Node:
      type: object
      properties:
        Name:
          type: string
          description: The node identifier. A node name is a numeric identifier (0001, 0002, etc.). The combination of cluster
            name, shard name and node name uniquely identifies every node used in a customer's Amazon account.
        Status:
          type: string
          description: The status of the service update on the node
        AvailabilityZone:
          type: string
          description: The Availability Zone in which the node resides
        CreateTime:
          type: string
          format: date-time
          description: The date and time when the node was created.
        Endpoint:
          $ref: '#/components/schemas/Endpoint'
    PendingModifiedServiceUpdate:
      type: object
      properties:
        ServiceUpdateName:
          type: string
          description: The unique ID of the service update
        Status:
          type: string
          enum:
          - available
          - in-progress
          - complete
          - scheduled
          description: The status of the service update
    ReplicaConfigurationRequest:
      type: object
      properties:
        ReplicaCount:
          type: integer
          description: The number of replicas to scale up or down to
    ReshardingStatus:
      type: object
      properties:
        SlotMigration:
          $ref: '#/components/schemas/SlotMigration'
    SecurityGroupMembership:
      type: object
      properties:
        SecurityGroupId:
          type: string
          description: The identifier of the security group.
        Status:
          type: string
          description: The status of the security group membership. The status changes whenever a security group is modified,
            or when the security groups assigned to a cluster are modified.
    ServiceUpdateNotFoundFault:
      type: object
      properties:
        message:
          type: string
    ServiceUpdateRequest:
      type: object
      properties:
        ServiceUpdateNameToApply:
          type: string
          description: The unique ID of the service update
    Shard:
      type: object
      properties:
        Name:
          type: string
          description: The name of the shard
        Status:
          type: string
          description: The current state of this replication group - creating, available, modifying, deleting.
        Slots:
          type: string
          description: The keyspace for this shard.
        Nodes:
          type: array
          items:
            $ref: '#/components/schemas/Node'
          description: A list containing information about individual nodes within the shard
        NumberOfNodes:
          type: integer
          description: The number of nodes in the shard
    ShardConfigurationRequest:
      type: object
      properties:
        ShardCount:
          type: integer
          description: The number of shards in the cluster
    SlotMigration:
      type: object
      properties:
        ProgressPercentage:
          type: number
          description: The percentage of the slot migration that is complete.
    Tag:
      type: object
      properties:
        Key:
          type: string
          description: The key for the tag. May not be null.
        Value:
          type: string
          description: The tag's value. May be null.
    UnprocessedCluster:
      type: object
      properties:
        ClusterName:
          type: string
          description: The name of the cluster
        ErrorType:
          type: string
          description: The error type associated with the update failure
        ErrorMessage:
          type: string
          description: The error message associated with the update failure
    UpdateClusterRequest:
      type: object
      properties:
        ClusterName:
          type: string
          description: The name of the cluster to update.
        Description:
          type: string
          description: The description of the cluster to update.
        SecurityGroupIds:
          type: array
          items:
            type: string
          description: The SecurityGroupIds to update.
        MaintenanceWindow:
          type: string
          description: 'Specifies the weekly time range during which maintenance on the cluster is performed. It is specified
            as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute
            period. Valid values for ddd are: sun mon tue wed thu fri sat Example: sun:23:00-mon:01:30'
        SnsTopicArn:
          type: string
          description: The SNS topic ARN to update.
        SnsTopicStatus:
          type: string
          description: The status of the Amazon SNS notification topic. Notifications are sent only if the status is active.
        ParameterGroupName:
          type: string
          description: The name of the parameter group to update.
        SnapshotWindow:
          type: string
          description: The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your cluster.
        SnapshotRetentionLimit:
          type: integer
          description: The number of days for which MemoryDB retains automatic cluster snapshots before deleting them. For
            example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before
            being deleted.
        NodeType:
          type: string
          description: A valid node type that you want to scale this cluster up or down to.
        Engine:
          type: string
          description: The name of the engine to be used for the cluster.
        EngineVersion:
          type: string
          description: The upgraded version of the engine to be run on the nodes. You can upgrade to a newer engine version,
            but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must
            delete the existing cluster and create it anew with the earlier engine version.
        ReplicaConfiguration:
          $ref: '#/components/schemas/ReplicaConfigurationRequest'
        ShardConfiguration:
          $ref: '#/components/schemas/ShardConfigurationRequest'
        ACLName:
          type: string
          description: The Access Control List that is associated with the cluster.
        IpDiscovery:
          type: string
          enum:
          - ipv4
          - ipv6
          description: The mechanism for discovering IP addresses for the cluster discovery protocol. Valid values are 'ipv4'
            or 'ipv6'. When set to 'ipv4', cluster discovery functions such as cluster slots, cluster shards, and cluster
            nodes will return IPv4 addresses for cluster nodes. When set to 'ipv6', the cluster discovery functions return
            IPv6 addresses for cluster nodes. The value must be compatible with the NetworkType parameter. If not specified,
            the default is 'ipv4'.
      required:
      - ClusterName
    UpdateClusterResponse:
      type: object
      properties:
        Cluster:
          $ref: '#/components/schemas/Cluster'
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/memorydb/service/2021-01-01/memorydb-2021-01-01.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)