Skip to content

Commit d1038f0

Browse files
author
awstools
committed
feat(client-rds): Adds support in Aurora PostgreSQL serverless databases for express configuration based creation through WithExpressConfiguration in CreateDbCluster API, and for restoring clusters using RestoreDBClusterToPointInTime and RestoreDBClusterFromSnapshot APIs.
1 parent 09b1455 commit d1038f0

36 files changed

+671
-30
lines changed

clients/client-rds/src/commands/CreateDBClusterCommand.ts

Lines changed: 73 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export interface CreateDBClusterCommandInput extends CreateDBClusterMessage {}
2828
export interface CreateDBClusterCommandOutput extends CreateDBClusterResult, __MetadataBearer {}
2929

3030
/**
31-
* <p>Creates a new Amazon Aurora DB cluster or Multi-AZ DB cluster.</p> <p>If you create an Aurora DB cluster, the request creates an empty cluster. You must explicitly create the writer instance for your DB cluster using the <a href="https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html">CreateDBInstance</a> operation. If you create a Multi-AZ DB cluster, the request creates a writer and two reader DB instances for you, each in a different Availability Zone.</p> <p>You can use the <code>ReplicationSourceIdentifier</code> parameter to create an Amazon Aurora DB cluster as a read replica of another DB cluster or Amazon RDS for MySQL or PostgreSQL DB instance. For more information about Amazon Aurora, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html">What is Amazon Aurora?</a> in the <i>Amazon Aurora User Guide</i>.</p> <p>You can also use the <code>ReplicationSourceIdentifier</code> parameter to create a Multi-AZ DB cluster read replica with an RDS for MySQL or PostgreSQL DB instance as the source. For more information about Multi-AZ DB clusters, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html">Multi-AZ DB cluster deployments</a> in the <i>Amazon RDS User Guide</i>.</p>
31+
* <p>Creates a new Amazon Aurora DB cluster or Multi-AZ DB cluster.</p> <p>If you create an Aurora DB cluster, the request creates an empty cluster. You must explicitly create the writer instance for your DB cluster using the <a href="https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html">CreateDBInstance</a> operation. If you create a Multi-AZ DB cluster, the request creates a writer and two reader DB instances for you, each in a different Availability Zone.</p> <p>You can use the <code>ReplicationSourceIdentifier</code> parameter to create an Amazon Aurora DB cluster as a read replica of another DB cluster or Amazon RDS for MySQL or PostgreSQL DB instance. For more information about Amazon Aurora, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html">What is Amazon Aurora?</a> in the <i>Amazon Aurora User Guide</i>.</p> <p>You can also use the <code>ReplicationSourceIdentifier</code> parameter to create a Multi-AZ DB cluster read replica with an RDS for MySQL or PostgreSQL DB instance as the source. For more information about Multi-AZ DB clusters, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html">Multi-AZ DB cluster deployments</a> in the <i>Amazon RDS User Guide</i>.</p> <p>You can use the <code>WithExpressConfiguration</code> parameter to create an Aurora DB Cluster with express configuration and create cluster in seconds. Express configuration provides a cluster with a writer instance and feature specific values set to all other input parameters of this API. </p>
3232
* @example
3333
* Use a bare-bones client and the command you need to make an API call.
3434
* ```javascript
@@ -132,6 +132,7 @@ export interface CreateDBClusterCommandOutput extends CreateDBClusterResult, __M
132132
* },
133133
* ],
134134
* MasterUserAuthenticationType: "password" || "iam-db-auth",
135+
* WithExpressConfiguration: true || false,
135136
* };
136137
* const command = new CreateDBClusterCommand(input);
137138
* const response = await client.send(command);
@@ -329,6 +330,8 @@ export interface CreateDBClusterCommandOutput extends CreateDBClusterResult, __M
329330
* // ValidTill: new Date("TIMESTAMP"),
330331
* // },
331332
* // EngineLifecycleSupport: "STRING_VALUE",
333+
* // VPCNetworkingEnabled: true || false,
334+
* // InternetAccessGatewayEnabled: true || false,
332335
* // },
333336
* // };
334337
*
@@ -541,6 +544,75 @@ export interface CreateDBClusterCommandOutput extends CreateDBClusterResult, __M
541544
* *\/
542545
* ```
543546
*
547+
* @example To create a Aurora DB cluster with express configuration
548+
* ```javascript
549+
* // The following example creates a Aurora DB cluster with express configuration.
550+
* const input = {
551+
* DBClusterIdentifier: "sample-cluster",
552+
* Engine: "aurora-postgresql",
553+
* WithExpressConfiguration: true
554+
* };
555+
* const command = new CreateDBClusterCommand(input);
556+
* const response = await client.send(command);
557+
* /* response is
558+
* {
559+
* DBCluster: {
560+
* AllocatedStorage: 1,
561+
* AssociatedRoles: [],
562+
* AutoMinorVersionUpgrade: true,
563+
* AvailabilityZones: [
564+
* "us-east-1c",
565+
* "us-east-1a",
566+
* "us-east-1b"
567+
* ],
568+
* BackupRetentionPeriod: 7,
569+
* ClusterCreateTime: "2026-01-10T22:14:02Z",
570+
* CopyTagsToSnapshot: false,
571+
* CrossAccountClone: false,
572+
* DBClusterArn: "arn:aws:rds:us-east-1:654654253058:cluster:sample-cluster",
573+
* DBClusterIdentifier: "sample-cluster",
574+
* DBClusterMembers: [
575+
* {
576+
* DBClusterParameterGroupStatus: "in-sync",
577+
* DBInstanceIdentifier: "sample-cluster-instance-1",
578+
* IsClusterWriter: false,
579+
* PromotionTier: 1
580+
* }
581+
* ],
582+
* DBClusterParameterGroup: "default.aurora-postgresql17",
583+
* DatabaseInsightsMode: "standard",
584+
* DbClusterResourceId: "cluster-OWV7DRHS2W7R4LXZRYNXCHZST4",
585+
* DeletionProtection: false,
586+
* DomainMemberships: [],
587+
* Engine: "aurora-postgresql",
588+
* EngineLifecycleSupport: "open-source-rds-extended-support",
589+
* EngineMode: "provisioned",
590+
* EngineVersion: "17.7",
591+
* HttpEndpointEnabled: false,
592+
* IAMDatabaseAuthenticationEnabled: true,
593+
* LocalWriteForwardingStatus: "disabled",
594+
* MasterUsername: "postgres",
595+
* MultiAZ: false,
596+
* PerformanceInsightsEnabled: false,
597+
* Port: 5432,
598+
* PreferredBackupWindow: "06:15-06:45",
599+
* PreferredMaintenanceWindow: "sat:03:44-sat:04:14",
600+
* ReadReplicaIdentifiers: [],
601+
* ServerlessV2PlatformVersion: "3",
602+
* ServerlessV2ScalingConfiguration: {
603+
* MaxCapacity: 16.0,
604+
* MinCapacity: 0.0,
605+
* SecondsUntilAutoPause: 300
606+
* },
607+
* Status: "creating",
608+
* StorageEncrypted: false,
609+
* TagList: [],
610+
* VpcSecurityGroups: []
611+
* }
612+
* }
613+
* *\/
614+
* ```
615+
*
544616
* @public
545617
*/
546618
export class CreateDBClusterCommand extends $Command

