{ "$schema": "https://json-structure.org/meta/core/v0/#", "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-documentdb/refs/heads/main/json-structure/amazon-documentdb-dbcluster-structure.json", "name": "Amazon DocumentDB DBCluster", "description": "Schema representing an Amazon DocumentDB database cluster, which is a managed MongoDB-compatible document database cluster consisting of one or more instances connected to a shared storage volume.", "type": "object", "properties": { "DBClusterIdentifier": { "type": "string", "description": "The user-supplied DB cluster identifier. This identifier is the unique key that identifies a DB cluster.", "minLength": 1, "maxLength": 63, "pattern": "^[a-zA-Z][a-zA-Z0-9-]*$" }, "DBClusterArn": { "type": "string", "description": "The Amazon Resource Name (ARN) for the DB cluster.", "pattern": "^arn:aws[a-zA-Z-]*:rds:[a-z0-9-]+:[0-9]{12}:cluster:.+$" }, "Status": { "type": "string", "description": "Specifies the current state of this DB cluster.", "enum": [ "available", "backing-up", "creating", "deleting", "failing-over", "maintenance", "migrating", "modifying", "renaming", "resetting-master-credentials", "upgrading" ] }, "Engine": { "type": "string", "description": "The name of the database engine to be used for this DB cluster.", "const": "docdb" }, "EngineVersion": { "type": "string", "description": "Indicates the database engine version." }, "Endpoint": { "type": "string", "format": "hostname", "description": "The connection endpoint for the primary instance of the DB cluster." }, "ReaderEndpoint": { "type": "string", "format": "hostname", "description": "The reader endpoint for the DB cluster. The reader endpoint load-balances connections across the read replicas." }, "Port": { "type": "int32", "description": "Specifies the port that the database engine is listening on.", "default": 27017 }, "MasterUsername": { "type": "string", "description": "Contains the master username for the DB cluster." }, "DBSubnetGroup": { "type": "string", "description": "Specifies information on the subnet group associated with the DB cluster." }, "StorageEncrypted": { "type": "boolean", "description": "Specifies whether the DB cluster is encrypted.", "default": false }, "KmsKeyId": { "type": "string", "description": "If StorageEncrypted is true, the AWS KMS key identifier for the encrypted DB cluster." }, "BackupRetentionPeriod": { "type": "int32", "description": "Specifies the number of days for which automatic DB snapshots are retained.", "minimum": 1, "maximum": 35, "default": 1 }, "PreferredBackupWindow": { "type": "string", "description": "Specifies the daily time range during which automated backups are created.", "pattern": "^([01]\\d|2[0-3]):[0-5]\\d-([01]\\d|2[0-3]):[0-5]\\d$" }, "PreferredMaintenanceWindow": { "type": "string", "description": "Specifies the weekly time range during which system maintenance can occur." }, "ClusterCreateTime": { "type": "datetime", "description": "Specifies the time when the DB cluster was created, in Universal Coordinated Time (UTC)." }, "DBClusterMembers": { "type": "array", "description": "Provides the list of instances that make up the DB cluster.", "items": { "type": "object", "properties": { "DBInstanceIdentifier": { "type": "string", "description": "Specifies the instance identifier for this member of the DB cluster." }, "IsClusterWriter": { "type": "boolean", "description": "A value that is true if the cluster member is the primary instance for the DB cluster." }, "DBClusterParameterGroupStatus": { "type": "string", "description": "Specifies the status of the DB cluster parameter group for this member." }, "PromotionTier": { "type": "int32", "description": "A value that specifies the order in which a read replica is promoted to the primary instance.", "minimum": 0, "maximum": 15 } } } }, "VpcSecurityGroups": { "type": "array", "description": "Provides a list of VPC security groups that the DB cluster belongs to.", "items": { "type": "object", "properties": { "VpcSecurityGroupId": { "type": "string" }, "Status": { "type": "string" } } } }, "DeletionProtection": { "type": "boolean", "description": "Specifies whether this cluster can be deleted. If DeletionProtection is enabled, the cluster cannot be deleted unless it is modified and DeletionProtection is disabled.", "default": false }, "EnabledCloudwatchLogsExports": { "type": "array", "description": "A list of log types that this DB cluster is configured to export to Amazon CloudWatch Logs.", "items": { "type": "string", "enum": [ "audit", "profiler" ] } } }, "required": [ "DBClusterIdentifier", "Engine" ] }