@googleapis/sqladmin 24.0.0 → 26.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/v1beta4.ts CHANGED
@@ -113,6 +113,7 @@ export namespace sqladmin_v1beta4 {
113
113
  export class Sqladmin {
114
114
  context: APIRequestContext;
115
115
  backupRuns: Resource$Backupruns;
116
+ backups: Resource$Backups;
116
117
  connect: Resource$Connect;
117
118
  databases: Resource$Databases;
118
119
  flags: Resource$Flags;
@@ -130,6 +131,7 @@ export namespace sqladmin_v1beta4 {
130
131
  };
131
132
 
132
133
  this.backupRuns = new Resource$Backupruns(this.context);
134
+ this.backups = new Resource$Backups(this.context);
133
135
  this.connect = new Resource$Connect(this.context);
134
136
  this.databases = new Resource$Databases(this.context);
135
137
  this.flags = new Resource$Flags(this.context);
@@ -227,6 +229,103 @@ export namespace sqladmin_v1beta4 {
227
229
  */
228
230
  name?: string | null;
229
231
  }
232
+ /**
233
+ * A backup resource.
234
+ */
235
+ export interface Schema$Backup {
236
+ /**
237
+ * Output only. This output contains the following values: start_time: All database writes up to this time are available. end_time: Any database writes after this time aren't available.
238
+ */
239
+ backupInterval?: Schema$Interval;
240
+ /**
241
+ * Output only. Specifies the kind of backup, PHYSICAL or DEFAULT_SNAPSHOT.
242
+ */
243
+ backupKind?: string | null;
244
+ /**
245
+ * Output only. The mapping to backup run resource used for IAM validations.
246
+ */
247
+ backupRun?: string | null;
248
+ /**
249
+ * Output only. The database version of the instance of when this backup was made.
250
+ */
251
+ databaseVersion?: string | null;
252
+ /**
253
+ * The description of this backup.
254
+ */
255
+ description?: string | null;
256
+ /**
257
+ * Output only. Information about why the backup operation fails (for example, when the backup state fails).
258
+ */
259
+ error?: Schema$OperationError;
260
+ /**
261
+ * Backup expiration time. A UTC timestamp of when this resource expired.
262
+ */
263
+ expiryTime?: string | null;
264
+ /**
265
+ * The name of the database instance.
266
+ */
267
+ instance?: string | null;
268
+ /**
269
+ * Optional. Output only. Timestamp in UTC of when the instance associated with this backup is deleted.
270
+ */
271
+ instanceDeletionTime?: string | null;
272
+ /**
273
+ * Optional. Output only. Instance setting of the source instance that's associated with this backup.
274
+ */
275
+ instanceSettings?: Schema$DatabaseInstance;
276
+ /**
277
+ * Output only. This is always `sql#backup`.
278
+ */
279
+ kind?: string | null;
280
+ /**
281
+ * Output only. This output contains the encryption configuration for a backup and the resource name of the KMS key for disk encryption.
282
+ */
283
+ kmsKey?: string | null;
284
+ /**
285
+ * Output only. This output contains the encryption status for a backup and the version of the KMS key that's used to encrypt the Cloud SQL instance.
286
+ */
287
+ kmsKeyVersion?: string | null;
288
+ /**
289
+ * The storage location of the backups. The location can be multi-regional.
290
+ */
291
+ location?: string | null;
292
+ /**
293
+ * Output only. The maximum chargeable bytes for the backup.
294
+ */
295
+ maxChargeableBytes?: string | null;
296
+ /**
297
+ * Output only. The resource name of the backup. Format: projects/{project\}/backups/{backup\}.
298
+ */
299
+ name?: string | null;
300
+ /**
301
+ * Output only. This status indicates whether the backup satisfies PZI. The status is reserved for future use.
302
+ */
303
+ satisfiesPzi?: boolean | null;
304
+ /**
305
+ * Output only. This status indicates whether the backup satisfies PZS. The status is reserved for future use.
306
+ */
307
+ satisfiesPzs?: boolean | null;
308
+ /**
309
+ * Output only. The URI of this resource.
310
+ */
311
+ selfLink?: string | null;
312
+ /**
313
+ * Output only. The state of this backup.
314
+ */
315
+ state?: string | null;
316
+ /**
317
+ * Output only. This output contains a backup time zone. If a Cloud SQL for SQL Server instance has a different time zone from the backup's time zone, then the restore to the instance doesn't happen.
318
+ */
319
+ timeZone?: string | null;
320
+ /**
321
+ * Input only. The time-to-live (TTL) interval for this resource (in days). For example: ttlDays:7, means 7 days from the current time. The expiration time can't exceed 365 days from the time that the backup is created.
322
+ */
323
+ ttlDays?: string | null;
324
+ /**
325
+ * Output only. The type of this backup. The type can be "AUTOMATED", "ON_DEMAND", or “FINAL”.
326
+ */
327
+ type?: string | null;
328
+ }
230
329
  /**
231
330
  * Database instance backup configuration.
232
331
  */
@@ -284,6 +383,10 @@ export namespace sqladmin_v1beta4 {
284
383
  * This is always `sql#backupContext`.
285
384
  */
286
385
  kind?: string | null;
386
+ /**
387
+ * The name of the backup. Format: projects/{project\}/backups/{backup\}
388
+ */
389
+ name?: string | null;
287
390
  }
288
391
  /**
289
392
  * Backup Reencryption Config
@@ -319,6 +422,10 @@ export namespace sqladmin_v1beta4 {
319
422
  * Specifies the kind of backup, PHYSICAL or DEFAULT_SNAPSHOT.
320
423
  */
321
424
  backupKind?: string | null;
425
+ /**
426
+ * Output only. The instance database version when this backup was made.
427
+ */
428
+ databaseVersion?: string | null;
322
429
  /**
323
430
  * The description of this run, only applicable to on-demand backups.
324
431
  */
@@ -463,6 +570,77 @@ export namespace sqladmin_v1beta4 {
463
570
  */
464
571
  preferredZone?: string | null;
465
572
  }
573
+ /**
574
+ * The managed connection pooling configuration.
575
+ */
576
+ export interface Schema$ConnectionPoolConfig {
577
+ /**
578
+ * Client idle timeout.
579
+ */
580
+ clientConnectionIdleTimeout?: string | null;
581
+ /**
582
+ * Whether managed connection pooling is enabled.
583
+ */
584
+ connectionPoolingEnabled?: boolean | null;
585
+ /**
586
+ * Managed connection pool size.
587
+ */
588
+ connPoolSize?: number | null;
589
+ /**
590
+ * Optional. List of connection pool configuration flags
591
+ */
592
+ flags?: Schema$ConnectionPoolFlags[];
593
+ /**
594
+ * Maximum number of client connections in connection pool.
595
+ */
596
+ maxClientConnections?: number | null;
597
+ /**
598
+ * The managed connection pool mode for the instance.
599
+ */
600
+ poolMode?: string | null;
601
+ /**
602
+ * Query wait timeout.
603
+ */
604
+ queryWaitTimeout?: string | null;
605
+ /**
606
+ * Server idle timeout.
607
+ */
608
+ serverConnectionIdleTimeout?: string | null;
609
+ }
610
+ /**
611
+ * Connection pool flags for Cloud SQL instances managed connection pool configuration.
612
+ */
613
+ export interface Schema$ConnectionPoolFlags {
614
+ /**
615
+ * Required. The name of the flag.
616
+ */
617
+ name?: string | null;
618
+ /**
619
+ * Required. The value of the flag. Boolean flags are set to `on` for true and `off` for false. This field must be omitted if the flag doesn't take a value.
620
+ */
621
+ value?: string | null;
622
+ }
623
+ /**
624
+ * Details of a single node of a read pool.
625
+ */
626
+ export interface Schema$ConnectPoolNodeConfig {
627
+ /**
628
+ * Output only. The DNS name of the node.
629
+ */
630
+ dnsName?: string | null;
631
+ /**
632
+ * Output only. The list of DNS names used by this instance.
633
+ */
634
+ dnsNames?: Schema$DnsNameMapping[];
635
+ /**
636
+ * Output only. Mappings containing IP addresses that can be used to connect to the node.
637
+ */
638
+ ipAddresses?: Schema$IpMapping[];
639
+ /**
640
+ * Output only. The name of the node. Doesn't include the project ID.
641
+ */
642
+ name?: string | null;
643
+ }
466
644
  /**
467
645
  * Connect settings retrieval response.
468
646
  */
@@ -471,6 +649,10 @@ export namespace sqladmin_v1beta4 {
471
649
  * `SECOND_GEN`: Cloud SQL database instance. `EXTERNAL`: A database server that is not managed by Google. This property is read-only; use the `tier` property in the `settings` object to determine the database type.
472
650
  */
473
651
  backendType?: string | null;
652
+ /**
653
+ * Custom subject alternative names for the server certificate.
654
+ */
655
+ customSubjectAlternativeNames?: string[] | null;
474
656
  /**
475
657
  * The database engine type and version. The `databaseVersion` field cannot be changed after instance creation. MySQL instances: `MYSQL_8_0`, `MYSQL_5_7` (default), or `MYSQL_5_6`. PostgreSQL instances: `POSTGRES_9_6`, `POSTGRES_10`, `POSTGRES_11` or `POSTGRES_12` (default), `POSTGRES_13`, or `POSTGRES_14`. SQL Server instances: `SQLSERVER_2017_STANDARD` (default), `SQLSERVER_2017_ENTERPRISE`, `SQLSERVER_2017_EXPRESS`, `SQLSERVER_2017_WEB`, `SQLSERVER_2019_STANDARD`, `SQLSERVER_2019_ENTERPRISE`, `SQLSERVER_2019_EXPRESS`, or `SQLSERVER_2019_WEB`.
476
658
  */
@@ -479,6 +661,10 @@ export namespace sqladmin_v1beta4 {
479
661
  * The dns name of the instance.
480
662
  */
481
663
  dnsName?: string | null;
664
+ /**
665
+ * Output only. The list of DNS names used by this instance.
666
+ */
667
+ dnsNames?: Schema$DnsNameMapping[];
482
668
  /**
483
669
  * The assigned IP addresses for the instance.
484
670
  */
@@ -487,6 +673,14 @@ export namespace sqladmin_v1beta4 {
487
673
  * This is always `sql#connectSettings`.
488
674
  */
489
675
  kind?: string | null;
676
+ /**
677
+ * The number of nodes in a read pool.
678
+ */
679
+ nodeCount?: number | null;
680
+ /**
681
+ * Output only. Entries containing information about each node of the read pool.
682
+ */
683
+ nodes?: Schema$ConnectPoolNodeConfig[];
490
684
  /**
491
685
  * Whether PSC connectivity is enabled for this instance.
492
686
  */
@@ -599,6 +793,10 @@ export namespace sqladmin_v1beta4 {
599
793
  * Output only. The dns name of the instance.
600
794
  */
601
795
  dnsName?: string | null;
796
+ /**
797
+ * Output only. The list of DNS names used by this instance.
798
+ */
799
+ dnsNames?: Schema$DnsNameMapping[];
602
800
  /**
603
801
  * This field is deprecated and will be removed from a future version of the API. Use the `settings.settingsVersion` field instead.
604
802
  */
@@ -615,6 +813,10 @@ export namespace sqladmin_v1beta4 {
615
813
  * Gemini instance configuration.
616
814
  */
617
815
  geminiConfig?: Schema$GeminiInstanceConfig;
816
+ /**
817
+ * Input only. Determines whether an in-place major version upgrade of replicas happens when an in-place major version upgrade of a primary instance is initiated.
818
+ */
819
+ includeReplicasForMajorVersionUpgrade?: boolean | null;
618
820
  /**
619
821
  * The instance type.
620
822
  */
@@ -647,6 +849,14 @@ export namespace sqladmin_v1beta4 {
647
849
  * Name of the Cloud SQL instance. This does not include the project ID.
648
850
  */
649
851
  name?: string | null;
852
+ /**
853
+ * The number of nodes in a read pool.
854
+ */
855
+ nodeCount?: number | null;
856
+ /**
857
+ * Output only. Entries containing information about each node of the read pool.
858
+ */
859
+ nodes?: Schema$PoolNodeConfig[];
650
860
  /**
651
861
  * Configuration specific to on-premises instances.
652
862
  */
@@ -680,7 +890,7 @@ export namespace sqladmin_v1beta4 {
680
890
  */
681
891
  replicaNames?: string[] | null;
682
892
  /**
683
- * A primary instance and disaster recovery (DR) replica pair. A DR replica is a cross-region replica that you designate for failover in the event that the primary instance experiences regional failure. Only applicable to MySQL.
893
+ * A primary instance and disaster recovery (DR) replica pair. A DR replica is a cross-region replica that you designate for failover in the event that the primary instance experiences regional failure. Applicable to MySQL and PostgreSQL.
684
894
  */
685
895
  replicationCluster?: Schema$ReplicationCluster;
686
896
  /**
@@ -735,6 +945,10 @@ export namespace sqladmin_v1beta4 {
735
945
  * Input only. Whether Cloud SQL is enabled to switch storing point-in-time recovery log files from a data disk to Cloud Storage.
736
946
  */
737
947
  switchTransactionLogsToCloudStorageEnabled?: boolean | null;
948
+ /**
949
+ * Optional. Input only. Immutable. Tag keys and tag values that are bound to this instance. You must represent each item in the map as: `"" : ""`. For example, a single resource can have the following tags: ``` "123/environment": "production", "123/costCenter": "marketing", ``` For more information on tag creation and management, see https://cloud.google.com/resource-manager/docs/tags/tags-overview.
950
+ */
951
+ tags?: {[key: string]: string} | null;
738
952
  /**
739
953
  * Output only. All database versions that are available for upgrade.
740
954
  */
@@ -830,7 +1044,7 @@ export namespace sqladmin_v1beta4 {
830
1044
  */
831
1045
  clientCertificate?: string | null;
832
1046
  /**
833
- * PEM representation of the replica's private key. The corresponsing public key is encoded in the client's certificate. The format of the replica's private key can be either PKCS #1 or PKCS #8.
1047
+ * PEM representation of the replica's private key. The corresponding public key is encoded in the client's certificate. The format of the replica's private key can be either PKCS #1 or PKCS #8.
834
1048
  */
835
1049
  clientKey?: string | null;
836
1050
  /**
@@ -889,6 +1103,23 @@ export namespace sqladmin_v1beta4 {
889
1103
  */
890
1104
  kmsKeyVersionName?: string | null;
891
1105
  }
1106
+ /**
1107
+ * DNS metadata.
1108
+ */
1109
+ export interface Schema$DnsNameMapping {
1110
+ /**
1111
+ * Output only. The connection type of the DNS name.
1112
+ */
1113
+ connectionType?: string | null;
1114
+ /**
1115
+ * Output only. The scope that the DNS name applies to.
1116
+ */
1117
+ dnsScope?: string | null;
1118
+ /**
1119
+ * The DNS name.
1120
+ */
1121
+ name?: string | null;
1122
+ }
892
1123
  /**
893
1124
  * A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); \}
894
1125
  */
@@ -904,6 +1135,8 @@ export namespace sqladmin_v1beta4 {
904
1135
  bakType?: string;
905
1136
  copyOnly?: boolean;
906
1137
  differentialBase?: boolean;
1138
+ exportLogEndTime?: string;
1139
+ exportLogStartTime?: string;
907
1140
  stripeCount?: number;
908
1141
  striped?: boolean;
909
1142
  } | null;
@@ -918,7 +1151,7 @@ export namespace sqladmin_v1beta4 {
918
1151
  selectQuery?: string;
919
1152
  } | null;
920
1153
  /**
921
- * Databases to be exported. `MySQL instances:` If `fileType` is `SQL` and no database is specified, all databases are exported, except for the `mysql` system database. If `fileType` is `CSV`, you can specify one database, either by using this property or by using the `csvExportOptions.selectQuery` property, which takes precedence over this property. `PostgreSQL instances:` You must specify one database to be exported. If `fileType` is `CSV`, this database must match the one specified in the `csvExportOptions.selectQuery` property. `SQL Server instances:` You must specify one database to be exported, and the `fileType` must be `BAK`.
1154
+ * Databases to be exported. `MySQL instances:` If `fileType` is `SQL` and no database is specified, all databases are exported, except for the `mysql` system database. If `fileType` is `CSV`, you can specify one database, either by using this property or by using the `csvExportOptions.selectQuery` property, which takes precedence over this property. `PostgreSQL instances:` If you don't specify a database by name, all user databases in the instance are exported. This excludes system databases and Cloud SQL databases used to manage internal operations. Exporting all user databases is only available for directory-formatted parallel export. If `fileType` is `CSV`, this database must match the one specified in the `csvExportOptions.selectQuery` property. `SQL Server instances:` You must specify one database to be exported, and the `fileType` must be `BAK`.
922
1155
  */
923
1156
  databases?: string[] | null;
924
1157
  /**
@@ -944,11 +1177,29 @@ export namespace sqladmin_v1beta4 {
944
1177
  tables?: string[];
945
1178
  threads?: number;
946
1179
  } | null;
1180
+ /**
1181
+ * Optional. Export parameters specific to SQL Server TDE certificates
1182
+ */
1183
+ tdeExportOptions?: {
1184
+ certificatePath?: string;
1185
+ name?: string;
1186
+ privateKeyPassword?: string;
1187
+ privateKeyPath?: string;
1188
+ } | null;
947
1189
  /**
948
1190
  * The path to the file in Google Cloud Storage where the export will be stored. The URI is in the form `gs://bucketName/fileName`. If the file already exists, the request succeeds, but the operation fails. If `fileType` is `SQL` and the filename ends with .gz, the contents are compressed.
949
1191
  */
950
1192
  uri?: string | null;
951
1193
  }
1194
+ /**
1195
+ * The selected object that Cloud SQL migrates.
1196
+ */
1197
+ export interface Schema$ExternalSyncSelectedObject {
1198
+ /**
1199
+ * The name of the database that Cloud SQL migrates.
1200
+ */
1201
+ database?: string | null;
1202
+ }
952
1203
  /**
953
1204
  * Database instance failover context.
954
1205
  */
@@ -978,6 +1229,10 @@ export namespace sqladmin_v1beta4 {
978
1229
  * The database version this flag applies to. Can be MySQL instances: `MYSQL_8_0`, `MYSQL_8_0_18`, `MYSQL_8_0_26`, `MYSQL_5_7`, or `MYSQL_5_6`. PostgreSQL instances: `POSTGRES_9_6`, `POSTGRES_10`, `POSTGRES_11` or `POSTGRES_12`. SQL Server instances: `SQLSERVER_2017_STANDARD`, `SQLSERVER_2017_ENTERPRISE`, `SQLSERVER_2017_EXPRESS`, `SQLSERVER_2017_WEB`, `SQLSERVER_2019_STANDARD`, `SQLSERVER_2019_ENTERPRISE`, `SQLSERVER_2019_EXPRESS`, or `SQLSERVER_2019_WEB`. See [the complete list](/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion).
979
1230
  */
980
1231
  appliesTo?: string[] | null;
1232
+ /**
1233
+ * Scope of flag.
1234
+ */
1235
+ flagScope?: string | null;
981
1236
  /**
982
1237
  * Whether or not the flag is considered in beta.
983
1238
  */
@@ -998,6 +1253,14 @@ export namespace sqladmin_v1beta4 {
998
1253
  * This is the name of the flag. Flag names always use underscores, not hyphens, for example: `max_allowed_packet`
999
1254
  */
1000
1255
  name?: string | null;
1256
+ /**
1257
+ * Recommended flag value in integer format for UI display.
1258
+ */
1259
+ recommendedIntValue?: string | null;
1260
+ /**
1261
+ * Recommended flag value in string format for UI display.
1262
+ */
1263
+ recommendedStringValue?: string | null;
1001
1264
  /**
1002
1265
  * Indicates whether changing this flag will trigger a database restart. Only applicable to Second Generation instances.
1003
1266
  */
@@ -1090,6 +1353,7 @@ export namespace sqladmin_v1beta4 {
1090
1353
  bakType?: string;
1091
1354
  encryptionOptions?: {
1092
1355
  certPath?: string;
1356
+ keepEncrypted?: boolean;
1093
1357
  pvkPassword?: string;
1094
1358
  pvkPath?: string;
1095
1359
  };
@@ -1111,7 +1375,7 @@ export namespace sqladmin_v1beta4 {
1111
1375
  table?: string;
1112
1376
  } | null;
1113
1377
  /**
1114
- * The target database for the import. If `fileType` is `SQL`, this field is required only if the import file does not specify a database, and is overridden by any database specification in the import file. If `fileType` is `CSV`, one database must be specified.
1378
+ * The target database for the import. If `fileType` is `SQL`, this field is required only if the import file does not specify a database, and is overridden by any database specification in the import file. For entire instance parallel import operations, the database is overridden by the database name stored in subdirectory name. If `fileType` is `CSV`, one database must be specified.
1115
1379
  */
1116
1380
  database?: string | null;
1117
1381
  /**
@@ -1134,6 +1398,15 @@ export namespace sqladmin_v1beta4 {
1134
1398
  postgresImportOptions?: {clean?: boolean; ifExists?: boolean};
1135
1399
  threads?: number;
1136
1400
  } | null;
1401
+ /**
1402
+ * Optional. Import parameters specific to SQL Server .TDE files Import parameters specific to SQL Server TDE certificates
1403
+ */
1404
+ tdeImportOptions?: {
1405
+ certificatePath?: string;
1406
+ name?: string;
1407
+ privateKeyPassword?: string;
1408
+ privateKeyPath?: string;
1409
+ } | null;
1137
1410
  /**
1138
1411
  * Path to the import file in Cloud Storage, in the form `gs://bucketName/fileName`. Compressed gzip files (.gz) are supported when `fileType` is `SQL`. The instance must have write permissions to the bucket and read access to the file.
1139
1412
  */
@@ -1279,6 +1552,27 @@ export namespace sqladmin_v1beta4 {
1279
1552
  */
1280
1553
  kind?: string | null;
1281
1554
  }
1555
+ /**
1556
+ * Instances ListServerCertificatess response.
1557
+ */
1558
+ export interface Schema$InstancesListServerCertificatesResponse {
1559
+ /**
1560
+ * The `sha1_fingerprint` of the active certificate from `server_certs`.
1561
+ */
1562
+ activeVersion?: string | null;
1563
+ /**
1564
+ * List of server CA certificates for the instance.
1565
+ */
1566
+ caCerts?: Schema$SslCert[];
1567
+ /**
1568
+ * This is always `sql#instancesListServerCertificates`.
1569
+ */
1570
+ kind?: string | null;
1571
+ /**
1572
+ * List of server certificates for the instance, signed by the corresponding CA from the `ca_certs` list.
1573
+ */
1574
+ serverCerts?: Schema$SslCert[];
1575
+ }
1282
1576
  /**
1283
1577
  * Database Instance reencrypt request.
1284
1578
  */
@@ -1292,10 +1586,18 @@ export namespace sqladmin_v1beta4 {
1292
1586
  * Database instance restore backup request.
1293
1587
  */
1294
1588
  export interface Schema$InstancesRestoreBackupRequest {
1589
+ /**
1590
+ * The name of the backup that's used to restore a Cloud SQL instance: Format: projects/{project-id\}/backups/{backup-uid\}. Only one of restore_backup_context, backup, backupdr_backup can be passed to the input.
1591
+ */
1592
+ backup?: string | null;
1295
1593
  /**
1296
1594
  * Parameters required to perform the restore backup operation.
1297
1595
  */
1298
1596
  restoreBackupContext?: Schema$RestoreBackupContext;
1597
+ /**
1598
+ * Optional. By using this parameter, Cloud SQL overrides any instance settings stored in the backup you are restoring from. You can't change the instance's major database version and you can only increase the disk size. You can use this field to restore new instances only. This field is not applicable for restore to existing instances.
1599
+ */
1600
+ restoreInstanceSettings?: Schema$DatabaseInstance;
1299
1601
  }
1300
1602
  /**
1301
1603
  * Rotate Server CA request.
@@ -1306,6 +1608,15 @@ export namespace sqladmin_v1beta4 {
1306
1608
  */
1307
1609
  rotateServerCaContext?: Schema$RotateServerCaContext;
1308
1610
  }
1611
+ /**
1612
+ * Rotate Server Certificate request.
1613
+ */
1614
+ export interface Schema$InstancesRotateServerCertificateRequest {
1615
+ /**
1616
+ * Optional. Contains details about the rotate server CA operation.
1617
+ */
1618
+ rotateServerCertificateContext?: Schema$RotateServerCertificateContext;
1619
+ }
1309
1620
  /**
1310
1621
  * Instance truncate log request.
1311
1622
  */
@@ -1315,6 +1626,19 @@ export namespace sqladmin_v1beta4 {
1315
1626
  */
1316
1627
  truncateLogContext?: Schema$TruncateLogContext;
1317
1628
  }
1629
+ /**
1630
+ * Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time.
1631
+ */
1632
+ export interface Schema$Interval {
1633
+ /**
1634
+ * Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.
1635
+ */
1636
+ endTime?: string | null;
1637
+ /**
1638
+ * Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.
1639
+ */
1640
+ startTime?: string | null;
1641
+ }
1318
1642
  /**
1319
1643
  * IP Management configuration.
1320
1644
  */
@@ -1327,6 +1651,10 @@ export namespace sqladmin_v1beta4 {
1327
1651
  * The list of external networks that are allowed to connect to the instance using the IP. In 'CIDR' notation, also known as 'slash' notation (for example: `157.197.200.0/24`).
1328
1652
  */
1329
1653
  authorizedNetworks?: Schema$AclEntry[];
1654
+ /**
1655
+ * Optional. Custom Subject Alternative Name(SAN)s for a Cloud SQL instance.
1656
+ */
1657
+ customSubjectAlternativeNames?: string[] | null;
1330
1658
  /**
1331
1659
  * Controls connectivity to private IP instances from Google services, such as BigQuery.
1332
1660
  */
@@ -1351,6 +1679,10 @@ export namespace sqladmin_v1beta4 {
1351
1679
  * Specify what type of CA is used for the server certificate.
1352
1680
  */
1353
1681
  serverCaMode?: string | null;
1682
+ /**
1683
+ * Optional. The resource name of the server CA pool for an instance with `CUSTOMER_MANAGED_CAS_CA` as the `server_ca_mode`. Format: projects/{PROJECT\}/locations/{REGION\}/caPools/{CA_POOL_ID\}
1684
+ */
1685
+ serverCaPool?: string | null;
1354
1686
  /**
1355
1687
  * Specify how SSL/TLS is enforced in database connections. If you must use the `require_ssl` flag for backward compatibility, then only the following value pairs are valid: For PostgreSQL and MySQL: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false` * `ssl_mode=TRUSTED_CLIENT_CERTIFICATE_REQUIRED` and `require_ssl=true` For SQL Server: * `ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED` and `require_ssl=false` * `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=true` The value of `ssl_mode` has priority over the value of `require_ssl`. For example, for the pair `ssl_mode=ENCRYPTED_ONLY` and `require_ssl=false`, `ssl_mode=ENCRYPTED_ONLY` means accept only SSL connections, while `require_ssl=false` means accept both non-SSL and SSL connections. In this case, MySQL and PostgreSQL databases respect `ssl_mode` and accepts only SSL connections.
1356
1688
  */
@@ -1373,6 +1705,23 @@ export namespace sqladmin_v1beta4 {
1373
1705
  */
1374
1706
  type?: string | null;
1375
1707
  }
1708
+ /**
1709
+ * The response payload containing a list of the backups.
1710
+ */
1711
+ export interface Schema$ListBackupsResponse {
1712
+ /**
1713
+ * A list of backups.
1714
+ */
1715
+ backups?: Schema$Backup[];
1716
+ /**
1717
+ * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, then there aren't subsequent pages.
1718
+ */
1719
+ nextPageToken?: string | null;
1720
+ /**
1721
+ * If a region isn't unavailable or if an unknown error occurs, then a warning message is returned.
1722
+ */
1723
+ warnings?: Schema$ApiWarning[];
1724
+ }
1376
1725
  /**
1377
1726
  * Preferred location. This specifies where a Cloud SQL instance is located. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified.
1378
1727
  */
@@ -1428,7 +1777,7 @@ export namespace sqladmin_v1beta4 {
1428
1777
  */
1429
1778
  clientCertificate?: string | null;
1430
1779
  /**
1431
- * PEM representation of the replica's private key. The corresponsing public key is encoded in the client's certificate.
1780
+ * PEM representation of the replica's private key. The corresponding public key is encoded in the client's certificate.
1432
1781
  */
1433
1782
  clientKey?: string | null;
1434
1783
  /**
@@ -1486,7 +1835,7 @@ export namespace sqladmin_v1beta4 {
1486
1835
  */
1487
1836
  clientCertificate?: string | null;
1488
1837
  /**
1489
- * PEM representation of the replica's private key. The corresponsing public key is encoded in the client's certificate.
1838
+ * PEM representation of the replica's private key. The corresponding public key is encoded in the client's certificate.
1490
1839
  */
1491
1840
  clientKey?: string | null;
1492
1841
  /**
@@ -1505,10 +1854,18 @@ export namespace sqladmin_v1beta4 {
1505
1854
  * The password for connecting to on-premises instance.
1506
1855
  */
1507
1856
  password?: string | null;
1857
+ /**
1858
+ * Optional. A list of objects that the user selects for replication from an external source instance.
1859
+ */
1860
+ selectedObjects?: Schema$SelectedObjects[];
1508
1861
  /**
1509
1862
  * The reference to Cloud SQL instance if the source is Cloud SQL.
1510
1863
  */
1511
1864
  sourceInstance?: Schema$InstanceReference;
1865
+ /**
1866
+ * Optional. SslOption for replica connection to the on-premises source.
1867
+ */
1868
+ sslOption?: string | null;
1512
1869
  /**
1513
1870
  * The username for connecting to on-premises instance.
1514
1871
  */
@@ -1575,7 +1932,11 @@ export namespace sqladmin_v1beta4 {
1575
1932
  */
1576
1933
  status?: string | null;
1577
1934
  /**
1578
- * Name of the database instance related to this operation.
1935
+ * Optional. The sub operation based on the operation type.
1936
+ */
1937
+ subOperationType?: Schema$SqlSubOperationType;
1938
+ /**
1939
+ * Name of the resource on which this operation runs.
1579
1940
  */
1580
1941
  targetId?: string | null;
1581
1942
  targetLink?: string | null;
@@ -1627,7 +1988,7 @@ export namespace sqladmin_v1beta4 {
1627
1988
  */
1628
1989
  apiVersion?: string | null;
1629
1990
  /**
1630
- * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.
1991
+ * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have google.longrunning.Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.
1631
1992
  */
1632
1993
  cancelRequested?: boolean | null;
1633
1994
  /**
@@ -1723,6 +2084,60 @@ export namespace sqladmin_v1beta4 {
1723
2084
  */
1724
2085
  targetSizeGb?: string | null;
1725
2086
  }
2087
+ /**
2088
+ * Details of a single node of a read pool.
2089
+ */
2090
+ export interface Schema$PoolNodeConfig {
2091
+ /**
2092
+ * Output only. The DNS name of the node.
2093
+ */
2094
+ dnsName?: string | null;
2095
+ /**
2096
+ * Output only. The list of DNS names used by this node.
2097
+ */
2098
+ dnsNames?: Schema$DnsNameMapping[];
2099
+ /**
2100
+ * Output only. The serving zone of the node.
2101
+ */
2102
+ gceZone?: string | null;
2103
+ /**
2104
+ * Output only. Mappings containing IP addresses that can be used to connect to the node.
2105
+ */
2106
+ ipAddresses?: Schema$IpMapping[];
2107
+ /**
2108
+ * Output only. The name of the node, to be used for retrieving metrics and logs for the node.
2109
+ */
2110
+ name?: string | null;
2111
+ /**
2112
+ * Output only. The current state of the node.
2113
+ */
2114
+ state?: string | null;
2115
+ }
2116
+ /**
2117
+ * Settings for an automatically-setup Private Service Connect consumer endpoint that is used to connect to a Cloud SQL instance.
2118
+ */
2119
+ export interface Schema$PscAutoConnectionConfig {
2120
+ /**
2121
+ * The consumer network of this consumer endpoint. This must be a resource path that includes both the host project and the network name. For example, `projects/project1/global/networks/network1`. The consumer host project of this network might be different from the consumer service project.
2122
+ */
2123
+ consumerNetwork?: string | null;
2124
+ /**
2125
+ * The connection policy status of the consumer network.
2126
+ */
2127
+ consumerNetworkStatus?: string | null;
2128
+ /**
2129
+ * This is the project ID of consumer service project of this consumer endpoint. Optional. This is only applicable if consumer_network is a shared vpc network.
2130
+ */
2131
+ consumerProject?: string | null;
2132
+ /**
2133
+ * The IP address of the consumer endpoint.
2134
+ */
2135
+ ipAddress?: string | null;
2136
+ /**
2137
+ * The connection status of the consumer endpoint.
2138
+ */
2139
+ status?: string | null;
2140
+ }
1726
2141
  /**
1727
2142
  * PSC settings for a Cloud SQL instance.
1728
2143
  */
@@ -1731,6 +2146,10 @@ export namespace sqladmin_v1beta4 {
1731
2146
  * Optional. The list of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
1732
2147
  */
1733
2148
  allowedConsumerProjects?: string[] | null;
2149
+ /**
2150
+ * Optional. The list of settings for requested Private Service Connect consumer endpoints that can be used to connect to this Cloud SQL instance.
2151
+ */
2152
+ pscAutoConnections?: Schema$PscAutoConnectionConfig[];
1734
2153
  /**
1735
2154
  * Whether PSC connectivity is enabled for this instance.
1736
2155
  */
@@ -1758,7 +2177,7 @@ export namespace sqladmin_v1beta4 {
1758
2177
  mysqlReplicaConfiguration?: Schema$MySqlReplicaConfiguration;
1759
2178
  }
1760
2179
  /**
1761
- * A primary instance and disaster recovery (DR) replica pair. A DR replica is a cross-region replica that you designate for failover in the event that the primary instance has regional failure. Only applicable to MySQL.
2180
+ * A primary instance and disaster recovery (DR) replica pair. A DR replica is a cross-region replica that you designate for failover in the event that the primary instance has regional failure. Applicable to MySQL and PostgreSQL.
1762
2181
  */
1763
2182
  export interface Schema$ReplicationCluster {
1764
2183
  /**
@@ -1770,7 +2189,7 @@ export namespace sqladmin_v1beta4 {
1770
2189
  */
1771
2190
  failoverDrReplicaName?: string | null;
1772
2191
  /**
1773
- * Output only. If set, it indicates this instance has a private service access (PSA) dns endpoint that is pointing to the primary instance of the cluster. If this instance is the primary, the dns should be pointing to this instance. After Switchover or Replica failover, this DNS endpoint points to the promoted instance. This is a read-only field, returned to the user as information. This field can exist even if a standalone instance does not yet have a replica, or had a DR replica that was deleted.
2192
+ * Output only. If set, this field indicates this instance has a private service access (PSA) DNS endpoint that is pointing to the primary instance of the cluster. If this instance is the primary, then the DNS endpoint points to this instance. After a switchover or replica failover operation, this DNS endpoint points to the promoted instance. This is a read-only field, returned to the user as information. This field can exist even if a standalone instance doesn't have a DR replica yet or the DR replica is deleted.
1774
2193
  */
1775
2194
  psaWriteEndpoint?: string | null;
1776
2195
  }
@@ -1819,17 +2238,39 @@ export namespace sqladmin_v1beta4 {
1819
2238
  nextVersion?: string | null;
1820
2239
  }
1821
2240
  /**
1822
- * Database instance settings.
2241
+ * Instance rotate server certificate context.
1823
2242
  */
1824
- export interface Schema$Settings {
2243
+ export interface Schema$RotateServerCertificateContext {
1825
2244
  /**
1826
- * The activation policy specifies when the instance is activated; it is applicable only when the instance state is RUNNABLE. Valid values: * `ALWAYS`: The instance is on, and remains so even in the absence of connection requests. * `NEVER`: The instance is off; it is not activated, even if a connection request arrives.
2245
+ * Optional. This is always `sql#rotateServerCertificateContext`.
1827
2246
  */
1828
- activationPolicy?: string | null;
2247
+ kind?: string | null;
1829
2248
  /**
1830
- * Active Directory configuration, relevant only for Cloud SQL for SQL Server.
2249
+ * Optional. The fingerprint of the next version to be rotated to. If left unspecified, will be rotated to the most recently added server certificate version.
1831
2250
  */
1832
- activeDirectoryConfig?: Schema$SqlActiveDirectoryConfig;
2251
+ nextVersion?: string | null;
2252
+ }
2253
+ /**
2254
+ * A list of objects that the user selects for replication from an external source instance.
2255
+ */
2256
+ export interface Schema$SelectedObjects {
2257
+ /**
2258
+ * Required. The name of the database to migrate.
2259
+ */
2260
+ database?: string | null;
2261
+ }
2262
+ /**
2263
+ * Database instance settings.
2264
+ */
2265
+ export interface Schema$Settings {
2266
+ /**
2267
+ * The activation policy specifies when the instance is activated; it is applicable only when the instance state is RUNNABLE. Valid values: * `ALWAYS`: The instance is on, and remains so even in the absence of connection requests. * `NEVER`: The instance is off; it is not activated, even if a connection request arrives.
2268
+ */
2269
+ activationPolicy?: string | null;
2270
+ /**
2271
+ * Active Directory configuration, relevant only for Cloud SQL for SQL Server.
2272
+ */
2273
+ activeDirectoryConfig?: Schema$SqlActiveDirectoryConfig;
1833
2274
  /**
1834
2275
  * Specifies advanced machine configuration for the instances relevant only for SQL Server.
1835
2276
  */
@@ -1850,6 +2291,10 @@ export namespace sqladmin_v1beta4 {
1850
2291
  * The name of server Instance collation.
1851
2292
  */
1852
2293
  collation?: string | null;
2294
+ /**
2295
+ * Optional. The managed connection pooling configuration for the instance.
2296
+ */
2297
+ connectionPoolConfig?: Schema$ConnectionPoolConfig;
1853
2298
  /**
1854
2299
  * Specifies if connections must use Cloud SQL connectors. Option values include the following: `NOT_REQUIRED` (Cloud SQL instances can be connected without Cloud SQL Connectors) and `REQUIRED` (Only allow connections that use Cloud SQL Connectors) Note that using REQUIRED disables all existing authorized networks. If this field is not specified when creating a new instance, NOT_REQUIRED is used. If this field is not specified when patching or updating an existing instance, it is left unchanged in the instance.
1855
2300
  */
@@ -1870,6 +2315,14 @@ export namespace sqladmin_v1beta4 {
1870
2315
  * Configuration for data cache.
1871
2316
  */
1872
2317
  dataCacheConfig?: Schema$DataCacheConfig;
2318
+ /**
2319
+ * Optional. Provisioned number of I/O operations per second for the data disk. This field is only used for hyperdisk-balanced disk types.
2320
+ */
2321
+ dataDiskProvisionedIops?: string | null;
2322
+ /**
2323
+ * Optional. Provisioned throughput measured in MiB per second for the data disk. This field is only used for hyperdisk-balanced disk types.
2324
+ */
2325
+ dataDiskProvisionedThroughput?: string | null;
1873
2326
  /**
1874
2327
  * The size of data disk, in GB. The data disk size minimum is 10GB.
1875
2328
  */
@@ -1926,10 +2379,18 @@ export namespace sqladmin_v1beta4 {
1926
2379
  * The pricing plan for this instance. This can be either `PER_USE` or `PACKAGE`. Only `PER_USE` is supported for Second Generation instances.
1927
2380
  */
1928
2381
  pricingPlan?: string | null;
2382
+ /**
2383
+ * Optional. Configuration value for recreation of replica after certain replication lag
2384
+ */
2385
+ replicationLagMaxSeconds?: number | null;
1929
2386
  /**
1930
2387
  * The type of replication this instance uses. This can be either `ASYNCHRONOUS` or `SYNCHRONOUS`. (Deprecated) This property was only applicable to First Generation instances.
1931
2388
  */
1932
2389
  replicationType?: string | null;
2390
+ /**
2391
+ * Optional. When this parameter is set to true, Cloud SQL retains backups of the instance even after the instance is deleted. The ON_DEMAND backup will be retained until customer deletes the backup or the project. The AUTOMATED backup will be retained based on the backups retention setting.
2392
+ */
2393
+ retainBackupsOnDelete?: boolean | null;
1933
2394
  /**
1934
2395
  * The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.
1935
2396
  */
@@ -2081,6 +2542,10 @@ export namespace sqladmin_v1beta4 {
2081
2542
  * Optional. MySQL-specific settings for start external sync.
2082
2543
  */
2083
2544
  mysqlSyncConfig?: Schema$MySqlSyncConfig;
2545
+ /**
2546
+ * Optional. Migrate only the specified objects from the source instance. If this field is empty, then migrate all objects.
2547
+ */
2548
+ selectedObjects?: Schema$ExternalSyncSelectedObject[];
2084
2549
  /**
2085
2550
  * External sync mode
2086
2551
  */
@@ -2193,6 +2658,15 @@ export namespace sqladmin_v1beta4 {
2193
2658
  */
2194
2659
  serverRoles?: string[] | null;
2195
2660
  }
2661
+ /**
2662
+ * The sub operation type based on the operation type.
2663
+ */
2664
+ export interface Schema$SqlSubOperationType {
2665
+ /**
2666
+ * The type of maintenance to be performed on the instance.
2667
+ */
2668
+ maintenanceType?: string | null;
2669
+ }
2196
2670
  /**
2197
2671
  * SslCerts Resource
2198
2672
  */
@@ -2877,9 +3351,523 @@ export namespace sqladmin_v1beta4 {
2877
3351
  */
2878
3352
  pageToken?: string;
2879
3353
  /**
2880
- * Project ID of the project that contains the instance.
3354
+ * Project ID of the project that contains the instance.
3355
+ */
3356
+ project?: string;
3357
+ }
3358
+
3359
+ export class Resource$Backups {
3360
+ context: APIRequestContext;
3361
+ constructor(context: APIRequestContext) {
3362
+ this.context = context;
3363
+ }
3364
+
3365
+ /**
3366
+ * Creates a backup for a Cloud SQL instance. This API can be used only to create on-demand backups.
3367
+ *
3368
+ * @param params - Parameters for request
3369
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
3370
+ * @param callback - Optional callback that handles the response.
3371
+ * @returns A promise if used with async/await, or void if used with a callback.
3372
+ */
3373
+ createBackup(
3374
+ params: Params$Resource$Backups$Createbackup,
3375
+ options: StreamMethodOptions
3376
+ ): GaxiosPromise<Readable>;
3377
+ createBackup(
3378
+ params?: Params$Resource$Backups$Createbackup,
3379
+ options?: MethodOptions
3380
+ ): GaxiosPromise<Schema$Operation>;
3381
+ createBackup(
3382
+ params: Params$Resource$Backups$Createbackup,
3383
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
3384
+ callback: BodyResponseCallback<Readable>
3385
+ ): void;
3386
+ createBackup(
3387
+ params: Params$Resource$Backups$Createbackup,
3388
+ options: MethodOptions | BodyResponseCallback<Schema$Operation>,
3389
+ callback: BodyResponseCallback<Schema$Operation>
3390
+ ): void;
3391
+ createBackup(
3392
+ params: Params$Resource$Backups$Createbackup,
3393
+ callback: BodyResponseCallback<Schema$Operation>
3394
+ ): void;
3395
+ createBackup(callback: BodyResponseCallback<Schema$Operation>): void;
3396
+ createBackup(
3397
+ paramsOrCallback?:
3398
+ | Params$Resource$Backups$Createbackup
3399
+ | BodyResponseCallback<Schema$Operation>
3400
+ | BodyResponseCallback<Readable>,
3401
+ optionsOrCallback?:
3402
+ | MethodOptions
3403
+ | StreamMethodOptions
3404
+ | BodyResponseCallback<Schema$Operation>
3405
+ | BodyResponseCallback<Readable>,
3406
+ callback?:
3407
+ | BodyResponseCallback<Schema$Operation>
3408
+ | BodyResponseCallback<Readable>
3409
+ ): void | GaxiosPromise<Schema$Operation> | GaxiosPromise<Readable> {
3410
+ let params = (paramsOrCallback ||
3411
+ {}) as Params$Resource$Backups$Createbackup;
3412
+ let options = (optionsOrCallback || {}) as MethodOptions;
3413
+
3414
+ if (typeof paramsOrCallback === 'function') {
3415
+ callback = paramsOrCallback;
3416
+ params = {} as Params$Resource$Backups$Createbackup;
3417
+ options = {};
3418
+ }
3419
+
3420
+ if (typeof optionsOrCallback === 'function') {
3421
+ callback = optionsOrCallback;
3422
+ options = {};
3423
+ }
3424
+
3425
+ const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/';
3426
+ const parameters = {
3427
+ options: Object.assign(
3428
+ {
3429
+ url: (rootUrl + '/sql/v1beta4/{+parent}/backups').replace(
3430
+ /([^:]\/)\/+/g,
3431
+ '$1'
3432
+ ),
3433
+ method: 'POST',
3434
+ apiVersion: '',
3435
+ },
3436
+ options
3437
+ ),
3438
+ params,
3439
+ requiredParams: ['parent'],
3440
+ pathParams: ['parent'],
3441
+ context: this.context,
3442
+ };
3443
+ if (callback) {
3444
+ createAPIRequest<Schema$Operation>(
3445
+ parameters,
3446
+ callback as BodyResponseCallback<unknown>
3447
+ );
3448
+ } else {
3449
+ return createAPIRequest<Schema$Operation>(parameters);
3450
+ }
3451
+ }
3452
+
3453
+ /**
3454
+ * Deletes the backup.
3455
+ *
3456
+ * @param params - Parameters for request
3457
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
3458
+ * @param callback - Optional callback that handles the response.
3459
+ * @returns A promise if used with async/await, or void if used with a callback.
3460
+ */
3461
+ deleteBackup(
3462
+ params: Params$Resource$Backups$Deletebackup,
3463
+ options: StreamMethodOptions
3464
+ ): GaxiosPromise<Readable>;
3465
+ deleteBackup(
3466
+ params?: Params$Resource$Backups$Deletebackup,
3467
+ options?: MethodOptions
3468
+ ): GaxiosPromise<Schema$Operation>;
3469
+ deleteBackup(
3470
+ params: Params$Resource$Backups$Deletebackup,
3471
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
3472
+ callback: BodyResponseCallback<Readable>
3473
+ ): void;
3474
+ deleteBackup(
3475
+ params: Params$Resource$Backups$Deletebackup,
3476
+ options: MethodOptions | BodyResponseCallback<Schema$Operation>,
3477
+ callback: BodyResponseCallback<Schema$Operation>
3478
+ ): void;
3479
+ deleteBackup(
3480
+ params: Params$Resource$Backups$Deletebackup,
3481
+ callback: BodyResponseCallback<Schema$Operation>
3482
+ ): void;
3483
+ deleteBackup(callback: BodyResponseCallback<Schema$Operation>): void;
3484
+ deleteBackup(
3485
+ paramsOrCallback?:
3486
+ | Params$Resource$Backups$Deletebackup
3487
+ | BodyResponseCallback<Schema$Operation>
3488
+ | BodyResponseCallback<Readable>,
3489
+ optionsOrCallback?:
3490
+ | MethodOptions
3491
+ | StreamMethodOptions
3492
+ | BodyResponseCallback<Schema$Operation>
3493
+ | BodyResponseCallback<Readable>,
3494
+ callback?:
3495
+ | BodyResponseCallback<Schema$Operation>
3496
+ | BodyResponseCallback<Readable>
3497
+ ): void | GaxiosPromise<Schema$Operation> | GaxiosPromise<Readable> {
3498
+ let params = (paramsOrCallback ||
3499
+ {}) as Params$Resource$Backups$Deletebackup;
3500
+ let options = (optionsOrCallback || {}) as MethodOptions;
3501
+
3502
+ if (typeof paramsOrCallback === 'function') {
3503
+ callback = paramsOrCallback;
3504
+ params = {} as Params$Resource$Backups$Deletebackup;
3505
+ options = {};
3506
+ }
3507
+
3508
+ if (typeof optionsOrCallback === 'function') {
3509
+ callback = optionsOrCallback;
3510
+ options = {};
3511
+ }
3512
+
3513
+ const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/';
3514
+ const parameters = {
3515
+ options: Object.assign(
3516
+ {
3517
+ url: (rootUrl + '/sql/v1beta4/{+name}').replace(
3518
+ /([^:]\/)\/+/g,
3519
+ '$1'
3520
+ ),
3521
+ method: 'DELETE',
3522
+ apiVersion: '',
3523
+ },
3524
+ options
3525
+ ),
3526
+ params,
3527
+ requiredParams: ['name'],
3528
+ pathParams: ['name'],
3529
+ context: this.context,
3530
+ };
3531
+ if (callback) {
3532
+ createAPIRequest<Schema$Operation>(
3533
+ parameters,
3534
+ callback as BodyResponseCallback<unknown>
3535
+ );
3536
+ } else {
3537
+ return createAPIRequest<Schema$Operation>(parameters);
3538
+ }
3539
+ }
3540
+
3541
+ /**
3542
+ * Retrieves a resource containing information about a backup.
3543
+ *
3544
+ * @param params - Parameters for request
3545
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
3546
+ * @param callback - Optional callback that handles the response.
3547
+ * @returns A promise if used with async/await, or void if used with a callback.
3548
+ */
3549
+ getBackup(
3550
+ params: Params$Resource$Backups$Getbackup,
3551
+ options: StreamMethodOptions
3552
+ ): GaxiosPromise<Readable>;
3553
+ getBackup(
3554
+ params?: Params$Resource$Backups$Getbackup,
3555
+ options?: MethodOptions
3556
+ ): GaxiosPromise<Schema$Backup>;
3557
+ getBackup(
3558
+ params: Params$Resource$Backups$Getbackup,
3559
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
3560
+ callback: BodyResponseCallback<Readable>
3561
+ ): void;
3562
+ getBackup(
3563
+ params: Params$Resource$Backups$Getbackup,
3564
+ options: MethodOptions | BodyResponseCallback<Schema$Backup>,
3565
+ callback: BodyResponseCallback<Schema$Backup>
3566
+ ): void;
3567
+ getBackup(
3568
+ params: Params$Resource$Backups$Getbackup,
3569
+ callback: BodyResponseCallback<Schema$Backup>
3570
+ ): void;
3571
+ getBackup(callback: BodyResponseCallback<Schema$Backup>): void;
3572
+ getBackup(
3573
+ paramsOrCallback?:
3574
+ | Params$Resource$Backups$Getbackup
3575
+ | BodyResponseCallback<Schema$Backup>
3576
+ | BodyResponseCallback<Readable>,
3577
+ optionsOrCallback?:
3578
+ | MethodOptions
3579
+ | StreamMethodOptions
3580
+ | BodyResponseCallback<Schema$Backup>
3581
+ | BodyResponseCallback<Readable>,
3582
+ callback?:
3583
+ | BodyResponseCallback<Schema$Backup>
3584
+ | BodyResponseCallback<Readable>
3585
+ ): void | GaxiosPromise<Schema$Backup> | GaxiosPromise<Readable> {
3586
+ let params = (paramsOrCallback ||
3587
+ {}) as Params$Resource$Backups$Getbackup;
3588
+ let options = (optionsOrCallback || {}) as MethodOptions;
3589
+
3590
+ if (typeof paramsOrCallback === 'function') {
3591
+ callback = paramsOrCallback;
3592
+ params = {} as Params$Resource$Backups$Getbackup;
3593
+ options = {};
3594
+ }
3595
+
3596
+ if (typeof optionsOrCallback === 'function') {
3597
+ callback = optionsOrCallback;
3598
+ options = {};
3599
+ }
3600
+
3601
+ const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/';
3602
+ const parameters = {
3603
+ options: Object.assign(
3604
+ {
3605
+ url: (rootUrl + '/sql/v1beta4/{+name}').replace(
3606
+ /([^:]\/)\/+/g,
3607
+ '$1'
3608
+ ),
3609
+ method: 'GET',
3610
+ apiVersion: '',
3611
+ },
3612
+ options
3613
+ ),
3614
+ params,
3615
+ requiredParams: ['name'],
3616
+ pathParams: ['name'],
3617
+ context: this.context,
3618
+ };
3619
+ if (callback) {
3620
+ createAPIRequest<Schema$Backup>(
3621
+ parameters,
3622
+ callback as BodyResponseCallback<unknown>
3623
+ );
3624
+ } else {
3625
+ return createAPIRequest<Schema$Backup>(parameters);
3626
+ }
3627
+ }
3628
+
3629
+ /**
3630
+ * Lists all backups associated with the project.
3631
+ *
3632
+ * @param params - Parameters for request
3633
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
3634
+ * @param callback - Optional callback that handles the response.
3635
+ * @returns A promise if used with async/await, or void if used with a callback.
3636
+ */
3637
+ listBackups(
3638
+ params: Params$Resource$Backups$Listbackups,
3639
+ options: StreamMethodOptions
3640
+ ): GaxiosPromise<Readable>;
3641
+ listBackups(
3642
+ params?: Params$Resource$Backups$Listbackups,
3643
+ options?: MethodOptions
3644
+ ): GaxiosPromise<Schema$ListBackupsResponse>;
3645
+ listBackups(
3646
+ params: Params$Resource$Backups$Listbackups,
3647
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
3648
+ callback: BodyResponseCallback<Readable>
3649
+ ): void;
3650
+ listBackups(
3651
+ params: Params$Resource$Backups$Listbackups,
3652
+ options: MethodOptions | BodyResponseCallback<Schema$ListBackupsResponse>,
3653
+ callback: BodyResponseCallback<Schema$ListBackupsResponse>
3654
+ ): void;
3655
+ listBackups(
3656
+ params: Params$Resource$Backups$Listbackups,
3657
+ callback: BodyResponseCallback<Schema$ListBackupsResponse>
3658
+ ): void;
3659
+ listBackups(
3660
+ callback: BodyResponseCallback<Schema$ListBackupsResponse>
3661
+ ): void;
3662
+ listBackups(
3663
+ paramsOrCallback?:
3664
+ | Params$Resource$Backups$Listbackups
3665
+ | BodyResponseCallback<Schema$ListBackupsResponse>
3666
+ | BodyResponseCallback<Readable>,
3667
+ optionsOrCallback?:
3668
+ | MethodOptions
3669
+ | StreamMethodOptions
3670
+ | BodyResponseCallback<Schema$ListBackupsResponse>
3671
+ | BodyResponseCallback<Readable>,
3672
+ callback?:
3673
+ | BodyResponseCallback<Schema$ListBackupsResponse>
3674
+ | BodyResponseCallback<Readable>
3675
+ ):
3676
+ | void
3677
+ | GaxiosPromise<Schema$ListBackupsResponse>
3678
+ | GaxiosPromise<Readable> {
3679
+ let params = (paramsOrCallback ||
3680
+ {}) as Params$Resource$Backups$Listbackups;
3681
+ let options = (optionsOrCallback || {}) as MethodOptions;
3682
+
3683
+ if (typeof paramsOrCallback === 'function') {
3684
+ callback = paramsOrCallback;
3685
+ params = {} as Params$Resource$Backups$Listbackups;
3686
+ options = {};
3687
+ }
3688
+
3689
+ if (typeof optionsOrCallback === 'function') {
3690
+ callback = optionsOrCallback;
3691
+ options = {};
3692
+ }
3693
+
3694
+ const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/';
3695
+ const parameters = {
3696
+ options: Object.assign(
3697
+ {
3698
+ url: (rootUrl + '/sql/v1beta4/{+parent}/backups').replace(
3699
+ /([^:]\/)\/+/g,
3700
+ '$1'
3701
+ ),
3702
+ method: 'GET',
3703
+ apiVersion: '',
3704
+ },
3705
+ options
3706
+ ),
3707
+ params,
3708
+ requiredParams: ['parent'],
3709
+ pathParams: ['parent'],
3710
+ context: this.context,
3711
+ };
3712
+ if (callback) {
3713
+ createAPIRequest<Schema$ListBackupsResponse>(
3714
+ parameters,
3715
+ callback as BodyResponseCallback<unknown>
3716
+ );
3717
+ } else {
3718
+ return createAPIRequest<Schema$ListBackupsResponse>(parameters);
3719
+ }
3720
+ }
3721
+
3722
+ /**
3723
+ * Updates the retention period and the description of the backup. You can use this API to update final backups only.
3724
+ *
3725
+ * @param params - Parameters for request
3726
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
3727
+ * @param callback - Optional callback that handles the response.
3728
+ * @returns A promise if used with async/await, or void if used with a callback.
3729
+ */
3730
+ updateBackup(
3731
+ params: Params$Resource$Backups$Updatebackup,
3732
+ options: StreamMethodOptions
3733
+ ): GaxiosPromise<Readable>;
3734
+ updateBackup(
3735
+ params?: Params$Resource$Backups$Updatebackup,
3736
+ options?: MethodOptions
3737
+ ): GaxiosPromise<Schema$Operation>;
3738
+ updateBackup(
3739
+ params: Params$Resource$Backups$Updatebackup,
3740
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
3741
+ callback: BodyResponseCallback<Readable>
3742
+ ): void;
3743
+ updateBackup(
3744
+ params: Params$Resource$Backups$Updatebackup,
3745
+ options: MethodOptions | BodyResponseCallback<Schema$Operation>,
3746
+ callback: BodyResponseCallback<Schema$Operation>
3747
+ ): void;
3748
+ updateBackup(
3749
+ params: Params$Resource$Backups$Updatebackup,
3750
+ callback: BodyResponseCallback<Schema$Operation>
3751
+ ): void;
3752
+ updateBackup(callback: BodyResponseCallback<Schema$Operation>): void;
3753
+ updateBackup(
3754
+ paramsOrCallback?:
3755
+ | Params$Resource$Backups$Updatebackup
3756
+ | BodyResponseCallback<Schema$Operation>
3757
+ | BodyResponseCallback<Readable>,
3758
+ optionsOrCallback?:
3759
+ | MethodOptions
3760
+ | StreamMethodOptions
3761
+ | BodyResponseCallback<Schema$Operation>
3762
+ | BodyResponseCallback<Readable>,
3763
+ callback?:
3764
+ | BodyResponseCallback<Schema$Operation>
3765
+ | BodyResponseCallback<Readable>
3766
+ ): void | GaxiosPromise<Schema$Operation> | GaxiosPromise<Readable> {
3767
+ let params = (paramsOrCallback ||
3768
+ {}) as Params$Resource$Backups$Updatebackup;
3769
+ let options = (optionsOrCallback || {}) as MethodOptions;
3770
+
3771
+ if (typeof paramsOrCallback === 'function') {
3772
+ callback = paramsOrCallback;
3773
+ params = {} as Params$Resource$Backups$Updatebackup;
3774
+ options = {};
3775
+ }
3776
+
3777
+ if (typeof optionsOrCallback === 'function') {
3778
+ callback = optionsOrCallback;
3779
+ options = {};
3780
+ }
3781
+
3782
+ const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/';
3783
+ const parameters = {
3784
+ options: Object.assign(
3785
+ {
3786
+ url: (rootUrl + '/sql/v1beta4/{+name}').replace(
3787
+ /([^:]\/)\/+/g,
3788
+ '$1'
3789
+ ),
3790
+ method: 'PATCH',
3791
+ apiVersion: '',
3792
+ },
3793
+ options
3794
+ ),
3795
+ params,
3796
+ requiredParams: ['name'],
3797
+ pathParams: ['name'],
3798
+ context: this.context,
3799
+ };
3800
+ if (callback) {
3801
+ createAPIRequest<Schema$Operation>(
3802
+ parameters,
3803
+ callback as BodyResponseCallback<unknown>
3804
+ );
3805
+ } else {
3806
+ return createAPIRequest<Schema$Operation>(parameters);
3807
+ }
3808
+ }
3809
+ }
3810
+
3811
+ export interface Params$Resource$Backups$Createbackup
3812
+ extends StandardParameters {
3813
+ /**
3814
+ * Required. The parent resource where this backup is created. Format: projects/{project\}
3815
+ */
3816
+ parent?: string;
3817
+
3818
+ /**
3819
+ * Request body metadata
3820
+ */
3821
+ requestBody?: Schema$Backup;
3822
+ }
3823
+ export interface Params$Resource$Backups$Deletebackup
3824
+ extends StandardParameters {
3825
+ /**
3826
+ * Required. The name of the backup to delete. Format: projects/{project\}/backups/{backup\}
3827
+ */
3828
+ name?: string;
3829
+ }
3830
+ export interface Params$Resource$Backups$Getbackup
3831
+ extends StandardParameters {
3832
+ /**
3833
+ * Required. The name of the backup to retrieve. Format: projects/{project\}/backups/{backup\}
3834
+ */
3835
+ name?: string;
3836
+ }
3837
+ export interface Params$Resource$Backups$Listbackups
3838
+ extends StandardParameters {
3839
+ /**
3840
+ * Multiple filter queries are separated by spaces. For example, 'instance:abc AND type:FINAL, 'location:us', 'backupInterval.startTime\>=1950-01-01T01:01:25.771Z'. You can filter by type, instance, backupInterval.startTime (creation time), or location.
3841
+ */
3842
+ filter?: string;
3843
+ /**
3844
+ * The maximum number of backups to return per response. The service might return fewer backups than this value. If a value for this parameter isn't specified, then, at most, 500 backups are returned. The maximum value is 2,000. Any values that you set, which are greater than 2,000, are changed to 2,000.
3845
+ */
3846
+ pageSize?: number;
3847
+ /**
3848
+ * A page token, received from a previous `ListBackups` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBackups` must match the call that provided the page token.
3849
+ */
3850
+ pageToken?: string;
3851
+ /**
3852
+ * Required. The parent that owns this collection of backups. Format: projects/{project\}
3853
+ */
3854
+ parent?: string;
3855
+ }
3856
+ export interface Params$Resource$Backups$Updatebackup
3857
+ extends StandardParameters {
3858
+ /**
3859
+ * Output only. The resource name of the backup. Format: projects/{project\}/backups/{backup\}.
3860
+ */
3861
+ name?: string;
3862
+ /**
3863
+ * The list of fields that you can update. You can update only the description and retention period of the final backup.
3864
+ */
3865
+ updateMask?: string;
3866
+
3867
+ /**
3868
+ * Request body metadata
2881
3869
  */
2882
- project?: string;
3870
+ requestBody?: Schema$Backup;
2883
3871
  }
2884
3872
 
2885
3873
  export class Resource$Connect {
@@ -3829,6 +4817,10 @@ export namespace sqladmin_v1beta4 {
3829
4817
  * Database type and version you want to retrieve flags for. By default, this method returns flags for all database types and versions.
3830
4818
  */
3831
4819
  databaseVersion?: string;
4820
+ /**
4821
+ * Optional. Specify the scope of flags to be returned by SqlFlagsListService. Return list of database flags if unspecified.
4822
+ */
4823
+ flagScope?: string;
3832
4824
  }
3833
4825
 
3834
4826
  export class Resource$Instances {
@@ -3935,7 +4927,7 @@ export namespace sqladmin_v1beta4 {
3935
4927
  }
3936
4928
 
3937
4929
  /**
3938
- * Add a new trusted Certificate Authority (CA) version for the specified instance. Required to prepare for a certificate rotation. If a CA version was previously added but never used in a certificate rotation, this operation replaces that version. There cannot be more than one CA version waiting to be rotated in. For instances that have enabled Certificate Authority Service (CAS) based server CA, please use AddServerCertificate to add a new server certificate.
4930
+ * Add a new trusted Certificate Authority (CA) version for the specified instance. Required to prepare for a certificate rotation. If a CA version was previously added but never used in a certificate rotation, this operation replaces that version. There cannot be more than one CA version waiting to be rotated in. For instances that have enabled Certificate Authority Service (CAS) based server CA, use AddServerCertificate to add a new server certificate.
3939
4931
  *
3940
4932
  * @param params - Parameters for request
3941
4933
  * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
@@ -4022,6 +5014,96 @@ export namespace sqladmin_v1beta4 {
4022
5014
  }
4023
5015
  }
4024
5016
 
5017
+ /**
5018
+ * Add a new trusted server certificate version for the specified instance using Certificate Authority Service (CAS) server CA. Required to prepare for a certificate rotation. If a server certificate version was previously added but never used in a certificate rotation, this operation replaces that version. There cannot be more than one certificate version waiting to be rotated in. For instances not using CAS server CA, use AddServerCa instead.
5019
+ *
5020
+ * @param params - Parameters for request
5021
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
5022
+ * @param callback - Optional callback that handles the response.
5023
+ * @returns A promise if used with async/await, or void if used with a callback.
5024
+ */
5025
+ addServerCertificate(
5026
+ params: Params$Resource$Instances$Addservercertificate,
5027
+ options: StreamMethodOptions
5028
+ ): GaxiosPromise<Readable>;
5029
+ addServerCertificate(
5030
+ params?: Params$Resource$Instances$Addservercertificate,
5031
+ options?: MethodOptions
5032
+ ): GaxiosPromise<Schema$Operation>;
5033
+ addServerCertificate(
5034
+ params: Params$Resource$Instances$Addservercertificate,
5035
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
5036
+ callback: BodyResponseCallback<Readable>
5037
+ ): void;
5038
+ addServerCertificate(
5039
+ params: Params$Resource$Instances$Addservercertificate,
5040
+ options: MethodOptions | BodyResponseCallback<Schema$Operation>,
5041
+ callback: BodyResponseCallback<Schema$Operation>
5042
+ ): void;
5043
+ addServerCertificate(
5044
+ params: Params$Resource$Instances$Addservercertificate,
5045
+ callback: BodyResponseCallback<Schema$Operation>
5046
+ ): void;
5047
+ addServerCertificate(
5048
+ callback: BodyResponseCallback<Schema$Operation>
5049
+ ): void;
5050
+ addServerCertificate(
5051
+ paramsOrCallback?:
5052
+ | Params$Resource$Instances$Addservercertificate
5053
+ | BodyResponseCallback<Schema$Operation>
5054
+ | BodyResponseCallback<Readable>,
5055
+ optionsOrCallback?:
5056
+ | MethodOptions
5057
+ | StreamMethodOptions
5058
+ | BodyResponseCallback<Schema$Operation>
5059
+ | BodyResponseCallback<Readable>,
5060
+ callback?:
5061
+ | BodyResponseCallback<Schema$Operation>
5062
+ | BodyResponseCallback<Readable>
5063
+ ): void | GaxiosPromise<Schema$Operation> | GaxiosPromise<Readable> {
5064
+ let params = (paramsOrCallback ||
5065
+ {}) as Params$Resource$Instances$Addservercertificate;
5066
+ let options = (optionsOrCallback || {}) as MethodOptions;
5067
+
5068
+ if (typeof paramsOrCallback === 'function') {
5069
+ callback = paramsOrCallback;
5070
+ params = {} as Params$Resource$Instances$Addservercertificate;
5071
+ options = {};
5072
+ }
5073
+
5074
+ if (typeof optionsOrCallback === 'function') {
5075
+ callback = optionsOrCallback;
5076
+ options = {};
5077
+ }
5078
+
5079
+ const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/';
5080
+ const parameters = {
5081
+ options: Object.assign(
5082
+ {
5083
+ url: (
5084
+ rootUrl +
5085
+ '/sql/v1beta4/projects/{project}/instances/{instance}/addServerCertificate'
5086
+ ).replace(/([^:]\/)\/+/g, '$1'),
5087
+ method: 'POST',
5088
+ apiVersion: '',
5089
+ },
5090
+ options
5091
+ ),
5092
+ params,
5093
+ requiredParams: ['project', 'instance'],
5094
+ pathParams: ['instance', 'project'],
5095
+ context: this.context,
5096
+ };
5097
+ if (callback) {
5098
+ createAPIRequest<Schema$Operation>(
5099
+ parameters,
5100
+ callback as BodyResponseCallback<unknown>
5101
+ );
5102
+ } else {
5103
+ return createAPIRequest<Schema$Operation>(parameters);
5104
+ }
5105
+ }
5106
+
4025
5107
  /**
4026
5108
  * Creates a Cloud SQL instance as a clone of the source instance. Using this operation might cause your instance to restart.
4027
5109
  *
@@ -4992,6 +6074,103 @@ export namespace sqladmin_v1beta4 {
4992
6074
  }
4993
6075
  }
4994
6076
 
6077
+ /**
6078
+ * Lists all versions of server certificates and certificate authorities (CAs) for the specified instance. There can be up to three sets of certs listed: the certificate that is currently in use, a future that has been added but not yet used to sign a certificate, and a certificate that has been rotated out. For instances not using Certificate Authority Service (CAS) server CA, use ListServerCas instead.
6079
+ *
6080
+ * @param params - Parameters for request
6081
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
6082
+ * @param callback - Optional callback that handles the response.
6083
+ * @returns A promise if used with async/await, or void if used with a callback.
6084
+ */
6085
+ ListServerCertificates(
6086
+ params: Params$Resource$Instances$Listservercertificates,
6087
+ options: StreamMethodOptions
6088
+ ): GaxiosPromise<Readable>;
6089
+ ListServerCertificates(
6090
+ params?: Params$Resource$Instances$Listservercertificates,
6091
+ options?: MethodOptions
6092
+ ): GaxiosPromise<Schema$InstancesListServerCertificatesResponse>;
6093
+ ListServerCertificates(
6094
+ params: Params$Resource$Instances$Listservercertificates,
6095
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
6096
+ callback: BodyResponseCallback<Readable>
6097
+ ): void;
6098
+ ListServerCertificates(
6099
+ params: Params$Resource$Instances$Listservercertificates,
6100
+ options:
6101
+ | MethodOptions
6102
+ | BodyResponseCallback<Schema$InstancesListServerCertificatesResponse>,
6103
+ callback: BodyResponseCallback<Schema$InstancesListServerCertificatesResponse>
6104
+ ): void;
6105
+ ListServerCertificates(
6106
+ params: Params$Resource$Instances$Listservercertificates,
6107
+ callback: BodyResponseCallback<Schema$InstancesListServerCertificatesResponse>
6108
+ ): void;
6109
+ ListServerCertificates(
6110
+ callback: BodyResponseCallback<Schema$InstancesListServerCertificatesResponse>
6111
+ ): void;
6112
+ ListServerCertificates(
6113
+ paramsOrCallback?:
6114
+ | Params$Resource$Instances$Listservercertificates
6115
+ | BodyResponseCallback<Schema$InstancesListServerCertificatesResponse>
6116
+ | BodyResponseCallback<Readable>,
6117
+ optionsOrCallback?:
6118
+ | MethodOptions
6119
+ | StreamMethodOptions
6120
+ | BodyResponseCallback<Schema$InstancesListServerCertificatesResponse>
6121
+ | BodyResponseCallback<Readable>,
6122
+ callback?:
6123
+ | BodyResponseCallback<Schema$InstancesListServerCertificatesResponse>
6124
+ | BodyResponseCallback<Readable>
6125
+ ):
6126
+ | void
6127
+ | GaxiosPromise<Schema$InstancesListServerCertificatesResponse>
6128
+ | GaxiosPromise<Readable> {
6129
+ let params = (paramsOrCallback ||
6130
+ {}) as Params$Resource$Instances$Listservercertificates;
6131
+ let options = (optionsOrCallback || {}) as MethodOptions;
6132
+
6133
+ if (typeof paramsOrCallback === 'function') {
6134
+ callback = paramsOrCallback;
6135
+ params = {} as Params$Resource$Instances$Listservercertificates;
6136
+ options = {};
6137
+ }
6138
+
6139
+ if (typeof optionsOrCallback === 'function') {
6140
+ callback = optionsOrCallback;
6141
+ options = {};
6142
+ }
6143
+
6144
+ const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/';
6145
+ const parameters = {
6146
+ options: Object.assign(
6147
+ {
6148
+ url: (
6149
+ rootUrl +
6150
+ '/sql/v1beta4/projects/{project}/instances/{instance}/listServerCertificates'
6151
+ ).replace(/([^:]\/)\/+/g, '$1'),
6152
+ method: 'GET',
6153
+ apiVersion: '',
6154
+ },
6155
+ options
6156
+ ),
6157
+ params,
6158
+ requiredParams: ['project', 'instance'],
6159
+ pathParams: ['instance', 'project'],
6160
+ context: this.context,
6161
+ };
6162
+ if (callback) {
6163
+ createAPIRequest<Schema$InstancesListServerCertificatesResponse>(
6164
+ parameters,
6165
+ callback as BodyResponseCallback<unknown>
6166
+ );
6167
+ } else {
6168
+ return createAPIRequest<Schema$InstancesListServerCertificatesResponse>(
6169
+ parameters
6170
+ );
6171
+ }
6172
+ }
6173
+
4995
6174
  /**
4996
6175
  * Partially updates settings of a Cloud SQL instance by merging the request with the current configuration. This method supports patch semantics.
4997
6176
  *
@@ -5616,7 +6795,7 @@ export namespace sqladmin_v1beta4 {
5616
6795
  }
5617
6796
 
5618
6797
  /**
5619
- * Rotates the server certificate to one signed by the Certificate Authority (CA) version previously added with the addServerCA method. For instances that have enabled Certificate Authority Service (CAS) based server CA, please use RotateServerCertificate to rotate the server certificate.
6798
+ * Rotates the server certificate to one signed by the Certificate Authority (CA) version previously added with the addServerCA method. For instances that have enabled Certificate Authority Service (CAS) based server CA, use RotateServerCertificate to rotate the server certificate.
5620
6799
  *
5621
6800
  * @param params - Parameters for request
5622
6801
  * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
@@ -5703,6 +6882,96 @@ export namespace sqladmin_v1beta4 {
5703
6882
  }
5704
6883
  }
5705
6884
 
6885
+ /**
6886
+ * Rotates the server certificate version to one previously added with the addServerCertificate method. For instances not using Certificate Authority Service (CAS) server CA, use RotateServerCa instead.
6887
+ *
6888
+ * @param params - Parameters for request
6889
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
6890
+ * @param callback - Optional callback that handles the response.
6891
+ * @returns A promise if used with async/await, or void if used with a callback.
6892
+ */
6893
+ RotateServerCertificate(
6894
+ params: Params$Resource$Instances$Rotateservercertificate,
6895
+ options: StreamMethodOptions
6896
+ ): GaxiosPromise<Readable>;
6897
+ RotateServerCertificate(
6898
+ params?: Params$Resource$Instances$Rotateservercertificate,
6899
+ options?: MethodOptions
6900
+ ): GaxiosPromise<Schema$Operation>;
6901
+ RotateServerCertificate(
6902
+ params: Params$Resource$Instances$Rotateservercertificate,
6903
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
6904
+ callback: BodyResponseCallback<Readable>
6905
+ ): void;
6906
+ RotateServerCertificate(
6907
+ params: Params$Resource$Instances$Rotateservercertificate,
6908
+ options: MethodOptions | BodyResponseCallback<Schema$Operation>,
6909
+ callback: BodyResponseCallback<Schema$Operation>
6910
+ ): void;
6911
+ RotateServerCertificate(
6912
+ params: Params$Resource$Instances$Rotateservercertificate,
6913
+ callback: BodyResponseCallback<Schema$Operation>
6914
+ ): void;
6915
+ RotateServerCertificate(
6916
+ callback: BodyResponseCallback<Schema$Operation>
6917
+ ): void;
6918
+ RotateServerCertificate(
6919
+ paramsOrCallback?:
6920
+ | Params$Resource$Instances$Rotateservercertificate
6921
+ | BodyResponseCallback<Schema$Operation>
6922
+ | BodyResponseCallback<Readable>,
6923
+ optionsOrCallback?:
6924
+ | MethodOptions
6925
+ | StreamMethodOptions
6926
+ | BodyResponseCallback<Schema$Operation>
6927
+ | BodyResponseCallback<Readable>,
6928
+ callback?:
6929
+ | BodyResponseCallback<Schema$Operation>
6930
+ | BodyResponseCallback<Readable>
6931
+ ): void | GaxiosPromise<Schema$Operation> | GaxiosPromise<Readable> {
6932
+ let params = (paramsOrCallback ||
6933
+ {}) as Params$Resource$Instances$Rotateservercertificate;
6934
+ let options = (optionsOrCallback || {}) as MethodOptions;
6935
+
6936
+ if (typeof paramsOrCallback === 'function') {
6937
+ callback = paramsOrCallback;
6938
+ params = {} as Params$Resource$Instances$Rotateservercertificate;
6939
+ options = {};
6940
+ }
6941
+
6942
+ if (typeof optionsOrCallback === 'function') {
6943
+ callback = optionsOrCallback;
6944
+ options = {};
6945
+ }
6946
+
6947
+ const rootUrl = options.rootUrl || 'https://sqladmin.googleapis.com/';
6948
+ const parameters = {
6949
+ options: Object.assign(
6950
+ {
6951
+ url: (
6952
+ rootUrl +
6953
+ '/sql/v1beta4/projects/{project}/instances/{instance}/rotateServerCertificate'
6954
+ ).replace(/([^:]\/)\/+/g, '$1'),
6955
+ method: 'POST',
6956
+ apiVersion: '',
6957
+ },
6958
+ options
6959
+ ),
6960
+ params,
6961
+ requiredParams: ['project', 'instance'],
6962
+ pathParams: ['instance', 'project'],
6963
+ context: this.context,
6964
+ };
6965
+ if (callback) {
6966
+ createAPIRequest<Schema$Operation>(
6967
+ parameters,
6968
+ callback as BodyResponseCallback<unknown>
6969
+ );
6970
+ } else {
6971
+ return createAPIRequest<Schema$Operation>(parameters);
6972
+ }
6973
+ }
6974
+
5706
6975
  /**
5707
6976
  * Starts the replication in the read replica instance.
5708
6977
  *
@@ -5880,7 +7149,7 @@ export namespace sqladmin_v1beta4 {
5880
7149
  }
5881
7150
 
5882
7151
  /**
5883
- * Switches over from the primary instance to the designated DR replica instance.
7152
+ * Switches over from the primary instance to the DR replica instance.
5884
7153
  *
5885
7154
  * @param params - Parameters for request
5886
7155
  * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
@@ -6169,6 +7438,17 @@ export namespace sqladmin_v1beta4 {
6169
7438
  */
6170
7439
  project?: string;
6171
7440
  }
7441
+ export interface Params$Resource$Instances$Addservercertificate
7442
+ extends StandardParameters {
7443
+ /**
7444
+ * Required. Cloud SQL instance ID. This does not include the project ID.
7445
+ */
7446
+ instance?: string;
7447
+ /**
7448
+ * Required. Project ID of the project that contains the instance.
7449
+ */
7450
+ project?: string;
7451
+ }
6172
7452
  export interface Params$Resource$Instances$Clone extends StandardParameters {
6173
7453
  /**
6174
7454
  * The ID of the Cloud SQL instance to be cloned (source). This does not include the project ID.
@@ -6185,6 +7465,22 @@ export namespace sqladmin_v1beta4 {
6185
7465
  requestBody?: Schema$InstancesCloneRequest;
6186
7466
  }
6187
7467
  export interface Params$Resource$Instances$Delete extends StandardParameters {
7468
+ /**
7469
+ * Flag to opt-in for final backup. By default, it is turned off.
7470
+ */
7471
+ enableFinalBackup?: boolean;
7472
+ /**
7473
+ * Optional. The description of the final backup.
7474
+ */
7475
+ finalBackupDescription?: string;
7476
+ /**
7477
+ * Optional. Final Backup expiration time. Timestamp in UTC of when this resource is considered expired.
7478
+ */
7479
+ finalBackupExpiryTime?: string;
7480
+ /**
7481
+ * Optional. Retention period of the final backup.
7482
+ */
7483
+ finalBackupTtlDays?: string;
6188
7484
  /**
6189
7485
  * Cloud SQL instance ID. This does not include the project ID.
6190
7486
  */
@@ -6321,6 +7617,17 @@ export namespace sqladmin_v1beta4 {
6321
7617
  */
6322
7618
  project?: string;
6323
7619
  }
7620
+ export interface Params$Resource$Instances$Listservercertificates
7621
+ extends StandardParameters {
7622
+ /**
7623
+ * Required. Cloud SQL instance ID. This does not include the project ID.
7624
+ */
7625
+ instance?: string;
7626
+ /**
7627
+ * Required. Project ID of the project that contains the instance.
7628
+ */
7629
+ project?: string;
7630
+ }
6324
7631
  export interface Params$Resource$Instances$Patch extends StandardParameters {
6325
7632
  /**
6326
7633
  * Cloud SQL instance ID. This does not include the project ID.
@@ -6339,7 +7646,7 @@ export namespace sqladmin_v1beta4 {
6339
7646
  export interface Params$Resource$Instances$Promotereplica
6340
7647
  extends StandardParameters {
6341
7648
  /**
6342
- * Set to true to invoke a replica failover to the designated DR replica. As part of replica failover, the promote operation attempts to add the original primary instance as a replica of the promoted DR replica when the original primary instance comes back online. If set to false or not specified, then the original primary instance becomes an independent Cloud SQL primary instance. Only applicable to MySQL.
7649
+ * Set to true to invoke a replica failover to the DR replica. As part of replica failover, the promote operation attempts to add the original primary instance as a replica of the promoted DR replica when the original primary instance comes back online. If set to false or not specified, then the original primary instance becomes an independent Cloud SQL primary instance.
6343
7650
  */
6344
7651
  failover?: boolean;
6345
7652
  /**
@@ -6432,6 +7739,22 @@ export namespace sqladmin_v1beta4 {
6432
7739
  */
6433
7740
  requestBody?: Schema$InstancesRotateServerCaRequest;
6434
7741
  }
7742
+ export interface Params$Resource$Instances$Rotateservercertificate
7743
+ extends StandardParameters {
7744
+ /**
7745
+ * Required. Cloud SQL instance ID. This does not include the project ID.
7746
+ */
7747
+ instance?: string;
7748
+ /**
7749
+ * Required. Project ID of the project that contains the instance.
7750
+ */
7751
+ project?: string;
7752
+
7753
+ /**
7754
+ * Request body metadata
7755
+ */
7756
+ requestBody?: Schema$InstancesRotateServerCertificateRequest;
7757
+ }
6435
7758
  export interface Params$Resource$Instances$Startreplica
6436
7759
  extends StandardParameters {
6437
7760
  /**
@@ -6457,7 +7780,7 @@ export namespace sqladmin_v1beta4 {
6457
7780
  export interface Params$Resource$Instances$Switchover
6458
7781
  extends StandardParameters {
6459
7782
  /**
6460
- * Optional. (MySQL only) Cloud SQL instance operations timeout, which is a sum of all database operations. Default value is 10 minutes and can be modified to a maximum value of 24 hours.
7783
+ * Optional. (MySQL and PostgreSQL only) Cloud SQL instance operations timeout, which is a sum of all database operations. Default value is 10 minutes and can be modified to a maximum value of 24 hours.
6461
7784
  */
6462
7785
  dbTimeout?: string;
6463
7786
  /**