clients/client-rds/src/commands/CreateDBInstanceCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -408,7 +408,7 @@ export interface CreateDBInstanceCommandOutput extends CreateDBInstanceResult, _
408408
* <p>The specified CIDR IP range or Amazon EC2 security group might not be authorized for the specified DB security group.</p> <p>Or, RDS might not be authorized to perform necessary actions using IAM on your behalf.</p>
409409
*
410410
* @throws {@link BackupPolicyNotFoundFault} (client fault)
411-
*
411+
* <p/>
412412
*
413413
* @throws {@link CertificateNotFoundFault} (client fault)
414414
* <p> <code>CertificateIdentifier</code> doesn't refer to an existing certificate.</p>

clients/client-rds/src/commands/DeleteDBClusterCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,8 @@ export interface DeleteDBClusterCommandOutput extends DeleteDBClusterResult, __M
238238
* // ValidTill: new Date("TIMESTAMP"),
239239
* // },
240240
* // EngineLifecycleSupport: "STRING_VALUE",
241+
* // VPCNetworkingEnabled: true || false,
242+
* // InternetAccessGatewayEnabled: true || false,
241243
* // },
242244
* // };
243245
*

clients/client-rds/src/commands/DescribeDBClustersCommand.ts

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,6 +248,8 @@ export interface DescribeDBClustersCommandOutput extends DBClusterMessage, __Met
248248
* // ValidTill: new Date("TIMESTAMP"),
249249
* // },
250250
* // EngineLifecycleSupport: "STRING_VALUE",
251+
* // VPCNetworkingEnabled: true || false,
252+
* // InternetAccessGatewayEnabled: true || false,
251253
* // },
252254
* // ],
253255
* // };
@@ -364,6 +366,73 @@ export interface DescribeDBClustersCommandOutput extends DBClusterMessage, __Met
364366
* *\/
365367
* ```
366368
*
369+
* @example To describe an Aurora DB cluster without VPC networking
370+
* ```javascript
371+
* // The following example retrieves the details of the specified Aurora PostgreSQL DB cluster configured without VPC networking and with internet access gateway enabled. IAM database authentication is required when VPC networking is disabled and internet access gateway is enabled.
372+
* const input = {
373+
* DBClusterIdentifier: "my-vpcless-cluster"
374+
* };
375+
* const command = new DescribeDBClustersCommand(input);
376+
* const response = await client.send(command);
377+
* /* response is
378+
* {
379+
* DBClusters: [
380+
* {
381+
* ActivityStreamStatus: "stopped",
382+
* AllocatedStorage: 1,
383+
* AssociatedRoles: [],
384+
* AutoMinorVersionUpgrade: true,
385+
* AvailabilityZones: [
386+
* "us-east-1d",
387+
* "us-east-1a",
388+
* "us-east-1c"
389+
* ],
390+
* BackupRetentionPeriod: 1,
391+
* ClusterCreateTime: "2026-03-09T20:53:24.054Z",
392+
* CopyTagsToSnapshot: false,
393+
* CrossAccountClone: false,
394+
* DBClusterArn: "arn:aws:rds:us-east-1:123456789012:cluster:my-vpcless-cluster",
395+
* DBClusterIdentifier: "my-vpcless-cluster",
396+
* DBClusterMembers: [],
397+
* DBClusterParameterGroup: "default.aurora-postgresql17",
398+
* DatabaseInsightsMode: "standard",
399+
* DbClusterResourceId: "cluster-AHX35HFI2YV26F3XVXVVO3MEHU",
400+
* DeletionProtection: false,
401+
* DomainMemberships: [],
402+
* EarliestRestorableTime: "2026-03-09T20:53:39.652Z",
403+
* Engine: "aurora-postgresql",
404+
* EngineLifecycleSupport: "open-source-rds-extended-support",
405+
* EngineMode: "provisioned",
406+
* EngineVersion: "17.4",
407+
* HttpEndpointEnabled: false,
408+
* IAMDatabaseAuthenticationEnabled: true,
409+
* InternetAccessGatewayEnabled: true,
410+
* LatestRestorableTime: "2026-03-09T20:53:39.652Z",
411+
* LocalWriteForwardingStatus: "disabled",
412+
* MasterUsername: "postgres",
413+
* MultiAZ: false,
414+
* Port: 5432,
415+
* PreferredBackupWindow: "07:13-07:43",
416+
* PreferredMaintenanceWindow: "mon:07:55-mon:08:25",
417+
* ReadReplicaIdentifiers: [],
418+
* ServerlessV2PlatformVersion: "3",
419+
* ServerlessV2ScalingConfiguration: {
420+
* MaxCapacity: 128.0,
421+
* MinCapacity: 1.0
422+
* },
423+
* Status: "available",
424+
* StorageEncrypted: false,
425+
* StorageEncryptionType: "sse-rds",
426+
* TagList: [],
427+
* UpgradeRolloutOrder: "second",
428+
* VPCNetworkingEnabled: false,
429+
* VpcSecurityGroups: []
430+
* }
431+
* ]
432+
* }
433+
* *\/
434+
* ```
435+
*
367436
* @public
368437
*/
369438
export class DescribeDBClustersCommand extends $Command

