mirror of
https://github.com/googleapis/googleapis.git
synced 2026-08-14 12:42:59 +02:00
docs: A comment for field `replication_log_archiving_enabled` in message `.google.cloud.sql.v1beta4.BackupConfiguration` is changed PiperOrigin-RevId: 952133611
1773 lines
60 KiB
Protocol Buffer
1773 lines
60 KiB
Protocol Buffer
// Copyright 2026 Google LLC
|
||
//
|
||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||
// you may not use this file except in compliance with the License.
|
||
// You may obtain a copy of the License at
|
||
//
|
||
// http://www.apache.org/licenses/LICENSE-2.0
|
||
//
|
||
// Unless required by applicable law or agreed to in writing, software
|
||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
// See the License for the specific language governing permissions and
|
||
// limitations under the License.
|
||
|
||
syntax = "proto3";
|
||
|
||
package google.cloud.sql.v1beta4;
|
||
|
||
import "google/api/annotations.proto";
|
||
import "google/api/client.proto";
|
||
import "google/api/field_behavior.proto";
|
||
import "google/api/resource.proto";
|
||
import "google/cloud/sql/v1beta4/cloud_sql_resources.proto";
|
||
import "google/protobuf/duration.proto";
|
||
import "google/protobuf/empty.proto";
|
||
import "google/protobuf/field_mask.proto";
|
||
import "google/protobuf/timestamp.proto";
|
||
import "google/rpc/status.proto";
|
||
|
||
option go_package = "cloud.google.com/go/sql/apiv1beta4/sqlpb;sqlpb";
|
||
option java_multiple_files = true;
|
||
option java_outer_classname = "CloudSqlServiceProto";
|
||
option java_package = "com.google.cloud.sql.v1beta4";
|
||
|
||
service SqlBackupRunsService {
|
||
option (google.api.default_host) = "sqladmin.googleapis.com";
|
||
option (google.api.oauth_scopes) =
|
||
"https://www.googleapis.com/auth/cloud-platform,"
|
||
"https://www.googleapis.com/auth/sqlservice.admin";
|
||
|
||
// Deletes the backup taken by a backup run.
|
||
rpc Delete(SqlBackupRunsDeleteRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
delete: "/sql/v1beta4/projects/{project}/instances/{instance}/backupRuns/{id}"
|
||
};
|
||
}
|
||
|
||
// Retrieves a resource containing information about a backup run.
|
||
rpc Get(SqlBackupRunsGetRequest) returns (BackupRun) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/backupRuns/{id}"
|
||
};
|
||
}
|
||
|
||
// Creates a new backup run on demand.
|
||
rpc Insert(SqlBackupRunsInsertRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/backupRuns"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Lists all backup runs associated with the project or a given instance and
|
||
// configuration in the reverse chronological order of the backup initiation
|
||
// time.
|
||
rpc List(SqlBackupRunsListRequest) returns (BackupRunsListResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/backupRuns"
|
||
};
|
||
}
|
||
}
|
||
|
||
service SqlDatabasesService {
|
||
option (google.api.default_host) = "sqladmin.googleapis.com";
|
||
option (google.api.oauth_scopes) =
|
||
"https://www.googleapis.com/auth/cloud-platform,"
|
||
"https://www.googleapis.com/auth/sqlservice.admin";
|
||
|
||
// Deletes a database from a Cloud SQL instance.
|
||
rpc Delete(SqlDatabasesDeleteRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
delete: "/sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}"
|
||
};
|
||
}
|
||
|
||
// Retrieves a resource containing information about a database inside a Cloud
|
||
// SQL instance.
|
||
rpc Get(SqlDatabasesGetRequest) returns (Database) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}"
|
||
};
|
||
}
|
||
|
||
// Inserts a resource containing information about a database inside a Cloud
|
||
// SQL instance.
|
||
//
|
||
// **Note:** You can't modify the default character set and collation.
|
||
rpc Insert(SqlDatabasesInsertRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/databases"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Lists databases in the specified Cloud SQL instance.
|
||
rpc List(SqlDatabasesListRequest) returns (DatabasesListResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/databases"
|
||
};
|
||
}
|
||
|
||
// Partially updates a resource containing information about a database inside
|
||
// a Cloud SQL instance. This method supports patch semantics.
|
||
rpc Patch(SqlDatabasesUpdateRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
patch: "/sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Updates a resource containing information about a database inside a Cloud
|
||
// SQL instance.
|
||
rpc Update(SqlDatabasesUpdateRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
put: "/sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}"
|
||
body: "body"
|
||
};
|
||
}
|
||
}
|
||
|
||
service SqlFlagsService {
|
||
option (google.api.default_host) = "sqladmin.googleapis.com";
|
||
option (google.api.oauth_scopes) =
|
||
"https://www.googleapis.com/auth/cloud-platform,"
|
||
"https://www.googleapis.com/auth/sqlservice.admin";
|
||
|
||
// Lists all available database flags for Cloud SQL instances.
|
||
rpc List(SqlFlagsListRequest) returns (FlagsListResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/flags"
|
||
};
|
||
}
|
||
}
|
||
|
||
service SqlInstancesService {
|
||
option (google.api.default_host) = "sqladmin.googleapis.com";
|
||
option (google.api.oauth_scopes) =
|
||
"https://www.googleapis.com/auth/cloud-platform,"
|
||
"https://www.googleapis.com/auth/sqlservice.admin";
|
||
|
||
// 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.
|
||
rpc AddServerCa(SqlInstancesAddServerCaRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/addServerCa"
|
||
};
|
||
}
|
||
|
||
// 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.
|
||
rpc AddServerCertificate(SqlInstancesAddServerCertificateRequest)
|
||
returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/addServerCertificate"
|
||
};
|
||
}
|
||
|
||
// Adds a new Entra ID certificate for the specified instance. If an Entra ID
|
||
// certificate was previously added but never used in a certificate rotation,
|
||
// this operation replaces that version.
|
||
rpc AddEntraIdCertificate(SqlInstancesAddEntraIdCertificateRequest)
|
||
returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/addEntraIdCertificate"
|
||
};
|
||
}
|
||
|
||
// Creates a Cloud SQL instance as a clone of the source instance. Using this
|
||
// operation might cause your instance to restart.
|
||
rpc Clone(SqlInstancesCloneRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/clone"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Deletes a Cloud SQL instance.
|
||
rpc Delete(SqlInstancesDeleteRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
delete: "/sql/v1beta4/projects/{project}/instances/{instance}"
|
||
};
|
||
}
|
||
|
||
// Demotes the stand-alone instance to be a Cloud SQL read replica for an
|
||
// external database server.
|
||
rpc DemoteMaster(SqlInstancesDemoteMasterRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/demoteMaster"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Demotes an existing standalone instance to be a Cloud SQL read replica
|
||
// for an external database server.
|
||
rpc Demote(SqlInstancesDemoteRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/demote"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Exports data from a Cloud SQL instance to a Cloud Storage bucket as a SQL
|
||
// dump or CSV file.
|
||
rpc Export(SqlInstancesExportRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/export"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Initiates a manual failover of a high availability (HA) primary instance
|
||
// to a standby instance, which becomes the primary instance. Users are
|
||
// then rerouted to the new primary. For more information, see the
|
||
// [Overview of high
|
||
// availability](https://cloud.google.com/sql/docs/mysql/high-availability)
|
||
// page in the Cloud SQL documentation.
|
||
// If using Legacy HA (MySQL only), this causes the instance to failover to
|
||
// its failover replica instance.
|
||
rpc Failover(SqlInstancesFailoverRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/failover"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Reencrypt CMEK instance with latest key version.
|
||
rpc Reencrypt(SqlInstancesReencryptRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/reencrypt"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Retrieves a resource containing information about a Cloud SQL instance.
|
||
rpc Get(SqlInstancesGetRequest) returns (DatabaseInstance) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}"
|
||
};
|
||
}
|
||
|
||
// Imports data into a Cloud SQL instance from a SQL dump or CSV file in
|
||
// Cloud Storage.
|
||
rpc Import(SqlInstancesImportRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/import"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Creates a new Cloud SQL instance.
|
||
rpc Insert(SqlInstancesInsertRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Lists instances under a given project.
|
||
rpc List(SqlInstancesListRequest) returns (InstancesListResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances"
|
||
};
|
||
}
|
||
|
||
// Lists all of the trusted Certificate Authorities (CAs) for the specified
|
||
// instance. There can be up to three CAs listed: the CA that was used to sign
|
||
// the certificate that is currently in use, a CA that has been added but not
|
||
// yet used to sign a certificate, and a CA used to sign a certificate that
|
||
// has previously rotated out.
|
||
rpc ListServerCas(SqlInstancesListServerCasRequest)
|
||
returns (InstancesListServerCasResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/listServerCas"
|
||
};
|
||
}
|
||
|
||
// 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.
|
||
rpc ListServerCertificates(SqlInstancesListServerCertificatesRequest)
|
||
returns (InstancesListServerCertificatesResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/listServerCertificates"
|
||
};
|
||
}
|
||
|
||
// Lists all versions of EntraID certificates for the specified instance.
|
||
// There can be up to three sets of certificates 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.
|
||
rpc ListEntraIdCertificates(SqlInstancesListEntraIdCertificatesRequest)
|
||
returns (InstancesListEntraIdCertificatesResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/listEntraIdCertificates"
|
||
};
|
||
}
|
||
|
||
// Partially updates settings of a Cloud SQL instance by merging the request
|
||
// with the current configuration. This method supports patch semantics.
|
||
rpc Patch(SqlInstancesPatchRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
patch: "/sql/v1beta4/projects/{project}/instances/{instance}"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Promotes the read replica instance to be an independent Cloud SQL
|
||
// primary instance.
|
||
// Using this operation might cause your instance to restart.
|
||
rpc PromoteReplica(SqlInstancesPromoteReplicaRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/promoteReplica"
|
||
};
|
||
}
|
||
|
||
// Switches over from the primary instance to the DR replica
|
||
// instance.
|
||
rpc Switchover(SqlInstancesSwitchoverRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/switchover"
|
||
};
|
||
}
|
||
|
||
// Deletes all client certificates and generates a new server SSL certificate
|
||
// for the instance.
|
||
rpc ResetSslConfig(SqlInstancesResetSslConfigRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/resetSslConfig"
|
||
};
|
||
}
|
||
|
||
// Restarts a Cloud SQL instance.
|
||
rpc Restart(SqlInstancesRestartRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/restart"
|
||
};
|
||
}
|
||
|
||
// Restores a backup of a Cloud SQL instance. Using this operation might cause
|
||
// your instance to restart.
|
||
rpc RestoreBackup(SqlInstancesRestoreBackupRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/restoreBackup"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// 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.
|
||
rpc RotateServerCa(SqlInstancesRotateServerCaRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/rotateServerCa"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// 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.
|
||
rpc RotateServerCertificate(SqlInstancesRotateServerCertificateRequest)
|
||
returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/rotateServerCertificate"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Rotates the Entra Id certificate version to one previously added with the
|
||
// addEntraIdCertificate method.
|
||
rpc RotateEntraIdCertificate(SqlInstancesRotateEntraIdCertificateRequest)
|
||
returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/rotateEntraIdCertificate"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Starts the replication in the read replica instance.
|
||
rpc StartReplica(SqlInstancesStartReplicaRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/startReplica"
|
||
};
|
||
}
|
||
|
||
// Stops the replication in the read replica instance.
|
||
rpc StopReplica(SqlInstancesStopReplicaRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/stopReplica"
|
||
};
|
||
}
|
||
|
||
// Truncate MySQL general and slow query log tables
|
||
// MySQL only.
|
||
rpc TruncateLog(SqlInstancesTruncateLogRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/truncateLog"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Updates settings of a Cloud SQL instance. Using this operation might cause
|
||
// your instance to restart.
|
||
rpc Update(SqlInstancesUpdateRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
put: "/sql/v1beta4/projects/{project}/instances/{instance}"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Generates a short-lived X509 certificate containing the provided public key
|
||
// and signed by a private key specific to the target instance. Users may use
|
||
// the certificate to authenticate as themselves when connecting to the
|
||
// database.
|
||
rpc CreateEphemeral(SqlInstancesCreateEphemeralCertRequest)
|
||
returns (SslCert) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/createEphemeral"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Reschedules the maintenance on the given instance.
|
||
rpc RescheduleMaintenance(SqlInstancesRescheduleMaintenanceRequest)
|
||
returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/rescheduleMaintenance"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Verify External primary instance external sync settings.
|
||
rpc VerifyExternalSyncSettings(SqlInstancesVerifyExternalSyncSettingsRequest)
|
||
returns (SqlInstancesVerifyExternalSyncSettingsResponse) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/verifyExternalSyncSettings"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// Start External primary instance migration.
|
||
rpc StartExternalSync(SqlInstancesStartExternalSyncRequest)
|
||
returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/startExternalSync"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// Perform Disk Shrink on primary instance.
|
||
rpc PerformDiskShrink(SqlInstancesPerformDiskShrinkRequest)
|
||
returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/performDiskShrink"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Get Disk Shrink Config for a given instance.
|
||
rpc GetDiskShrinkConfig(SqlInstancesGetDiskShrinkConfigRequest)
|
||
returns (SqlInstancesGetDiskShrinkConfigResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/getDiskShrinkConfig"
|
||
};
|
||
}
|
||
|
||
// Reset Replica Size to primary instance disk size.
|
||
rpc ResetReplicaSize(SqlInstancesResetReplicaSizeRequest)
|
||
returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/resetReplicaSize"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// Get Latest Recovery Time for a given instance.
|
||
rpc GetLatestRecoveryTime(SqlInstancesGetLatestRecoveryTimeRequest)
|
||
returns (SqlInstancesGetLatestRecoveryTimeResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/getLatestRecoveryTime"
|
||
};
|
||
}
|
||
|
||
// Execute SQL statements.
|
||
rpc ExecuteSql(SqlInstancesExecuteSqlRequest)
|
||
returns (SqlInstancesExecuteSqlResponse) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/executeSql"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Acquire a lease for the setup of SQL Server Reporting Services (SSRS).
|
||
rpc AcquireSsrsLease(SqlInstancesAcquireSsrsLeaseRequest)
|
||
returns (SqlInstancesAcquireSsrsLeaseResponse) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/acquireSsrsLease"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Release a lease for the setup of SQL Server Reporting Services (SSRS).
|
||
rpc ReleaseSsrsLease(SqlInstancesReleaseSsrsLeaseRequest)
|
||
returns (SqlInstancesReleaseSsrsLeaseResponse) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/releaseSsrsLease"
|
||
};
|
||
}
|
||
|
||
// Execute MVU Pre-checks
|
||
rpc PreCheckMajorVersionUpgrade(
|
||
SqlInstancesPreCheckMajorVersionUpgradeRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/preCheckMajorVersionUpgrade"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Point in time restore for an instance managed by Google Cloud Backup and
|
||
// Disaster Recovery.
|
||
rpc PointInTimeRestore(SqlInstancesPointInTimeRestoreRequest)
|
||
returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/{parent=projects/*}:pointInTimeRestore"
|
||
body: "context"
|
||
};
|
||
}
|
||
}
|
||
|
||
service SqlOperationsService {
|
||
option (google.api.default_host) = "sqladmin.googleapis.com";
|
||
option (google.api.oauth_scopes) =
|
||
"https://www.googleapis.com/auth/cloud-platform,"
|
||
"https://www.googleapis.com/auth/sqlservice.admin";
|
||
|
||
// Retrieves an instance operation that has been performed on an instance.
|
||
rpc Get(SqlOperationsGetRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/operations/{operation}"
|
||
};
|
||
}
|
||
|
||
// Lists all instance operations that have been performed on the given Cloud
|
||
// SQL instance in the reverse chronological order of the start time.
|
||
rpc List(SqlOperationsListRequest) returns (OperationsListResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/operations"
|
||
};
|
||
}
|
||
|
||
// Cancels an instance operation that has been performed on an instance.
|
||
// Ordinarily, this method name should be `CancelSqlOperation`.
|
||
rpc Cancel(SqlOperationsCancelRequest) returns (google.protobuf.Empty) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/operations/{operation}/cancel"
|
||
};
|
||
}
|
||
}
|
||
|
||
service SqlSslCertsService {
|
||
option (google.api.default_host) = "sqladmin.googleapis.com";
|
||
option (google.api.oauth_scopes) =
|
||
"https://www.googleapis.com/auth/cloud-platform,"
|
||
"https://www.googleapis.com/auth/sqlservice.admin";
|
||
|
||
// Deletes the SSL certificate. For First Generation instances, the
|
||
// certificate remains valid until the instance is restarted.
|
||
rpc Delete(SqlSslCertsDeleteRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
delete: "/sql/v1beta4/projects/{project}/instances/{instance}/sslCerts/{sha1_fingerprint}"
|
||
};
|
||
}
|
||
|
||
// Retrieves a particular SSL certificate. Does not include the private key
|
||
// (required for usage). The private key must be saved from the response to
|
||
// initial creation.
|
||
rpc Get(SqlSslCertsGetRequest) returns (SslCert) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/sslCerts/{sha1_fingerprint}"
|
||
};
|
||
}
|
||
|
||
// Creates an SSL certificate and returns it along with the private key and
|
||
// server certificate authority. The new certificate will not be usable until
|
||
// the instance is restarted.
|
||
rpc Insert(SqlSslCertsInsertRequest) returns (SslCertsInsertResponse) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/projects/{project}/instances/{instance}/sslCerts"
|
||
body: "body"
|
||
};
|
||
}
|
||
|
||
// Lists all of the current SSL certificates for the instance.
|
||
rpc List(SqlSslCertsListRequest) returns (SslCertsListResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/projects/{project}/instances/{instance}/sslCerts"
|
||
};
|
||
}
|
||
}
|
||
|
||
service SqlBackupsService {
|
||
option (google.api.default_host) = "sqladmin.googleapis.com";
|
||
option (google.api.oauth_scopes) =
|
||
"https://www.googleapis.com/auth/cloud-platform,"
|
||
"https://www.googleapis.com/auth/sqlservice.admin";
|
||
|
||
// Creates a backup for a Cloud SQL instance. This API can be used only to
|
||
// create on-demand backups.
|
||
rpc CreateBackup(CreateBackupRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
post: "/sql/v1beta4/{parent=projects/*}/backups"
|
||
body: "backup"
|
||
};
|
||
option (google.api.method_signature) = "parent, backup";
|
||
}
|
||
|
||
// Retrieves a resource containing information about a backup.
|
||
rpc GetBackup(GetBackupRequest) returns (Backup) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/{name=projects/*/backups/*}"
|
||
};
|
||
option (google.api.method_signature) = "name";
|
||
}
|
||
|
||
// Lists all backups associated with the project.
|
||
rpc ListBackups(ListBackupsRequest) returns (ListBackupsResponse) {
|
||
option (google.api.http) = {
|
||
get: "/sql/v1beta4/{parent=projects/*}/backups"
|
||
};
|
||
option (google.api.method_signature) = "parent";
|
||
}
|
||
|
||
// Updates the retention period and the description of the backup. You can use
|
||
// this API to update final backups only.
|
||
rpc UpdateBackup(UpdateBackupRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
patch: "/sql/v1beta4/{backup.name=projects/*/backups/*}"
|
||
body: "backup"
|
||
};
|
||
option (google.api.method_signature) = "backup, update_mask";
|
||
}
|
||
|
||
// Deletes the backup.
|
||
rpc DeleteBackup(DeleteBackupRequest) returns (Operation) {
|
||
option (google.api.http) = {
|
||
delete: "/sql/v1beta4/{name=projects/*/backups/*}"
|
||
};
|
||
option (google.api.method_signature) = "name";
|
||
}
|
||
}
|
||
|
||
// The request payload to create the backup
|
||
message CreateBackupRequest {
|
||
// Required. The parent resource where this backup is created.
|
||
// Format: projects/{project}
|
||
string parent = 1 [
|
||
(google.api.field_behavior) = REQUIRED,
|
||
(google.api.resource_reference) = {
|
||
child_type: "sqladmin.googleapis.com/Backup"
|
||
}
|
||
];
|
||
|
||
// Required. The Backup to create.
|
||
Backup backup = 2 [(google.api.field_behavior) = REQUIRED];
|
||
}
|
||
|
||
// The request payload to get the backup.
|
||
message GetBackupRequest {
|
||
// Required. The name of the backup to retrieve.
|
||
// Format: projects/{project}/backups/{backup}
|
||
string name = 1 [
|
||
(google.api.field_behavior) = REQUIRED,
|
||
(google.api.resource_reference) = { type: "sqladmin.googleapis.com/Backup" }
|
||
];
|
||
}
|
||
|
||
// The request payload to list the backups.
|
||
message ListBackupsRequest {
|
||
// Required. The parent that owns this collection of backups.
|
||
// Format: projects/{project}
|
||
string parent = 1 [
|
||
(google.api.field_behavior) = REQUIRED,
|
||
(google.api.resource_reference) = {
|
||
child_type: "sqladmin.googleapis.com/Backup"
|
||
}
|
||
];
|
||
|
||
// 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.
|
||
int32 page_size = 2;
|
||
|
||
// 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.
|
||
string page_token = 3;
|
||
|
||
// 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.
|
||
string filter = 4;
|
||
}
|
||
|
||
// The response payload containing a list of the backups.
|
||
message ListBackupsResponse {
|
||
// A list of backups.
|
||
repeated Backup backups = 1;
|
||
|
||
// 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.
|
||
string next_page_token = 2;
|
||
|
||
// If a region isn't unavailable or if an unknown error occurs, then a warning
|
||
// message is returned.
|
||
repeated ApiWarning warnings = 3;
|
||
}
|
||
|
||
// The request payload to update the backup.
|
||
message UpdateBackupRequest {
|
||
// Required. The backup to update.
|
||
// The backup’s `name` field is used to identify the backup to update.
|
||
// Format: projects/{project}/backups/{backup}
|
||
Backup backup = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// The list of fields that you can update. You can update only the description
|
||
// and retention period of the final backup.
|
||
google.protobuf.FieldMask update_mask = 2;
|
||
}
|
||
|
||
// The request payload to delete the backup.
|
||
message DeleteBackupRequest {
|
||
// Required. The name of the backup to delete.
|
||
// Format: projects/{project}/backups/{backup}
|
||
string name = 1 [
|
||
(google.api.field_behavior) = REQUIRED,
|
||
(google.api.resource_reference) = { type: "sqladmin.googleapis.com/Backup" }
|
||
];
|
||
}
|
||
|
||
message SqlBackupRunsDeleteRequest {
|
||
// The ID of the backup run to delete. To find a backup run ID, use the
|
||
// [list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1beta4/backupRuns/list)
|
||
// method.
|
||
int64 id = 1;
|
||
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 2;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 3;
|
||
}
|
||
|
||
message SqlBackupRunsGetRequest {
|
||
// The ID of this backup run.
|
||
int64 id = 1;
|
||
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 2;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 3;
|
||
}
|
||
|
||
message SqlBackupRunsInsertRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
BackupRun body = 100;
|
||
}
|
||
|
||
message SqlBackupRunsListRequest {
|
||
// Cloud SQL instance ID, or "-" for all instances. This does not include
|
||
// the project ID.
|
||
string instance = 1;
|
||
|
||
// Maximum number of backup runs per response.
|
||
int32 max_results = 2;
|
||
|
||
// A previously-returned page token representing part of the larger set of
|
||
// results to view.
|
||
string page_token = 3;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 4;
|
||
}
|
||
|
||
message SqlDatabasesDeleteRequest {
|
||
// Name of the database to be deleted in the instance.
|
||
string database = 1;
|
||
|
||
// Database instance ID. This does not include the project ID.
|
||
string instance = 2;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 3;
|
||
}
|
||
|
||
message SqlDatabasesGetRequest {
|
||
// Name of the database in the instance.
|
||
string database = 1;
|
||
|
||
// Database instance ID. This does not include the project ID.
|
||
string instance = 2;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 3;
|
||
}
|
||
|
||
message SqlDatabasesInsertRequest {
|
||
// Database instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
Database body = 100;
|
||
}
|
||
|
||
message SqlDatabasesListRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
}
|
||
|
||
message SqlDatabasesUpdateRequest {
|
||
// Name of the database to be updated in the instance.
|
||
string database = 1;
|
||
|
||
// Database instance ID. This does not include the project ID.
|
||
string instance = 2;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 3;
|
||
|
||
Database body = 100;
|
||
}
|
||
|
||
message SqlFlagsListRequest {
|
||
// Database type and version you want to retrieve flags for. By default, this
|
||
// method returns flags for all database types and versions.
|
||
string database_version = 1;
|
||
|
||
// Optional. Specify the scope of flags to be returned by SqlFlagsListService.
|
||
// Return list of database flags if unspecified.
|
||
optional SqlFlagScope flag_scope = 3 [(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
message SqlInstancesAddServerCaRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
}
|
||
|
||
// Request for AddServerCertificate RPC.
|
||
message SqlInstancesAddServerCertificateRequest {
|
||
// Required. Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Project ID of the project that contains the instance.
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
}
|
||
|
||
// Request for AddEntraIdCertificate RPC.
|
||
message SqlInstancesAddEntraIdCertificateRequest {
|
||
// Required. Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Project ID of the project that contains the instance.
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
}
|
||
|
||
message SqlInstancesCloneRequest {
|
||
// The ID of the Cloud SQL instance to be cloned (source). This does not
|
||
// include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the source Cloud SQL instance.
|
||
string project = 2;
|
||
|
||
InstancesCloneRequest body = 100;
|
||
}
|
||
|
||
message SqlInstancesDeleteRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance to be deleted.
|
||
string project = 2;
|
||
|
||
// Flag to opt-in for final backup. By default, it is turned off.
|
||
optional bool enable_final_backup = 7;
|
||
|
||
oneof expiration {
|
||
// Optional. Retention period of the final backup.
|
||
int64 final_backup_ttl_days = 4 [(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Optional. Final Backup expiration time.
|
||
// Timestamp in UTC of when this resource is considered expired.
|
||
google.protobuf.Timestamp final_backup_expiry_time = 6
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
// Optional. The description of the final backup.
|
||
string final_backup_description = 5 [(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
message SqlInstancesDemoteMasterRequest {
|
||
// Cloud SQL instance name.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
InstancesDemoteMasterRequest body = 100;
|
||
}
|
||
|
||
// Instance demote request.
|
||
message SqlInstancesDemoteRequest {
|
||
// Required. The name of the Cloud SQL instance.
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. The project ID of the project that contains the instance.
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// The request body.
|
||
InstancesDemoteRequest body = 100;
|
||
}
|
||
|
||
message SqlInstancesExportRequest {
|
||
// The Cloud SQL instance ID. This doesn't include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance to be exported.
|
||
string project = 2;
|
||
|
||
InstancesExportRequest body = 100;
|
||
}
|
||
|
||
message SqlInstancesFailoverRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the read replica.
|
||
string project = 2;
|
||
|
||
InstancesFailoverRequest body = 100;
|
||
}
|
||
|
||
message SqlInstancesGetRequest {
|
||
// Database instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
}
|
||
|
||
message SqlInstancesImportRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
InstancesImportRequest body = 100;
|
||
}
|
||
|
||
message SqlInstancesInsertRequest {
|
||
// Project ID of the project to which the newly created Cloud SQL instances
|
||
// should belong.
|
||
string project = 1;
|
||
|
||
DatabaseInstance body = 100;
|
||
}
|
||
|
||
message SqlInstancesListRequest {
|
||
// A filter expression that filters resources listed in the response.
|
||
// The expression is in the form of field:value. For example,
|
||
// 'instanceType:CLOUD_SQL_INSTANCE'. Fields can be nested as needed as per
|
||
// their JSON representation, such as 'settings.userLabels.auto_start:true'.
|
||
//
|
||
// Multiple filter queries are space-separated. For example.
|
||
// 'state:RUNNABLE instanceType:CLOUD_SQL_INSTANCE'. By default, each
|
||
// expression is an AND expression. However, you can include AND and OR
|
||
// expressions explicitly.
|
||
string filter = 1;
|
||
|
||
// The maximum number of instances to return. The service may return fewer
|
||
// than this value.
|
||
// If unspecified, at most 500 instances are returned.
|
||
// The maximum value is 1000; values above 1000 are coerced to 1000.
|
||
uint32 max_results = 2;
|
||
|
||
// A previously-returned page token representing part of the larger set of
|
||
// results to view.
|
||
string page_token = 3;
|
||
|
||
// Project ID of the project for which to list Cloud SQL instances.
|
||
string project = 4;
|
||
}
|
||
|
||
message SqlInstancesListServerCasRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
}
|
||
|
||
message SqlInstancesListServerCertificatesRequest {
|
||
// Required. Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Project ID of the project that contains the instance.
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
}
|
||
|
||
// Request message for SqlInstancesService.ListEntraIdCertificates.
|
||
message SqlInstancesListEntraIdCertificatesRequest {
|
||
// Required. Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Project ID of the project that contains the instance.
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
}
|
||
|
||
message SqlInstancesPatchRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// Optional. Set PSC config to the same value as the existing config to
|
||
// reconcile the PSC networking.
|
||
optional bool reconcile_psc_networking = 4
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Optional. Set PSC config to the same value as the existing config and force
|
||
// reconcile the PSC networking.
|
||
optional bool reconcile_psc_networking_force = 5
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
|
||
DatabaseInstance body = 100;
|
||
}
|
||
|
||
message SqlInstancesPromoteReplicaRequest {
|
||
// Cloud SQL read replica instance name.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the read replica.
|
||
string project = 2;
|
||
|
||
// 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.
|
||
bool failover = 3;
|
||
}
|
||
|
||
// Instance switchover request.
|
||
message SqlInstancesSwitchoverRequest {
|
||
// Cloud SQL read replica instance name.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the replica.
|
||
string project = 2;
|
||
|
||
// 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.
|
||
google.protobuf.Duration db_timeout = 3
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
message SqlInstancesResetSslConfigRequest {
|
||
// Reset SSL mode to selectively refresh the SSL materials.
|
||
enum ResetSslMode {
|
||
// Reset SSL mode is not specified.
|
||
RESET_SSL_MODE_UNSPECIFIED = 0;
|
||
|
||
// Refresh all TLS configs. This is the default behaviour.
|
||
ALL = 1;
|
||
|
||
// Refreshes the replication-related TLS configuration settings provided by
|
||
// the primary instance.
|
||
// Not applicable to on-premises replication instances.
|
||
SYNC_FROM_PRIMARY = 2;
|
||
}
|
||
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// Optional. Reset SSL mode to use.
|
||
ResetSslMode mode = 3 [(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
message SqlInstancesRestartRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance to be restarted.
|
||
string project = 2;
|
||
}
|
||
|
||
message SqlInstancesRestoreBackupRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
InstancesRestoreBackupRequest body = 100;
|
||
}
|
||
|
||
message SqlInstancesRotateServerCaRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
InstancesRotateServerCaRequest body = 100;
|
||
}
|
||
|
||
message SqlInstancesRotateServerCertificateRequest {
|
||
// Required. Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Project ID of the project that contains the instance.
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Rotate server certificate request body.
|
||
InstancesRotateServerCertificateRequest body = 100
|
||
[(google.api.field_behavior) = REQUIRED];
|
||
}
|
||
|
||
// Request message for SqlInstancesService.RotateEntraIdCertificate.
|
||
message SqlInstancesRotateEntraIdCertificateRequest {
|
||
// Required. Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Project ID of the project that contains the instance.
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Rotate Entra ID certificate request body.
|
||
InstancesRotateEntraIdCertificateRequest body = 100
|
||
[(google.api.field_behavior) = REQUIRED];
|
||
}
|
||
|
||
message SqlInstancesStartReplicaRequest {
|
||
// Cloud SQL read replica instance name.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the read replica.
|
||
string project = 2;
|
||
}
|
||
|
||
message SqlInstancesStopReplicaRequest {
|
||
// Cloud SQL read replica instance name.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the read replica.
|
||
string project = 2;
|
||
}
|
||
|
||
message SqlInstancesTruncateLogRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the Cloud SQL project.
|
||
string project = 2;
|
||
|
||
InstancesTruncateLogRequest body = 100;
|
||
}
|
||
|
||
message SqlInstancesUpdateRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
DatabaseInstance body = 100;
|
||
}
|
||
|
||
// Instance reencrypt request.
|
||
message SqlInstancesReencryptRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// Reencrypt body that users request
|
||
InstancesReencryptRequest body = 3;
|
||
}
|
||
|
||
// Database Instance reencrypt request.
|
||
message InstancesReencryptRequest {
|
||
// Configuration specific to backup re-encryption
|
||
optional BackupReencryptionConfig backup_reencryption_config = 1;
|
||
}
|
||
|
||
// Backup Reencryption Config
|
||
message BackupReencryptionConfig {
|
||
// Backup type for re-encryption
|
||
enum BackupType {
|
||
// Unknown backup type, will be defaulted to AUTOMATIC backup type
|
||
BACKUP_TYPE_UNSPECIFIED = 0;
|
||
|
||
// Reencrypt automatic backups
|
||
AUTOMATED = 1;
|
||
|
||
// Reencrypt on-demand backups
|
||
ON_DEMAND = 2;
|
||
}
|
||
|
||
// Backup re-encryption limit
|
||
optional int32 backup_limit = 1;
|
||
|
||
// Type of backups users want to re-encrypt.
|
||
optional BackupType backup_type = 2;
|
||
}
|
||
|
||
message SqlInstancesRescheduleMaintenanceRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
SqlInstancesRescheduleMaintenanceRequestBody body = 100;
|
||
}
|
||
|
||
// Instance perform disk shrink request.
|
||
message SqlInstancesPerformDiskShrinkRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// Perform disk shrink context.
|
||
PerformDiskShrinkContext body = 100;
|
||
}
|
||
|
||
// External Sync parallel level.
|
||
enum ExternalSyncParallelLevel {
|
||
// Unknown sync parallel level. Will be defaulted to OPTIMAL.
|
||
EXTERNAL_SYNC_PARALLEL_LEVEL_UNSPECIFIED = 0;
|
||
|
||
// Minimal parallel level.
|
||
MIN = 1;
|
||
|
||
// Optimal parallel level.
|
||
OPTIMAL = 2;
|
||
|
||
// Maximum parallel level.
|
||
MAX = 3;
|
||
}
|
||
|
||
// The selected object that Cloud SQL migrates.
|
||
message ExternalSyncSelectedObject {
|
||
// The name of the database that Cloud SQL migrates.
|
||
string database = 1;
|
||
}
|
||
|
||
message SqlInstancesVerifyExternalSyncSettingsRequest {
|
||
enum ExternalSyncMode {
|
||
// Unknown external sync mode, will be defaulted to ONLINE mode
|
||
EXTERNAL_SYNC_MODE_UNSPECIFIED = 0;
|
||
|
||
// Online external sync will set up replication after initial data external
|
||
// sync
|
||
ONLINE = 1;
|
||
|
||
// Offline external sync only dumps and loads a one-time snapshot of
|
||
// the primary instance's data
|
||
OFFLINE = 2;
|
||
}
|
||
|
||
// MigrationType determines whether the migration is a physical file-based
|
||
// migration or a logical dump file-based migration.
|
||
enum MigrationType {
|
||
// Default value is a logical dump file-based migration
|
||
MIGRATION_TYPE_UNSPECIFIED = 0;
|
||
|
||
// Logical dump file-based migration
|
||
LOGICAL = 1;
|
||
|
||
// Physical file-based migration
|
||
PHYSICAL = 2;
|
||
}
|
||
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// Flag to enable verifying connection only
|
||
bool verify_connection_only = 3;
|
||
|
||
// External sync mode
|
||
ExternalSyncMode sync_mode = 4;
|
||
|
||
// Optional. Flag to verify settings required by replication setup only
|
||
bool verify_replication_only = 5 [(google.api.field_behavior) = OPTIONAL];
|
||
|
||
oneof sync_config {
|
||
// Optional. MySQL-specific settings for start external sync.
|
||
MySqlSyncConfig mysql_sync_config = 6
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
// Optional. MigrationType configures the migration to use physical files or
|
||
// logical dump files. If not set, then the logical dump file configuration is
|
||
// used. Valid values are `LOGICAL` or `PHYSICAL`. Only applicable to MySQL.
|
||
MigrationType migration_type = 7 [(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Optional. Parallel level for initial data sync. Only applicable for
|
||
// PostgreSQL.
|
||
ExternalSyncParallelLevel sync_parallel_level = 8
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Optional. Migrate only the specified objects from the source instance. If
|
||
// this field is empty, then migrate all objects.
|
||
repeated ExternalSyncSelectedObject selected_objects = 9
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
message SqlInstancesStartExternalSyncRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// External sync mode.
|
||
SqlInstancesVerifyExternalSyncSettingsRequest.ExternalSyncMode sync_mode = 3;
|
||
|
||
// Whether to skip the verification step (VESS).
|
||
bool skip_verification = 4;
|
||
|
||
oneof sync_config {
|
||
// MySQL-specific settings for start external sync.
|
||
MySqlSyncConfig mysql_sync_config = 6;
|
||
}
|
||
|
||
// Optional. Parallel level for initial data sync. Currently only applicable
|
||
// for MySQL.
|
||
ExternalSyncParallelLevel sync_parallel_level = 7
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Optional. MigrationType configures the migration to use physical files or
|
||
// logical dump files. If not set, then the logical dump file configuration is
|
||
// used. Valid values are `LOGICAL` or `PHYSICAL`. Only applicable to MySQL.
|
||
SqlInstancesVerifyExternalSyncSettingsRequest.MigrationType migration_type = 8
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Optional. MySQL only. True if end-user has confirmed that this SES call
|
||
// will wipe replica databases overlapping with the proposed selected_objects.
|
||
// If this field is not set and there are both overlapping and additional
|
||
// databases proposed, an error will be returned.
|
||
bool replica_overwrite_enabled = 9 [(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
// Instance reset replica size request.
|
||
message SqlInstancesResetReplicaSizeRequest {
|
||
// Cloud SQL read replica instance name.
|
||
string instance = 1;
|
||
|
||
// ID of the project that contains the read replica.
|
||
string project = 2;
|
||
}
|
||
|
||
message SqlOperationsGetRequest {
|
||
// Instance operation ID.
|
||
string operation = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// Optional. Region of the Cloud SQL instance.
|
||
string location = 4 [(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
message SqlOperationsListRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Maximum number of operations per response.
|
||
uint32 max_results = 2;
|
||
|
||
// A previously-returned page token representing part of the larger set of
|
||
// results to view.
|
||
string page_token = 3;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 4;
|
||
|
||
// Optional. Region of the Cloud SQL instance.
|
||
string location = 6 [(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
// The request payload to cancel an operation.
|
||
message SqlOperationsCancelRequest {
|
||
// Instance operation ID.
|
||
string operation = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// Optional. Region of the Cloud SQL instance.
|
||
string location = 3 [(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
message SqlInstancesCreateEphemeralCertRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the Cloud SQL project.
|
||
string project = 2;
|
||
|
||
SslCertsCreateEphemeralRequest body = 100;
|
||
}
|
||
|
||
message SqlSslCertsDeleteRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// Sha1 FingerPrint.
|
||
string sha1_fingerprint = 3;
|
||
}
|
||
|
||
message SqlSslCertsGetRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// Sha1 FingerPrint.
|
||
string sha1_fingerprint = 3;
|
||
}
|
||
|
||
message SqlSslCertsInsertRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
SslCertsInsertRequest body = 100;
|
||
}
|
||
|
||
message SqlSslCertsListRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
}
|
||
|
||
// Instance get disk shrink config request.
|
||
message SqlInstancesGetDiskShrinkConfigRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
}
|
||
|
||
// Instance get latest recovery time request.
|
||
message SqlInstancesGetLatestRecoveryTimeRequest {
|
||
// Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1;
|
||
|
||
// Project ID of the project that contains the instance.
|
||
string project = 2;
|
||
|
||
// The timestamp used to identify the time when the source instance is
|
||
// deleted. If this instance is deleted, then you must set the timestamp.
|
||
optional google.protobuf.Timestamp source_instance_deletion_time = 3;
|
||
}
|
||
|
||
// Instance get latest recovery time response.
|
||
message SqlInstancesGetLatestRecoveryTimeResponse {
|
||
// This is always `sql#getLatestRecoveryTime`.
|
||
string kind = 1;
|
||
|
||
// Timestamp, identifies the latest recovery time of the source instance.
|
||
google.protobuf.Timestamp latest_recovery_time = 2;
|
||
|
||
// Timestamp, identifies the earliest recovery time of the source instance.
|
||
google.protobuf.Timestamp earliest_recovery_time = 3;
|
||
}
|
||
|
||
// Execute SQL statements request.
|
||
message SqlInstancesExecuteSqlRequest {
|
||
// Required. Database instance ID. This does not include the project ID.
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Project ID of the project that contains the instance.
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// The request body.
|
||
ExecuteSqlPayload body = 100;
|
||
}
|
||
|
||
// Request to release a lease for SSRS.
|
||
message SqlInstancesReleaseSsrsLeaseRequest {
|
||
// Required. The Cloud SQL instance ID. This doesn't include the project ID.
|
||
// It's composed of lowercase letters, numbers, and hyphens, and it must start
|
||
// with a letter. The total length must be 98 characters or less (Example:
|
||
// instance-id).
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. The ID of the project that contains the instance (Example:
|
||
// project-id).
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
}
|
||
|
||
// The response for the release of the SSRS lease.
|
||
message SqlInstancesReleaseSsrsLeaseResponse {
|
||
// The operation ID.
|
||
string operation_id = 1;
|
||
}
|
||
|
||
// The request payload used to execute SQL statements.
|
||
message ExecuteSqlPayload {
|
||
// Controls how the API should respond when the SQL execution result exceeds
|
||
// 10 MB.
|
||
enum PartialResultMode {
|
||
// Unspecified mode, effectively the same as `FAIL_PARTIAL_RESULT`.
|
||
PARTIAL_RESULT_MODE_UNSPECIFIED = 0;
|
||
|
||
// Throw an error if the result exceeds 10 MB or if only a partial result
|
||
// can be retrieved. Don't return the result.
|
||
FAIL_PARTIAL_RESULT = 1;
|
||
|
||
// Return a truncated result and set `partial_result` to true if the result
|
||
// exceeds 10 MB or if only a partial result can be retrieved due to error.
|
||
// Don't throw an error.
|
||
ALLOW_PARTIAL_RESULT = 2;
|
||
}
|
||
|
||
// Optional. The name of an existing database user to connect to the database.
|
||
// When `auto_iam_authn` is set to true, this field is ignored and the API
|
||
// caller's IAM user is used.
|
||
string user = 1 [(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Required. SQL statements to run on the database. It can be a single
|
||
// statement or a sequence of statements separated by semicolons.
|
||
string sql_statement = 2 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Optional. Name of the database on which the statement will be executed.
|
||
string database = 3 [(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Credentials for the database connection.
|
||
oneof user_password {
|
||
// Optional. The resource name of the Secret Manager secret holding the
|
||
// password for the user to log into the database. The secret should be
|
||
// created using the regional endpoint (for API) or from the Regional
|
||
// Secrets page (for UI), and stored in the same region as the Cloud SQL
|
||
// instance. The expected resource name format is
|
||
// `projects/{project}/locations/{location}/secrets/{secret}/versions/{secret_version}`.
|
||
// This field is used together with the `user` field.
|
||
// The secret resource name will not be stored.
|
||
string password_secret_version = 5 [
|
||
(google.api.field_behavior) = OPTIONAL,
|
||
(google.api.resource_reference) = {
|
||
type: "secretmanager.googleapis.com/SecretVersion"
|
||
}
|
||
];
|
||
|
||
// Optional. When set to true, the API caller identity associated with the
|
||
// request is used for database authentication. The API caller must be an
|
||
// IAM user in the database.
|
||
bool auto_iam_authn = 11 [(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
// Optional. The maximum number of rows returned per SQL statement.
|
||
int64 row_limit = 10 [(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Optional. Controls how the API should respond when the SQL execution result
|
||
// is incomplete due to the size limit or another error. The default mode is
|
||
// to throw an error.
|
||
PartialResultMode partial_result_mode = 13
|
||
[(google.api.field_behavior) = OPTIONAL];
|
||
|
||
// Optional. Specifies the name of the application that is making the request.
|
||
// This field is used for telemetry. Only alphanumeric characters, dashes, and
|
||
// underscores are allowed. The maximum length is 32 characters.
|
||
string application = 16 [(google.api.field_behavior) = OPTIONAL];
|
||
}
|
||
|
||
// Execute SQL statements response.
|
||
message SqlInstancesExecuteSqlResponse {
|
||
// Represents a notice or warning message from the database.
|
||
message Message {
|
||
// The full message string.
|
||
// For PostgreSQL, this is a formatted string that may include severity,
|
||
// code, and the notice/warning message.
|
||
// For MySQL, this contains the warning message.
|
||
optional string message = 1;
|
||
|
||
// The severity of the message (e.g., "NOTICE" for PostgreSQL, "WARNING" for
|
||
// MySQL).
|
||
optional string severity = 2;
|
||
}
|
||
|
||
// A list of notices and warnings generated during query execution.
|
||
// For PostgreSQL, this includes all notices and warnings.
|
||
// For MySQL, this includes warnings generated by the last executed statement.
|
||
// To retrieve all warnings for a multi-statement query, `SHOW WARNINGS` must
|
||
// be executed after each statement.
|
||
repeated Message messages = 9;
|
||
|
||
// The additional metadata information regarding the execution of the SQL
|
||
// statements.
|
||
Metadata metadata = 6;
|
||
|
||
// The list of results after executing all the SQL statements.
|
||
repeated QueryResult results = 7;
|
||
|
||
// Contains the error from the database if the SQL execution failed.
|
||
google.rpc.Status status = 8;
|
||
}
|
||
|
||
// QueryResult contains the result of executing a single SQL statement.
|
||
message QueryResult {
|
||
// List of columns included in the result. This also includes the data type
|
||
// of the column.
|
||
repeated Column columns = 1;
|
||
|
||
// Rows returned by the SQL statement.
|
||
repeated Row rows = 2;
|
||
|
||
// Message related to the SQL execution result.
|
||
string message = 3;
|
||
|
||
// Set to true if the SQL execution's result is truncated due to size limits
|
||
// or an error retrieving results.
|
||
bool partial_result = 4;
|
||
|
||
// If results were truncated due to an error, details of that error.
|
||
google.rpc.Status status = 8;
|
||
}
|
||
|
||
// Contains the name and datatype of a column.
|
||
message Column {
|
||
// Name of the column.
|
||
string name = 1;
|
||
|
||
// Datatype of the column.
|
||
string type = 2;
|
||
}
|
||
|
||
// Contains the values for a row.
|
||
message Row {
|
||
// The values for the row.
|
||
repeated Value values = 1;
|
||
}
|
||
|
||
// The cell value of the table.
|
||
message Value {
|
||
// The cell value represented in string format.
|
||
string value = 1;
|
||
|
||
// If cell value is null, then this flag will be set to true.
|
||
bool null_value = 2;
|
||
}
|
||
|
||
// The additional metadata information regarding the execution of the SQL
|
||
// statements.
|
||
message Metadata {
|
||
// The time taken to execute the SQL statements.
|
||
google.protobuf.Duration sql_statement_execution_time = 1;
|
||
}
|
||
|
||
// Request to acquire a lease for SSRS.
|
||
message SqlInstancesAcquireSsrsLeaseRequest {
|
||
// Required. Cloud SQL instance ID. This doesn't include the project ID. It's
|
||
// composed of lowercase letters, numbers, and hyphens, and it must start with
|
||
// a letter. The total length must be 98 characters or less (Example:
|
||
// instance-id).
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. ID of the project that contains the instance (Example:
|
||
// project-id).
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// The body for request to acquire an SSRS lease.
|
||
InstancesAcquireSsrsLeaseRequest body = 100;
|
||
}
|
||
|
||
// Request for Pre-checks for MVU
|
||
message SqlInstancesPreCheckMajorVersionUpgradeRequest {
|
||
// Required. Cloud SQL instance ID. This does not include the project ID.
|
||
string instance = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. Project ID of the project that contains the instance.
|
||
string project = 2 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. The context for request to perform the pre-check major version
|
||
// upgrade operation.
|
||
InstancesPreCheckMajorVersionUpgradeRequest body = 3
|
||
[(google.api.field_behavior) = REQUIRED];
|
||
}
|
||
|
||
// Acquire SSRS lease response.
|
||
message SqlInstancesAcquireSsrsLeaseResponse {
|
||
// The unique identifier for this operation.
|
||
optional string operation_id = 1;
|
||
}
|
||
|
||
// Request to perform a point in time restore on a Google Cloud Backup and
|
||
// Disaster Recovery managed instance.
|
||
message SqlInstancesPointInTimeRestoreRequest {
|
||
// Required. The parent resource where you created this instance.
|
||
// Format: projects/{project}
|
||
string parent = 1 [(google.api.field_behavior) = REQUIRED];
|
||
|
||
// Required. The context for request to perform a PITR on a Google Cloud
|
||
// Backup and Disaster Recovery managed instance.
|
||
PointInTimeRestoreContext context = 100
|
||
[(google.api.field_behavior) = REQUIRED];
|
||
}
|