clients/client-rds/src/commands/FailoverDBClusterCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,8 @@ export interface FailoverDBClusterCommandOutput extends FailoverDBClusterResult,
236236
* // ValidTill: new Date("TIMESTAMP"),
237237
* // },
238238
* // EngineLifecycleSupport: "STRING_VALUE",
239+
* // VPCNetworkingEnabled: true || false,
240+
* // InternetAccessGatewayEnabled: true || false,
239241
* // },
240242
* // };
241243
*

clients/client-rds/src/commands/ModifyDBClusterCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -301,6 +301,8 @@ export interface ModifyDBClusterCommandOutput extends ModifyDBClusterResult, __M
301301
* // ValidTill: new Date("TIMESTAMP"),
302302
* // },
303303
* // EngineLifecycleSupport: "STRING_VALUE",
304+
* // VPCNetworkingEnabled: true || false,
305+
* // InternetAccessGatewayEnabled: true || false,
304306
* // },
305307
* // };
306308
*

clients/client-rds/src/commands/ModifyDBInstanceCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -406,7 +406,7 @@ export interface ModifyDBInstanceCommandOutput extends ModifyDBInstanceResult, _
406406
* <p>The specified CIDR IP range or Amazon EC2 security group might not be authorized for the specified DB security group.</p> <p>Or, RDS might not be authorized to perform necessary actions using IAM on your behalf.</p>
407407
*
408408
* @throws {@link BackupPolicyNotFoundFault} (client fault)
409-
*
409+
* <p/>
410410
*
411411
* @throws {@link CertificateNotFoundFault} (client fault)
412412
* <p> <code>CertificateIdentifier</code> doesn't refer to an existing certificate.</p>

clients/client-rds/src/commands/PromoteReadReplicaDBClusterCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,8 @@ export interface PromoteReadReplicaDBClusterCommandOutput extends PromoteReadRep
235235
* // ValidTill: new Date("TIMESTAMP"),
236236
* // },
237237
* // EngineLifecycleSupport: "STRING_VALUE",
238+
* // VPCNetworkingEnabled: true || false,
239+
* // InternetAccessGatewayEnabled: true || false,
238240
* // },
239241
* // };
240242
*

clients/client-rds/src/commands/RebootDBClusterCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,8 @@ export interface RebootDBClusterCommandOutput extends RebootDBClusterResult, __M
235235
* // ValidTill: new Date("TIMESTAMP"),
236236
* // },
237237
* // EngineLifecycleSupport: "STRING_VALUE",
238+
* // VPCNetworkingEnabled: true || false,
239+
* // InternetAccessGatewayEnabled: true || false,
238240
* // },
239241
* // };
240242
*

clients/client-rds/src/commands/RestoreDBClusterFromS3Command.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -297,6 +297,8 @@ export interface RestoreDBClusterFromS3CommandOutput extends RestoreDBClusterFro
297297
* // ValidTill: new Date("TIMESTAMP"),
298298
* // },
299299
* // EngineLifecycleSupport: "STRING_VALUE",
300+
* // VPCNetworkingEnabled: true || false,
301+
* // InternetAccessGatewayEnabled: true || false,
300302
* // },
301303
* // };
302304
*

0 commit comments

Comments
 (0)