{
  "version": "v1beta4",
  "fullyEncodeReservedExpansion": true,
  "protocol": "rest",
  "discoveryVersion": "v1",
  "resources": {
    "connect": {
      "methods": {
        "get": {
          "id": "sql.connect.get",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "GET",
          "parameters": {
            "readTime": {
              "description": "Optional. Optional snapshot read timestamp to trade freshness for performance.",
              "type": "string",
              "location": "query",
              "format": "google-datetime"
            },
            "instance": {
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            },
            "project": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Project ID of the project that contains the instance."
            }
          },
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/connectSettings",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/connectSettings",
          "response": {
            "$ref": "ConnectSettings"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Retrieves connect settings about a Cloud SQL instance."
        },
        "resolve": {
          "parameters": {
            "location": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Required. The region of the instance."
            },
            "dnsName": {
              "required": true,
              "location": "path",
              "description": "Required. Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            }
          },
          "httpMethod": "GET",
          "parameterOrder": [
            "location",
            "dnsName"
          ],
          "id": "sql.connect.resolve",
          "response": {
            "$ref": "ConnectSettings"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Retrieves connect settings about a Cloud SQL instance using the instance DNS name.",
          "flatPath": "sql/v1beta4/locations/{location}/dns/{dnsName}:resolveConnectSettings",
          "path": "sql/v1beta4/locations/{location}/dns/{dnsName}:resolveConnectSettings"
        },
        "generateEphemeralCert": {
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}:generateEphemeralCert",
          "response": {
            "$ref": "GenerateEphemeralCertResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}:generateEphemeralCert",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            },
            "instance": {
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "request": {
            "$ref": "GenerateEphemeralCertRequest"
          },
          "id": "sql.connect.generateEphemeral"
        }
      }
    },
    "operations": {
      "methods": {
        "get": {
          "flatPath": "sql/v1beta4/projects/{project}/operations/{operation}",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Retrieves an instance operation that has been performed on an instance.",
          "path": "sql/v1beta4/projects/{project}/operations/{operation}",
          "parameterOrder": [
            "project",
            "operation"
          ],
          "httpMethod": "GET",
          "parameters": {
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            },
            "operation": {
              "required": true,
              "location": "path",
              "description": "Instance operation ID.",
              "type": "string"
            }
          },
          "id": "sql.operations.get"
        },
        "cancel": {
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "operation"
          ],
          "parameters": {
            "project": {
              "description": "Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "operation": {
              "description": "Instance operation ID.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "id": "sql.operations.cancel",
          "flatPath": "sql/v1beta4/projects/{project}/operations/{operation}/cancel",
          "response": {
            "$ref": "Empty"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Cancels an instance operation that has been performed on an instance. Ordinarily, this method name should be `CancelSqlOperation`.",
          "path": "sql/v1beta4/projects/{project}/operations/{operation}/cancel"
        },
        "list": {
          "path": "sql/v1beta4/projects/{project}/operations",
          "response": {
            "$ref": "OperationsListResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Lists all instance operations that have been performed on the given Cloud SQL instance in the reverse chronological order of the start time.",
          "flatPath": "sql/v1beta4/projects/{project}/operations",
          "id": "sql.operations.list",
          "parameters": {
            "instance": {
              "location": "query",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            },
            "pageToken": {
              "description": "A previously-returned page token representing part of the larger set of results to view.",
              "type": "string",
              "location": "query"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            },
            "maxResults": {
              "type": "integer",
              "description": "Maximum number of operations per response.",
              "location": "query",
              "format": "uint32"
            }
          },
          "parameterOrder": [
            "project"
          ],
          "httpMethod": "GET"
        }
      }
    },
    "users": {
      "methods": {
        "delete": {
          "parameters": {
            "instance": {
              "required": true,
              "location": "path",
              "description": "Database instance ID. This does not include the project ID.",
              "type": "string"
            },
            "host": {
              "description": "Host of the user in the instance.",
              "type": "string",
              "location": "query"
            },
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "name": {
              "type": "string",
              "description": "Name of the user in the instance.",
              "location": "query"
            }
          },
          "httpMethod": "DELETE",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "id": "sql.users.delete",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Deletes a user from a Cloud SQL instance.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/users",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/users"
        },
        "insert": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/users",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Creates a new user in a Cloud SQL instance.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/users",
          "request": {
            "$ref": "User"
          },
          "id": "sql.users.insert",
          "parameters": {
            "project": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Project ID of the project that contains the instance."
            },
            "instance": {
              "description": "Database instance ID. This does not include the project ID.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST"
        },
        "list": {
          "id": "sql.users.list",
          "httpMethod": "GET",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "type": "string",
              "description": "Database instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/users",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/users",
          "response": {
            "$ref": "UsersListResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Lists users in the specified Cloud SQL instance."
        },
        "update": {
          "id": "sql.users.update",
          "request": {
            "$ref": "User"
          },
          "httpMethod": "PUT",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "databaseRoles": {
              "description": "Optional. List of database roles to grant to the user. body.database_roles will be ignored for update request.",
              "type": "string",
              "repeated": true,
              "location": "query"
            },
            "revokeExistingRoles": {
              "type": "boolean",
              "description": "Optional. Specifies whether to revoke existing roles that are not present in the `database_roles` field. If `false` or unset, the database roles specified in `database_roles` are added to the user's existing roles.",
              "location": "query"
            },
            "project": {
              "description": "Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "instance": {
              "required": true,
              "location": "path",
              "description": "Database instance ID. This does not include the project ID.",
              "type": "string"
            },
            "name": {
              "location": "query",
              "type": "string",
              "description": "Name of the user in the instance."
            },
            "host": {
              "type": "string",
              "description": "Optional. Host of the user in the instance.",
              "location": "query"
            }
          },
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/users",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/users",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Updates an existing user in a Cloud SQL instance."
        },
        "get": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/users/{name}",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/users/{name}",
          "response": {
            "$ref": "User"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Retrieves a resource containing information about a user.",
          "id": "sql.users.get",
          "parameterOrder": [
            "project",
            "instance",
            "name"
          ],
          "httpMethod": "GET",
          "parameters": {
            "project": {
              "description": "Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "name": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "User of the instance."
            },
            "instance": {
              "description": "Database instance ID. This does not include the project ID.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "host": {
              "type": "string",
              "description": "Host of a user of the instance.",
              "location": "query"
            }
          }
        }
      }
    },
    "instances": {
      "methods": {
        "executeSql": {
          "id": "sql.instances.executeSql",
          "request": {
            "$ref": "ExecuteSqlPayload"
          },
          "parameters": {
            "project": {
              "type": "string",
              "description": "Required. Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "type": "string",
              "description": "Required. Database instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/executeSql",
          "response": {
            "$ref": "SqlInstancesExecuteSqlResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Execute SQL statements.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/executeSql"
        },
        "import": {
          "parameters": {
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "id": "sql.instances.import",
          "request": {
            "$ref": "InstancesImportRequest"
          },
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ],
          "description": "Imports data into a Cloud SQL instance from a SQL dump or CSV file in Cloud Storage.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/import",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/import"
        },
        "insert": {
          "parameters": {
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project to which the newly created Cloud SQL instances should belong.",
              "type": "string"
            }
          },
          "parameterOrder": [
            "project"
          ],
          "httpMethod": "POST",
          "request": {
            "$ref": "DatabaseInstance"
          },
          "id": "sql.instances.insert",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Creates a new Cloud SQL instance.",
          "flatPath": "sql/v1beta4/projects/{project}/instances",
          "path": "sql/v1beta4/projects/{project}/instances"
        },
        "switchover": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/switchover",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/switchover",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Switches over from the primary instance to the DR replica instance.",
          "id": "sql.instances.switchover",
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "instance": {
              "description": "Cloud SQL read replica instance name.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "ID of the project that contains the replica.",
              "type": "string"
            },
            "dbTimeout": {
              "location": "query",
              "format": "google-duration",
              "type": "string",
              "description": "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."
            }
          }
        },
        "listServerCas": {
          "response": {
            "$ref": "InstancesListServerCasResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/listServerCas",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/listServerCas",
          "parameters": {
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID."
            }
          },
          "httpMethod": "GET",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "id": "sql.instances.listServerCas"
        },
        "truncateLog": {
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID."
            },
            "project": {
              "description": "Project ID of the Cloud SQL project.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "id": "sql.instances.truncateLog",
          "request": {
            "$ref": "InstancesTruncateLogRequest"
          },
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/truncateLog",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Truncate MySQL general and slow query log tables MySQL only.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/truncateLog"
        },
        "pointInTimeRestore": {
          "path": "sql/v1beta4/{+parent}:pointInTimeRestore",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Point in time restore for an instance managed by Google Cloud Backup and Disaster Recovery.",
          "flatPath": "sql/v1beta4/projects/{projectsId}:pointInTimeRestore",
          "id": "sql.instances.pointInTimeRestore",
          "request": {
            "$ref": "PointInTimeRestoreContext"
          },
          "parameters": {
            "parent": {
              "type": "string",
              "description": "Required. The parent resource where you created this instance. Format: projects/{project}",
              "location": "path",
              "pattern": "^projects/[^/]+$",
              "required": true
            }
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "parent"
          ]
        },
        "patch": {
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Partially updates settings of a Cloud SQL instance by merging the request with the current configuration. This method supports patch semantics.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}",
          "parameters": {
            "project": {
              "description": "Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "instance": {
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "reconcilePscNetworkingForce": {
              "location": "query",
              "type": "boolean",
              "description": "Optional. Set PSC config to the same value as the existing config and force reconcile the PSC networking."
            },
            "reconcilePscNetworking": {
              "location": "query",
              "type": "boolean",
              "description": "Optional. Set PSC config to the same value as the existing config to reconcile the PSC networking."
            }
          },
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "PATCH",
          "request": {
            "$ref": "DatabaseInstance"
          },
          "id": "sql.instances.patch"
        },
        "ListEntraIdCertificates": {
          "id": "sql.instances.ListEntraIdCertificates",
          "httpMethod": "GET",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "project": {
              "type": "string",
              "description": "Required. Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "required": true,
              "location": "path",
              "description": "Required. Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            }
          },
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/listEntraIdCertificates",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/listEntraIdCertificates",
          "response": {
            "$ref": "InstancesListEntraIdCertificatesResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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."
        },
        "RotateServerCertificate": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/rotateServerCertificate",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/rotateServerCertificate",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "id": "sql.instances.RotateServerCertificate",
          "request": {
            "$ref": "InstancesRotateServerCertificateRequest"
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "instance": {
              "description": "Required. Cloud SQL instance ID. This does not include the project ID.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "project": {
              "description": "Required. Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          }
        },
        "reencrypt": {
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/reencrypt",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Reencrypt CMEK instance with latest key version.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/reencrypt",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "ID of the project that contains the instance.",
              "type": "string"
            }
          },
          "request": {
            "$ref": "InstancesReencryptRequest"
          },
          "id": "sql.instances.reencrypt"
        },
        "startReplica": {
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL read replica instance name.",
              "type": "string"
            },
            "project": {
              "type": "string",
              "description": "ID of the project that contains the read replica.",
              "location": "path",
              "required": true
            }
          },
          "id": "sql.instances.startReplica",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/startReplica",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Starts the replication in the read replica instance.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/startReplica"
        },
        "restoreBackup": {
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            }
          },
          "request": {
            "$ref": "InstancesRestoreBackupRequest"
          },
          "id": "sql.instances.restoreBackup",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/restoreBackup",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Restores a backup of a Cloud SQL instance. Using this operation might cause your instance to restart.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/restoreBackup"
        },
        "failover": {
          "parameters": {
            "project": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "ID of the project that contains the read replica."
            },
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            }
          },
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "request": {
            "$ref": "InstancesFailoverRequest"
          },
          "id": "sql.instances.failover",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/failover",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/failover"
        },
        "update": {
          "id": "sql.instances.update",
          "request": {
            "$ref": "DatabaseInstance"
          },
          "httpMethod": "PUT",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "path": "sql/v1beta4/projects/{project}/instances/{instance}",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Updates settings of a Cloud SQL instance. Using this operation might cause your instance to restart."
        },
        "promoteReplica": {
          "id": "sql.instances.promoteReplica",
          "parameters": {
            "project": {
              "description": "ID of the project that contains the read replica.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "failover": {
              "type": "boolean",
              "description": "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.",
              "location": "query"
            },
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL read replica instance name.",
              "type": "string"
            }
          },
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/promoteReplica",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Promotes the read replica instance to be an independent Cloud SQL primary instance. Using this operation might cause your instance to restart.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/promoteReplica"
        },
        "addServerCa": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/addServerCa",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/addServerCa",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "id": "sql.instances.addServerCa",
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID."
            }
          }
        },
        "preCheckMajorVersionUpgrade": {
          "request": {
            "$ref": "InstancesPreCheckMajorVersionUpgradeRequest"
          },
          "id": "sql.instances.preCheckMajorVersionUpgrade",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "instance": {
              "description": "Required. Cloud SQL instance ID. This does not include the project ID.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Required. Project ID of the project that contains the instance.",
              "type": "string"
            }
          },
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/preCheckMajorVersionUpgrade",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/preCheckMajorVersionUpgrade",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Execute MVU Pre-checks"
        },
        "demoteMaster": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/demoteMaster",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/demoteMaster",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Demotes the stand-alone instance to be a Cloud SQL read replica for an external database server.",
          "request": {
            "$ref": "InstancesDemoteMasterRequest"
          },
          "id": "sql.instances.demoteMaster",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "project": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "ID of the project that contains the instance."
            },
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance name.",
              "type": "string"
            }
          }
        },
        "demote": {
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Demotes an existing standalone instance to be a Cloud SQL read replica for an external database server.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/demote",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/demote",
          "parameters": {
            "project": {
              "type": "string",
              "description": "Required. The project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "type": "string",
              "description": "Required. The name of the Cloud SQL instance.",
              "location": "path",
              "required": true
            }
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "id": "sql.instances.demote",
          "request": {
            "$ref": "InstancesDemoteRequest"
          }
        },
        "delete": {
          "parameters": {
            "finalBackupExpiryTime": {
              "location": "query",
              "format": "google-datetime",
              "type": "string",
              "description": "Optional. Final Backup expiration time. Timestamp in UTC of when this resource is considered expired."
            },
            "finalBackupDescription": {
              "location": "query",
              "type": "string",
              "description": "Optional. The description of the final backup."
            },
            "project": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Project ID of the project that contains the instance to be deleted."
            },
            "enableFinalBackup": {
              "location": "query",
              "type": "boolean",
              "description": "Flag to opt-in for final backup. By default, it is turned off."
            },
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID."
            },
            "finalBackupTtlDays": {
              "location": "query",
              "format": "int64",
              "type": "string",
              "description": "Optional. Retention period of the final backup."
            }
          },
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "DELETE",
          "id": "sql.instances.delete",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Deletes a Cloud SQL instance.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}"
        },
        "export": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/export",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/export",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ],
          "description": "Exports data from a Cloud SQL instance to a Cloud Storage bucket as a SQL dump or CSV file.",
          "request": {
            "$ref": "InstancesExportRequest"
          },
          "id": "sql.instances.export",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance to be exported.",
              "location": "path",
              "required": true
            },
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "The Cloud SQL instance ID. This doesn't include the project ID."
            }
          }
        },
        "restart": {
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            },
            "project": {
              "description": "Project ID of the project that contains the instance to be restarted.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "id": "sql.instances.restart",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/restart",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Restarts a Cloud SQL instance.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/restart"
        },
        "releaseSsrsLease": {
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/releaseSsrsLease",
          "response": {
            "$ref": "SqlInstancesReleaseSsrsLeaseResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Release a lease for the setup of SQL Server Reporting Services (SSRS).",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/releaseSsrsLease",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "project": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Required. The ID of the project that contains the instance (Example: project-id)."
            },
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "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)."
            }
          },
          "id": "sql.instances.releaseSsrsLease"
        },
        "clone": {
          "request": {
            "$ref": "InstancesCloneRequest"
          },
          "id": "sql.instances.clone",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "project": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Project ID of the source Cloud SQL instance."
            },
            "instance": {
              "type": "string",
              "description": "The ID of the Cloud SQL instance to be cloned (source). This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/clone",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/clone",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Creates a Cloud SQL instance as a clone of the source instance. Using this operation might cause your instance to restart."
        },
        "rotateServerCa": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/rotateServerCa",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/rotateServerCa",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "request": {
            "$ref": "InstancesRotateServerCaRequest"
          },
          "id": "sql.instances.rotateServerCa",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID."
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            }
          }
        },
        "stopReplica": {
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/stopReplica",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Stops the replication in the read replica instance.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/stopReplica",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "instance": {
              "description": "Cloud SQL read replica instance name.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "project": {
              "description": "ID of the project that contains the read replica.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "id": "sql.instances.stopReplica"
        },
        "resetSslConfig": {
          "id": "sql.instances.resetSslConfig",
          "parameters": {
            "mode": {
              "enum": [
                "RESET_SSL_MODE_UNSPECIFIED",
                "ALL",
                "SYNC_FROM_PRIMARY"
              ],
              "location": "query",
              "enumDescriptions": [
                "Reset SSL mode is not specified.",
                "Refresh all TLS configs. This is the default behaviour.",
                "Refreshes the replication-related TLS configuration settings provided by the primary instance. Not applicable to on-premises replication instances."
              ],
              "type": "string",
              "description": "Optional. Reset SSL mode to use."
            },
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            }
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/resetSslConfig",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Deletes all client certificates and generates a new server SSL certificate for the instance.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/resetSslConfig"
        },
        "RotateEntraIdCertificate": {
          "id": "sql.instances.RotateEntraIdCertificate",
          "request": {
            "$ref": "InstancesRotateEntraIdCertificateRequest"
          },
          "parameters": {
            "project": {
              "description": "Required. Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "instance": {
              "type": "string",
              "description": "Required. Cloud SQL instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/rotateEntraIdCertificate",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Rotates the Entra Id certificate version to one previously added with the addEntraIdCertificate method.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/rotateEntraIdCertificate"
        },
        "addServerCertificate": {
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/addServerCertificate",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/addServerCertificate",
          "parameters": {
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Required. Cloud SQL instance ID. This does not include the project ID."
            },
            "project": {
              "description": "Required. Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "id": "sql.instances.addServerCertificate"
        },
        "list": {
          "path": "sql/v1beta4/projects/{project}/instances",
          "response": {
            "$ref": "InstancesListResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Lists instances under a given project.",
          "flatPath": "sql/v1beta4/projects/{project}/instances",
          "id": "sql.instances.list",
          "parameters": {
            "filter": {
              "type": "string",
              "description": "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.",
              "location": "query"
            },
            "pageToken": {
              "location": "query",
              "description": "A previously-returned page token representing part of the larger set of results to view.",
              "type": "string"
            },
            "project": {
              "type": "string",
              "description": "Project ID of the project for which to list Cloud SQL instances.",
              "location": "path",
              "required": true
            },
            "maxResults": {
              "description": "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.",
              "type": "integer",
              "location": "query",
              "format": "uint32"
            }
          },
          "parameterOrder": [
            "project"
          ],
          "httpMethod": "GET"
        },
        "ListServerCertificates": {
          "response": {
            "$ref": "InstancesListServerCertificatesResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/listServerCertificates",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/listServerCertificates",
          "parameters": {
            "project": {
              "type": "string",
              "description": "Required. Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "type": "string",
              "description": "Required. Cloud SQL instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "GET",
          "id": "sql.instances.ListServerCertificates"
        },
        "get": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}",
          "response": {
            "$ref": "DatabaseInstance"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Retrieves a resource containing information about a Cloud SQL instance.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}",
          "id": "sql.instances.get",
          "parameters": {
            "instance": {
              "type": "string",
              "description": "Database instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            },
            "project": {
              "description": "Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "httpMethod": "GET",
          "parameterOrder": [
            "project",
            "instance"
          ]
        },
        "addEntraIdCertificate": {
          "parameters": {
            "project": {
              "description": "Required. Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "instance": {
              "type": "string",
              "description": "Required. Cloud SQL instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "id": "sql.instances.addEntraIdCertificate",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/addEntraIdCertificate",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/addEntraIdCertificate"
        },
        "acquireSsrsLease": {
          "request": {
            "$ref": "InstancesAcquireSsrsLeaseRequest"
          },
          "id": "sql.instances.acquireSsrsLease",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "instance": {
              "required": true,
              "location": "path",
              "description": "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).",
              "type": "string"
            },
            "project": {
              "description": "Required. ID of the project that contains the instance (Example: project-id).",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/acquireSsrsLease",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/acquireSsrsLease",
          "response": {
            "$ref": "SqlInstancesAcquireSsrsLeaseResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Acquire a lease for the setup of SQL Server Reporting Services (SSRS)."
        }
      }
    },
    "projects": {
      "resources": {
        "instances": {
          "methods": {
            "startExternalSync": {
              "response": {
                "$ref": "Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/sqlservice.admin"
              ],
              "description": "Start External primary instance migration.",
              "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/startExternalSync",
              "path": "sql/v1beta4/projects/{project}/instances/{instance}/startExternalSync",
              "parameters": {
                "instance": {
                  "required": true,
                  "location": "path",
                  "description": "Cloud SQL instance ID. This does not include the project ID.",
                  "type": "string"
                },
                "project": {
                  "required": true,
                  "location": "path",
                  "description": "ID of the project that contains the instance.",
                  "type": "string"
                }
              },
              "httpMethod": "POST",
              "parameterOrder": [
                "project",
                "instance"
              ],
              "id": "sql.projects.instances.startExternalSync",
              "request": {
                "$ref": "SqlInstancesStartExternalSyncRequest"
              }
            },
            "getDiskShrinkConfig": {
              "id": "sql.projects.instances.getDiskShrinkConfig",
              "parameterOrder": [
                "project",
                "instance"
              ],
              "httpMethod": "GET",
              "parameters": {
                "instance": {
                  "description": "Cloud SQL instance ID. This does not include the project ID.",
                  "type": "string",
                  "required": true,
                  "location": "path"
                },
                "project": {
                  "required": true,
                  "location": "path",
                  "description": "Project ID of the project that contains the instance.",
                  "type": "string"
                }
              },
              "path": "sql/v1beta4/projects/{project}/instances/{instance}/getDiskShrinkConfig",
              "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/getDiskShrinkConfig",
              "response": {
                "$ref": "SqlInstancesGetDiskShrinkConfigResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/sqlservice.admin"
              ],
              "description": "Get Disk Shrink Config for a given instance."
            },
            "verifyExternalSyncSettings": {
              "httpMethod": "POST",
              "parameterOrder": [
                "project",
                "instance"
              ],
              "parameters": {
                "instance": {
                  "required": true,
                  "location": "path",
                  "description": "Cloud SQL instance ID. This does not include the project ID.",
                  "type": "string"
                },
                "project": {
                  "description": "Project ID of the project that contains the instance.",
                  "type": "string",
                  "required": true,
                  "location": "path"
                }
              },
              "id": "sql.projects.instances.verifyExternalSyncSettings",
              "request": {
                "$ref": "SqlInstancesVerifyExternalSyncSettingsRequest"
              },
              "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/verifyExternalSyncSettings",
              "response": {
                "$ref": "SqlInstancesVerifyExternalSyncSettingsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/sqlservice.admin"
              ],
              "description": "Verify External primary instance external sync settings.",
              "path": "sql/v1beta4/projects/{project}/instances/{instance}/verifyExternalSyncSettings"
            },
            "getLatestRecoveryTime": {
              "id": "sql.projects.instances.getLatestRecoveryTime",
              "parameterOrder": [
                "project",
                "instance"
              ],
              "httpMethod": "GET",
              "parameters": {
                "sourceInstanceDeletionTime": {
                  "location": "query",
                  "format": "google-datetime",
                  "description": "The timestamp used to identify the time when the source instance is deleted. If this instance is deleted, then you must set the timestamp.",
                  "type": "string"
                },
                "project": {
                  "type": "string",
                  "description": "Project ID of the project that contains the instance.",
                  "location": "path",
                  "required": true
                },
                "instance": {
                  "required": true,
                  "location": "path",
                  "description": "Cloud SQL instance ID. This does not include the project ID.",
                  "type": "string"
                }
              },
              "path": "sql/v1beta4/projects/{project}/instances/{instance}/getLatestRecoveryTime",
              "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/getLatestRecoveryTime",
              "response": {
                "$ref": "SqlInstancesGetLatestRecoveryTimeResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/sqlservice.admin"
              ],
              "description": "Get Latest Recovery Time for a given instance."
            },
            "rescheduleMaintenance": {
              "id": "sql.projects.instances.rescheduleMaintenance",
              "request": {
                "$ref": "SqlInstancesRescheduleMaintenanceRequestBody"
              },
              "parameters": {
                "project": {
                  "type": "string",
                  "description": "ID of the project that contains the instance.",
                  "location": "path",
                  "required": true
                },
                "instance": {
                  "type": "string",
                  "description": "Cloud SQL instance ID. This does not include the project ID.",
                  "location": "path",
                  "required": true
                }
              },
              "httpMethod": "POST",
              "parameterOrder": [
                "project",
                "instance"
              ],
              "path": "sql/v1beta4/projects/{project}/instances/{instance}/rescheduleMaintenance",
              "response": {
                "$ref": "Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/sqlservice.admin"
              ],
              "description": "Reschedules the maintenance on the given instance.",
              "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/rescheduleMaintenance"
            },
            "performDiskShrink": {
              "parameters": {
                "instance": {
                  "description": "Cloud SQL instance ID. This does not include the project ID.",
                  "type": "string",
                  "required": true,
                  "location": "path"
                },
                "project": {
                  "type": "string",
                  "description": "Project ID of the project that contains the instance.",
                  "location": "path",
                  "required": true
                }
              },
              "parameterOrder": [
                "project",
                "instance"
              ],
              "httpMethod": "POST",
              "request": {
                "$ref": "PerformDiskShrinkContext"
              },
              "id": "sql.projects.instances.performDiskShrink",
              "response": {
                "$ref": "Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/sqlservice.admin"
              ],
              "description": "Perform Disk Shrink on primary instance.",
              "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/performDiskShrink",
              "path": "sql/v1beta4/projects/{project}/instances/{instance}/performDiskShrink"
            },
            "resetReplicaSize": {
              "path": "sql/v1beta4/projects/{project}/instances/{instance}/resetReplicaSize",
              "response": {
                "$ref": "Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/sqlservice.admin"
              ],
              "description": "Reset Replica Size to primary instance disk size.",
              "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/resetReplicaSize",
              "id": "sql.projects.instances.resetReplicaSize",
              "request": {
                "$ref": "SqlInstancesResetReplicaSizeRequest"
              },
              "parameters": {
                "instance": {
                  "required": true,
                  "location": "path",
                  "description": "Cloud SQL read replica instance name.",
                  "type": "string"
                },
                "project": {
                  "description": "ID of the project that contains the read replica.",
                  "type": "string",
                  "required": true,
                  "location": "path"
                }
              },
              "httpMethod": "POST",
              "parameterOrder": [
                "project",
                "instance"
              ]
            }
          }
        }
      }
    },
    "backups": {
      "methods": {
        "createBackup": {
          "id": "sql.backups.createBackup",
          "request": {
            "$ref": "Backup"
          },
          "parameters": {
            "parent": {
              "pattern": "^projects/[^/]+$",
              "required": true,
              "type": "string",
              "description": "Required. The parent resource where this backup is created. Format: projects/{project}",
              "location": "path"
            }
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "parent"
          ],
          "path": "sql/v1beta4/{+parent}/backups",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Creates a backup for a Cloud SQL instance. This API can be used only to create on-demand backups.",
          "flatPath": "sql/v1beta4/projects/{projectsId}/backups"
        },
        "updateBackup": {
          "path": "sql/v1beta4/{+name}",
          "flatPath": "sql/v1beta4/projects/{projectsId}/backups/{backupsId}",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Updates the retention period and the description of the backup. You can use this API to update final backups only.",
          "id": "sql.backups.updateBackup",
          "request": {
            "$ref": "Backup"
          },
          "httpMethod": "PATCH",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "location": "path",
              "description": "Output only. The resource name of the backup. Format: projects/{project}/backups/{backup}.",
              "type": "string",
              "required": true,
              "pattern": "^projects/[^/]+/backups/[^/]+$"
            },
            "updateMask": {
              "type": "string",
              "description": "The list of fields that you can update. You can update only the description and retention period of the final backup.",
              "location": "query",
              "format": "google-fieldmask"
            }
          }
        },
        "deleteBackup": {
          "parameterOrder": [
            "name"
          ],
          "httpMethod": "DELETE",
          "parameters": {
            "name": {
              "required": true,
              "pattern": "^projects/[^/]+/backups/[^/]+$",
              "location": "path",
              "description": "Required. The name of the backup to delete. Format: projects/{project}/backups/{backup}",
              "type": "string"
            }
          },
          "id": "sql.backups.deleteBackup",
          "flatPath": "sql/v1beta4/projects/{projectsId}/backups/{backupsId}",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Deletes the backup.",
          "path": "sql/v1beta4/{+name}"
        },
        "getBackup": {
          "parameters": {
            "name": {
              "type": "string",
              "description": "Required. The name of the backup to retrieve. Format: projects/{project}/backups/{backup}",
              "location": "path",
              "pattern": "^projects/[^/]+/backups/[^/]+$",
              "required": true
            }
          },
          "parameterOrder": [
            "name"
          ],
          "httpMethod": "GET",
          "id": "sql.backups.getBackup",
          "response": {
            "$ref": "Backup"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Retrieves a resource containing information about a backup.",
          "flatPath": "sql/v1beta4/projects/{projectsId}/backups/{backupsId}",
          "path": "sql/v1beta4/{+name}"
        },
        "listBackups": {
          "id": "sql.backups.listBackups",
          "parameters": {
            "parent": {
              "required": true,
              "pattern": "^projects/[^/]+$",
              "location": "path",
              "type": "string",
              "description": "Required. The parent that owns this collection of backups. Format: projects/{project}"
            },
            "pageToken": {
              "type": "string",
              "description": "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.",
              "location": "query"
            },
            "filter": {
              "description": "Multiple filter queries are separated by spaces. For example, 'instance:abc AND type:FINAL, 'location:us', 'backupInterval.startTime\u003e=1950-01-01T01:01:25.771Z'. You can filter by type, instance, backupInterval.startTime (creation time), or location.",
              "type": "string",
              "location": "query"
            },
            "pageSize": {
              "description": "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.",
              "type": "integer",
              "location": "query",
              "format": "int32"
            }
          },
          "parameterOrder": [
            "parent"
          ],
          "httpMethod": "GET",
          "path": "sql/v1beta4/{+parent}/backups",
          "response": {
            "$ref": "ListBackupsResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Lists all backups associated with the project.",
          "flatPath": "sql/v1beta4/projects/{projectsId}/backups"
        }
      }
    },
    "tiers": {
      "methods": {
        "list": {
          "id": "sql.tiers.list",
          "parameters": {
            "project": {
              "description": "Project ID of the project for which to list tiers.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "httpMethod": "GET",
          "parameterOrder": [
            "project"
          ],
          "path": "sql/v1beta4/projects/{project}/tiers",
          "response": {
            "$ref": "TiersListResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Lists all available machine types (tiers) for Cloud SQL, for example, `db-custom-1-3840`. For related information, see [Pricing](/sql/pricing).",
          "flatPath": "sql/v1beta4/projects/{project}/tiers"
        }
      }
    },
    "backupRuns": {
      "methods": {
        "list": {
          "id": "sql.backupRuns.list",
          "parameters": {
            "maxResults": {
              "type": "integer",
              "description": "Maximum number of backup runs per response.",
              "location": "query",
              "format": "int32"
            },
            "instance": {
              "type": "string",
              "description": "Cloud SQL instance ID, or \"-\" for all instances. This does not include the project ID.",
              "location": "path",
              "required": true
            },
            "pageToken": {
              "location": "query",
              "description": "A previously-returned page token representing part of the larger set of results to view.",
              "type": "string"
            },
            "project": {
              "description": "Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "httpMethod": "GET",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/backupRuns",
          "response": {
            "$ref": "BackupRunsListResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Lists all backup runs associated with the project or a given instance and configuration in the reverse chronological order of the backup initiation time.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/backupRuns"
        },
        "insert": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/backupRuns",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/backupRuns",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Creates a new backup run on demand.",
          "id": "sql.backupRuns.insert",
          "request": {
            "$ref": "BackupRun"
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "instance": {
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            }
          }
        },
        "delete": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/backupRuns/{id}",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/backupRuns/{id}",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Deletes the backup taken by a backup run.",
          "id": "sql.backupRuns.delete",
          "parameterOrder": [
            "project",
            "instance",
            "id"
          ],
          "httpMethod": "DELETE",
          "parameters": {
            "id": {
              "required": true,
              "format": "int64",
              "location": "path",
              "description": "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.",
              "type": "string"
            },
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          }
        },
        "get": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/backupRuns/{id}",
          "response": {
            "$ref": "BackupRun"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Retrieves a resource containing information about a backup run.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/backupRuns/{id}",
          "id": "sql.backupRuns.get",
          "parameters": {
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            },
            "id": {
              "location": "path",
              "type": "string",
              "description": "The ID of this backup run.",
              "format": "int64",
              "required": true
            }
          },
          "parameterOrder": [
            "project",
            "instance",
            "id"
          ],
          "httpMethod": "GET"
        }
      }
    },
    "databases": {
      "methods": {
        "delete": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Deletes a database from a Cloud SQL instance.",
          "id": "sql.databases.delete",
          "parameterOrder": [
            "project",
            "instance",
            "database"
          ],
          "httpMethod": "DELETE",
          "parameters": {
            "database": {
              "required": true,
              "location": "path",
              "description": "Name of the database to be deleted in the instance.",
              "type": "string"
            },
            "instance": {
              "required": true,
              "location": "path",
              "description": "Database instance ID. This does not include the project ID.",
              "type": "string"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            }
          }
        },
        "patch": {
          "parameters": {
            "database": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Name of the database to be updated in the instance."
            },
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Database instance ID. This does not include the project ID."
            },
            "project": {
              "description": "Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "parameterOrder": [
            "project",
            "instance",
            "database"
          ],
          "httpMethod": "PATCH",
          "request": {
            "$ref": "Database"
          },
          "id": "sql.databases.patch",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Partially updates a resource containing information about a database inside a Cloud SQL instance. This method supports patch semantics.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}"
        },
        "get": {
          "httpMethod": "GET",
          "parameterOrder": [
            "project",
            "instance",
            "database"
          ],
          "parameters": {
            "database": {
              "required": true,
              "location": "path",
              "description": "Name of the database in the instance.",
              "type": "string"
            },
            "instance": {
              "type": "string",
              "description": "Database instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            },
            "project": {
              "description": "Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "id": "sql.databases.get",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}",
          "response": {
            "$ref": "Database"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Retrieves a resource containing information about a database inside a Cloud SQL instance.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}"
        },
        "list": {
          "httpMethod": "GET",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "project": {
              "type": "string",
              "description": "Project ID of the project that contains the instance.",
              "location": "path",
              "required": true
            },
            "instance": {
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "id": "sql.databases.list",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/databases",
          "response": {
            "$ref": "DatabasesListResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Lists databases in the specified Cloud SQL instance.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/databases"
        },
        "update": {
          "parameters": {
            "instance": {
              "type": "string",
              "description": "Database instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            },
            "database": {
              "required": true,
              "location": "path",
              "description": "Name of the database to be updated in the instance.",
              "type": "string"
            }
          },
          "httpMethod": "PUT",
          "parameterOrder": [
            "project",
            "instance",
            "database"
          ],
          "id": "sql.databases.update",
          "request": {
            "$ref": "Database"
          },
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Updates a resource containing information about a database inside a Cloud SQL instance.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/databases/{database}"
        },
        "insert": {
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST",
          "parameters": {
            "instance": {
              "description": "Database instance ID. This does not include the project ID.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            }
          },
          "request": {
            "$ref": "Database"
          },
          "id": "sql.databases.insert",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/databases",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Inserts a resource containing information about a database inside a Cloud SQL instance. **Note:** You can't modify the default character set and collation.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/databases"
        }
      }
    },
    "flags": {
      "methods": {
        "list": {
          "id": "sql.flags.list",
          "httpMethod": "GET",
          "parameterOrder": [],
          "parameters": {
            "databaseVersion": {
              "location": "query",
              "description": "Database type and version you want to retrieve flags for. By default, this method returns flags for all database types and versions.",
              "type": "string"
            },
            "flagScope": {
              "description": "Optional. Specify the scope of flags to be returned by SqlFlagsListService. Return list of database flags if unspecified.",
              "type": "string",
              "location": "query",
              "enumDescriptions": [
                "Assume database flags if unspecified",
                "database flags",
                "connection pool configuration flags"
              ],
              "enum": [
                "SQL_FLAG_SCOPE_UNSPECIFIED",
                "SQL_FLAG_SCOPE_DATABASE",
                "SQL_FLAG_SCOPE_CONNECTION_POOL"
              ]
            }
          },
          "path": "sql/v1beta4/flags",
          "flatPath": "sql/v1beta4/flags",
          "response": {
            "$ref": "FlagsListResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Lists all available database flags for Cloud SQL instances."
        }
      }
    },
    "sslCerts": {
      "methods": {
        "createEphemeral": {
          "id": "sql.sslCerts.createEphemeral",
          "request": {
            "$ref": "SslCertsCreateEphemeralRequest"
          },
          "parameters": {
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the Cloud SQL project.",
              "type": "string"
            },
            "instance": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID."
            }
          },
          "httpMethod": "POST",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/createEphemeral",
          "response": {
            "$ref": "SslCert"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/createEphemeral"
        },
        "delete": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Deletes the SSL certificate. For First Generation instances, the certificate remains valid until the instance is restarted.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}",
          "id": "sql.sslCerts.delete",
          "parameters": {
            "sha1Fingerprint": {
              "description": "Sha1 FingerPrint.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "project": {
              "location": "path",
              "required": true,
              "type": "string",
              "description": "Project ID of the project that contains the instance."
            },
            "instance": {
              "type": "string",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "location": "path",
              "required": true
            }
          },
          "parameterOrder": [
            "project",
            "instance",
            "sha1Fingerprint"
          ],
          "httpMethod": "DELETE"
        },
        "list": {
          "httpMethod": "GET",
          "parameterOrder": [
            "project",
            "instance"
          ],
          "parameters": {
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            }
          },
          "id": "sql.sslCerts.list",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/sslCerts",
          "response": {
            "$ref": "SslCertsListResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "Lists all of the current SSL certificates for the instance.",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/sslCerts"
        },
        "insert": {
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/sslCerts",
          "response": {
            "$ref": "SslCertsInsertResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/sslCerts",
          "request": {
            "$ref": "SslCertsInsertRequest"
          },
          "id": "sql.sslCerts.insert",
          "parameters": {
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            },
            "project": {
              "description": "Project ID of the project that contains the instance.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "parameterOrder": [
            "project",
            "instance"
          ],
          "httpMethod": "POST"
        },
        "get": {
          "response": {
            "$ref": "SslCert"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/sqlservice.admin"
          ],
          "description": "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.",
          "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}",
          "path": "sql/v1beta4/projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}",
          "parameters": {
            "instance": {
              "required": true,
              "location": "path",
              "description": "Cloud SQL instance ID. This does not include the project ID.",
              "type": "string"
            },
            "project": {
              "required": true,
              "location": "path",
              "description": "Project ID of the project that contains the instance.",
              "type": "string"
            },
            "sha1Fingerprint": {
              "description": "Sha1 FingerPrint.",
              "type": "string",
              "required": true,
              "location": "path"
            }
          },
          "parameterOrder": [
            "project",
            "instance",
            "sha1Fingerprint"
          ],
          "httpMethod": "GET",
          "id": "sql.sslCerts.get"
        }
      }
    }
  },
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/sqlservice.admin": {
          "description": "Manage your Google SQL Service instances"
        },
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account."
        }
      }
    }
  },
  "title": "Cloud SQL Admin API",
  "ownerName": "Google",
  "parameters": {
    "oauth_token": {
      "location": "query",
      "type": "string",
      "description": "OAuth 2.0 token for the current user."
    },
    "$.xgafv": {
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string",
      "description": "V1 error format."
    },
    "key": {
      "location": "query",
      "type": "string",
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token."
    },
    "upload_protocol": {
      "type": "string",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query"
    },
    "access_token": {
      "type": "string",
      "description": "OAuth access token.",
      "location": "query"
    },
    "uploadType": {
      "type": "string",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query"
    },
    "callback": {
      "location": "query",
      "description": "JSONP",
      "type": "string"
    },
    "quotaUser": {
      "location": "query",
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "type": "string"
    },
    "alt": {
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "default": "json",
      "type": "string",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ]
    },
    "fields": {
      "location": "query",
      "type": "string",
      "description": "Selector specifying which fields to include in a partial response."
    },
    "prettyPrint": {
      "location": "query",
      "default": "true",
      "type": "boolean",
      "description": "Returns response with indentations and line breaks."
    }
  },
  "servicePath": "",
  "basePath": "",
  "mtlsRootUrl": "https://sqladmin.mtls.googleapis.com/",
  "endpoints": [
    {
      "endpointUrl": "https://sqladmin.us-east7.rep.googleapis.com/",
      "location": "us-east7",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.northamerica-northeast1.rep.googleapis.com/",
      "location": "northamerica-northeast1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.northamerica-northeast2.rep.googleapis.com/",
      "location": "northamerica-northeast2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-north1.rep.googleapis.com/",
      "location": "europe-north1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-west2.rep.googleapis.com/",
      "location": "us-west2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-east2.rep.googleapis.com/",
      "location": "asia-east2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-west3.rep.googleapis.com/",
      "location": "europe-west3",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-east1.rep.googleapis.com/",
      "location": "us-east1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-east1.rep.googleapis.com/",
      "location": "asia-east1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-northeast2.rep.googleapis.com/",
      "location": "asia-northeast2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.me-central1.rep.googleapis.com/",
      "location": "me-central1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-central2.rep.googleapis.com/",
      "location": "europe-central2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.northamerica-south1.rep.googleapis.com/",
      "location": "northamerica-south1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-west8.rep.googleapis.com/",
      "location": "us-west8",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.me-west1.rep.googleapis.com/",
      "location": "me-west1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-northeast3.rep.googleapis.com/",
      "location": "asia-northeast3",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-west1.rep.googleapis.com/",
      "location": "us-west1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-west9.rep.googleapis.com/",
      "location": "europe-west9",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-southeast3.rep.googleapis.com/",
      "location": "asia-southeast3",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-west1.rep.googleapis.com/",
      "location": "europe-west1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-southeast1.rep.googleapis.com/",
      "location": "asia-southeast1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-west4.rep.googleapis.com/",
      "location": "us-west4",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-west12.rep.googleapis.com/",
      "location": "europe-west12",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-south2.rep.googleapis.com/",
      "location": "asia-south2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.australia-southeast1.rep.googleapis.com/",
      "location": "australia-southeast1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-west6.rep.googleapis.com/",
      "location": "europe-west6",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-east4.rep.googleapis.com/",
      "location": "us-east4",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-southeast2.rep.googleapis.com/",
      "location": "asia-southeast2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-southwest1.rep.googleapis.com/",
      "location": "europe-southwest1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-west8.rep.googleapis.com/",
      "location": "europe-west8",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.africa-south1.rep.googleapis.com/",
      "location": "africa-south1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.me-central2.rep.googleapis.com/",
      "location": "me-central2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-central1.rep.googleapis.com/",
      "location": "us-central1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-central2.rep.googleapis.com/",
      "location": "us-central2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-north2.rep.googleapis.com/",
      "location": "europe-north2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-northeast1.rep.googleapis.com/",
      "location": "asia-northeast1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-west2.rep.googleapis.com/",
      "location": "europe-west2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.southamerica-east1.rep.googleapis.com/",
      "location": "southamerica-east1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-east5.rep.googleapis.com/",
      "location": "us-east5",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.asia-south1.rep.googleapis.com/",
      "location": "asia-south1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-west4.rep.googleapis.com/",
      "location": "europe-west4",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-west3.rep.googleapis.com/",
      "location": "us-west3",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.australia-southeast2.rep.googleapis.com/",
      "location": "australia-southeast2",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.southamerica-west1.rep.googleapis.com/",
      "location": "southamerica-west1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.europe-west10.rep.googleapis.com/",
      "location": "europe-west10",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://sqladmin.us-south1.rep.googleapis.com/",
      "location": "us-south1",
      "description": "Regional Endpoint"
    }
  ],
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "baseUrl": "https://sqladmin.googleapis.com/",
  "description": "Cloud SQL Admin API",
  "kind": "discovery#restDescription",
  "canonicalName": "SQL Admin",
  "revision": "20260627",
  "name": "sqladmin",
  "ownerDomain": "google.com",
  "id": "sqladmin:v1beta4",
  "schemas": {
    "InstancesListServerCertificatesResponse": {
      "id": "InstancesListServerCertificatesResponse",
      "properties": {
        "serverCerts": {
          "description": "List of server certificates for the instance, signed by the corresponding CA from the `ca_certs` list.",
          "type": "array",
          "items": {
            "$ref": "SslCert"
          }
        },
        "activeVersion": {
          "description": "The `sha1_fingerprint` of the active certificate from `server_certs`.",
          "type": "string"
        },
        "caCerts": {
          "items": {
            "$ref": "SslCert"
          },
          "description": "List of server CA certificates for the instance.",
          "type": "array"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#instancesListServerCertificates`."
        }
      },
      "type": "object",
      "description": "Instances ListServerCertificatess response."
    },
    "SqlInstancesVerifyExternalSyncSettingsResponse": {
      "description": "Instance verify external sync settings response.",
      "type": "object",
      "id": "SqlInstancesVerifyExternalSyncSettingsResponse",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always `sql#migrationSettingErrorList`."
        },
        "errors": {
          "items": {
            "$ref": "SqlExternalSyncSettingError"
          },
          "description": "List of migration violations.",
          "type": "array"
        },
        "warnings": {
          "items": {
            "$ref": "SqlExternalSyncSettingError"
          },
          "description": "List of migration warnings.",
          "type": "array"
        }
      }
    },
    "Reschedule": {
      "type": "object",
      "id": "Reschedule",
      "properties": {
        "rescheduleType": {
          "type": "string",
          "description": "Required. The type of the reschedule.",
          "enum": [
            "RESCHEDULE_TYPE_UNSPECIFIED",
            "IMMEDIATE",
            "NEXT_AVAILABLE_WINDOW",
            "SPECIFIC_TIME"
          ],
          "enumDescriptions": [
            "",
            "Reschedules maintenance to happen now (within 5 minutes).",
            "Reschedules maintenance to occur within one week from the originally scheduled day and time.",
            "Reschedules maintenance to a specific time and day."
          ]
        },
        "scheduleTime": {
          "description": "Optional. Timestamp when the maintenance shall be rescheduled to if reschedule_type=SPECIFIC_TIME, in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`.",
          "type": "string",
          "format": "google-datetime"
        }
      }
    },
    "SslCertsInsertResponse": {
      "id": "SslCertsInsertResponse",
      "properties": {
        "kind": {
          "description": "This is always `sql#sslCertsInsert`.",
          "type": "string"
        },
        "operation": {
          "description": "The operation to track the ssl certs insert request.",
          "$ref": "Operation"
        },
        "serverCaCert": {
          "description": "The server Certificate Authority's certificate. If this is missing you can force a new one to be generated by calling resetSslConfig method on instances resource.",
          "$ref": "SslCert"
        },
        "clientCert": {
          "description": "The new client certificate and private key.",
          "$ref": "SslCertDetail"
        }
      },
      "description": "SslCert insert response.",
      "type": "object"
    },
    "InstancesCloneRequest": {
      "id": "InstancesCloneRequest",
      "properties": {
        "cloneContext": {
          "description": "Contains details about the clone operation.",
          "$ref": "CloneContext"
        }
      },
      "type": "object",
      "description": "Database instance clone request."
    },
    "PointInTimeRestoreContext": {
      "id": "PointInTimeRestoreContext",
      "properties": {
        "allocatedIpRange": {
          "type": "string",
          "description": "Optional. The name of the allocated IP range for the internal IP Cloud SQL instance. For example: \"google-managed-services-default\". If you set this, then Cloud SQL creates the IP address for the cloned instance in the allocated range. This range must comply with [RFC 1035](https://tools.ietf.org/html/rfc1035) standards. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. Reserved for future use."
        },
        "preferredSecondaryZone": {
          "type": "string",
          "description": "Optional. Point-in-time recovery of a regional instance in the specified zones. If not specified, clone to the same secondary zone as the source instance. This value cannot be the same as the preferred_zone field."
        },
        "privateNetwork": {
          "type": "string",
          "description": "Optional. The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, `/projects/myProject/global/networks/default`."
        },
        "targetInstance": {
          "type": "string",
          "description": "Target instance name."
        },
        "targetInstanceClearSettingsFieldNames": {
          "description": "Optional. Specifies the instance settings that will be cleared from the source instance. This field is only applicable for cross project PITRs.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "region": {
          "type": "string",
          "description": "Optional. The region of the target instance where the datasource will be restored. For example: \"us-central1\"."
        },
        "targetInstanceSettings": {
          "description": "Optional. Specifies the instance settings that will be overridden from the source instance. This field is only applicable for cross project PITRs.",
          "$ref": "DatabaseInstance"
        },
        "datasource": {
          "description": "The Backup and Disaster Recovery (DR) Service Datasource URI. Format: projects/{project}/locations/{region}/backupVaults/{backupvault}/dataSources/{datasource}.",
          "type": "string"
        },
        "preferredZone": {
          "description": "Optional. Point-in-time recovery of an instance to the specified zone. If no zone is specified, then clone to the same primary zone as the source instance.",
          "type": "string"
        },
        "pointInTime": {
          "type": "string",
          "description": "Required. The date and time to which you want to restore the instance.",
          "format": "google-datetime"
        }
      },
      "type": "object",
      "description": "Context to perform a point-in-time restore of an instance managed by Backup and Disaster Recovery (DR) Service."
    },
    "PasswordStatus": {
      "id": "PasswordStatus",
      "properties": {
        "locked": {
          "description": "If true, user does not have login privileges.",
          "type": "boolean"
        },
        "passwordExpirationTime": {
          "format": "google-datetime",
          "description": "The expiration time of the current password.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "Read-only password status."
    },
    "LocationPreference": {
      "type": "object",
      "description": "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.",
      "id": "LocationPreference",
      "properties": {
        "secondaryZone": {
          "description": "The preferred Compute Engine zone for the secondary/failover (for example: us-central1-a, us-central1-b, etc.). To disable this field, set it to 'no_secondary_zone'.",
          "type": "string"
        },
        "followGaeApplication": {
          "deprecated": true,
          "type": "string",
          "description": "The App Engine application to follow, it must be in the same region as the Cloud SQL instance. WARNING: Changing this might restart the instance."
        },
        "zone": {
          "type": "string",
          "description": "The preferred Compute Engine zone (for example: us-central1-a, us-central1-b, etc.). WARNING: Changing this might restart the instance."
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#locationPreference`."
        }
      }
    },
    "InstancesAcquireSsrsLeaseRequest": {
      "description": "Request to acquire an SSRS lease for an instance.",
      "type": "object",
      "id": "InstancesAcquireSsrsLeaseRequest",
      "properties": {
        "acquireSsrsLeaseContext": {
          "description": "Contains details about the acquire SSRS lease operation.",
          "$ref": "AcquireSsrsLeaseContext"
        }
      }
    },
    "BackupConfiguration": {
      "id": "BackupConfiguration",
      "properties": {
        "transactionalLogStorageState": {
          "type": "string",
          "description": "Output only. This value contains the storage location of transactional logs for the database for point-in-time recovery.",
          "enumDescriptions": [
            "Unspecified.",
            "The transaction logs used for PITR for the instance are stored on a data disk.",
            "The transaction logs used for PITR for the instance are switching from being stored on a data disk to being stored in Cloud Storage. Only applicable to MySQL.",
            "The transaction logs used for PITR for the instance are now stored in Cloud Storage. Previously, they were stored on a data disk. Only applicable to MySQL.",
            "The transaction logs used for PITR for the instance are stored in Cloud Storage. Only applicable to MySQL and PostgreSQL."
          ],
          "enum": [
            "TRANSACTIONAL_LOG_STORAGE_STATE_UNSPECIFIED",
            "DISK",
            "SWITCHING_TO_CLOUD_STORAGE",
            "SWITCHED_TO_CLOUD_STORAGE",
            "CLOUD_STORAGE"
          ],
          "readOnly": true
        },
        "startTime": {
          "description": "Start time for the daily backup configuration in UTC timezone in the 24 hour format - `HH:MM`.",
          "type": "string"
        },
        "backupTier": {
          "enum": [
            "BACKUP_TIER_UNSPECIFIED",
            "STANDARD",
            "ADVANCED",
            "ENHANCED"
          ],
          "readOnly": true,
          "type": "string",
          "enumDeprecated": [
            false,
            false,
            true,
            false
          ],
          "description": "Output only. Backup tier that manages the backups for the instance.",
          "enumDescriptions": [
            "Unspecified.",
            "Instance is managed by Cloud SQL.",
            "Deprecated: ADVANCED is deprecated. Please use ENHANCED instead.",
            "Instance is managed by Google Cloud Backup and DR Service."
          ]
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#backupConfiguration`."
        },
        "transactionLogRetentionDays": {
          "type": "integer",
          "description": "The number of days of transaction logs we retain for point in time restore, from 1-7.",
          "format": "int32"
        },
        "enabled": {
          "description": "Whether this configuration is enabled.",
          "type": "boolean"
        },
        "backupRetentionSettings": {
          "description": "Backup retention settings.",
          "$ref": "BackupRetentionSettings"
        },
        "binaryLogEnabled": {
          "description": "(MySQL only) Whether binary log is enabled. If backup configuration is disabled, binarylog must be disabled as well.",
          "type": "boolean"
        },
        "location": {
          "type": "string",
          "description": "Location of the backup"
        },
        "pointInTimeRecoveryEnabled": {
          "description": "Whether point in time recovery is enabled.",
          "type": "boolean"
        },
        "replicationLogArchivingEnabled": {
          "description": "Optional. Deprecated: replication_log_archiving_enabled is deprecated and will be removed from a future version of the API. Use point_in_time_recovery_enabled instead.",
          "type": "boolean",
          "deprecated": true
        }
      },
      "description": "Database instance backup configuration.",
      "type": "object"
    },
    "TruncateLogContext": {
      "id": "TruncateLogContext",
      "properties": {
        "logType": {
          "description": "The type of log to truncate. Valid values are `MYSQL_GENERAL_TABLE` and `MYSQL_SLOW_TABLE`.",
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#truncateLogContext`."
        }
      },
      "type": "object",
      "description": "Database Instance truncate log context."
    },
    "ApiWarning": {
      "id": "ApiWarning",
      "properties": {
        "code": {
          "enumDescriptions": [
            "An unknown or unset warning type from Cloud SQL API.",
            "Warning when one or more regions are not reachable. The returned result set may be incomplete.",
            "Warning when user provided maxResults parameter exceeds the limit. The returned result set may be incomplete.",
            "Warning when user tries to create/update a user with credentials that have previously been compromised by a public data breach.",
            "Warning when the operation succeeds but some non-critical workflow state failed."
          ],
          "type": "string",
          "description": "Code to uniquely identify the warning type.",
          "enum": [
            "SQL_API_WARNING_CODE_UNSPECIFIED",
            "REGION_UNREACHABLE",
            "MAX_RESULTS_EXCEEDS_LIMIT",
            "COMPROMISED_CREDENTIALS",
            "INTERNAL_STATE_FAILURE"
          ]
        },
        "region": {
          "description": "The region name for REGION_UNREACHABLE warning.",
          "type": "string"
        },
        "message": {
          "description": "The warning message.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "An Admin API warning message."
    },
    "SslCertsListResponse": {
      "id": "SslCertsListResponse",
      "properties": {
        "items": {
          "items": {
            "$ref": "SslCert"
          },
          "type": "array",
          "description": "List of client certificates for the instance."
        },
        "kind": {
          "description": "This is always `sql#sslCertsList`.",
          "type": "string"
        }
      },
      "description": "SslCerts list response.",
      "type": "object"
    },
    "ConnectionPoolConfig": {
      "id": "ConnectionPoolConfig",
      "properties": {
        "poolerCount": {
          "type": "integer",
          "description": "Output only. Number of connection poolers.",
          "readOnly": true,
          "format": "int32"
        },
        "connectionPoolingEnabled": {
          "description": "Whether managed connection pooling is enabled.",
          "type": "boolean"
        },
        "flags": {
          "type": "array",
          "description": "Optional. List of connection pool configuration flags.",
          "items": {
            "$ref": "ConnectionPoolFlags"
          }
        }
      },
      "description": "The managed connection pooling configuration.",
      "type": "object"
    },
    "DemoteMasterConfiguration": {
      "id": "DemoteMasterConfiguration",
      "properties": {
        "kind": {
          "description": "This is always `sql#demoteMasterConfiguration`.",
          "type": "string"
        },
        "mysqlReplicaConfiguration": {
          "description": "MySQL specific configuration when replicating from a MySQL on-premises primary instance. Replication configuration information such as the username, password, certificates, and keys are not stored in the instance metadata. The configuration information is used only to set up the replication connection and is stored by MySQL in a file named `master.info` in the data directory.",
          "$ref": "DemoteMasterMySqlReplicaConfiguration"
        }
      },
      "description": "Read-replica configuration for connecting to the on-premises primary instance.",
      "type": "object"
    },
    "BackupReencryptionConfig": {
      "id": "BackupReencryptionConfig",
      "properties": {
        "backupType": {
          "enumDescriptions": [
            "Unknown backup type, will be defaulted to AUTOMATIC backup type",
            "Reencrypt automatic backups",
            "Reencrypt on-demand backups"
          ],
          "description": "Type of backups users want to re-encrypt.",
          "enum": [
            "BACKUP_TYPE_UNSPECIFIED",
            "AUTOMATED",
            "ON_DEMAND"
          ],
          "type": "string"
        },
        "backupLimit": {
          "format": "int32",
          "description": "Backup re-encryption limit",
          "type": "integer"
        }
      },
      "description": "Backup Reencryption Config",
      "type": "object"
    },
    "InstancesListEntraIdCertificatesResponse": {
      "type": "object",
      "description": "Instances ListEntraIdCertificates response.",
      "id": "InstancesListEntraIdCertificatesResponse",
      "properties": {
        "certs": {
          "items": {
            "$ref": "SslCert"
          },
          "type": "array",
          "description": "List of Entra ID certificates for the instance."
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#instancesListEntraIdCertificates`."
        },
        "activeVersion": {
          "type": "string",
          "description": "The `sha1_fingerprint` of the active certificate from `certs`."
        }
      }
    },
    "UserPasswordValidationPolicy": {
      "description": "User level password validation policy.",
      "type": "object",
      "id": "UserPasswordValidationPolicy",
      "properties": {
        "status": {
          "description": "Output only. Read-only password status.",
          "$ref": "PasswordStatus",
          "readOnly": true
        },
        "enablePasswordVerification": {
          "description": "If true, the user must specify the current password before changing the password. This flag is supported only for MySQL.",
          "type": "boolean"
        },
        "allowedFailedAttempts": {
          "format": "int32",
          "type": "integer",
          "description": "Number of failed login attempts allowed before user get locked."
        },
        "passwordExpirationDuration": {
          "format": "google-duration",
          "description": "Expiration duration after password is updated.",
          "type": "string"
        },
        "enableFailedAttemptsCheck": {
          "description": "If true, failed login attempts check will be enabled.",
          "type": "boolean"
        }
      }
    },
    "DnsNameMapping": {
      "id": "DnsNameMapping",
      "properties": {
        "recordManager": {
          "description": "Output only. The manager for this DNS record.",
          "type": "string",
          "enumDescriptions": [
            "Record manager not set. This value should not be used.",
            "The record may be managed by the customer. It is not automatically managed by Cloud SQL automation.",
            "The record is managed by Cloud SQL, which will create, update, and delete the DNS records for the zone automatically when the Cloud SQL database instance is created or updated."
          ],
          "enum": [
            "RECORD_MANAGER_UNSPECIFIED",
            "CUSTOMER",
            "CLOUD_SQL_AUTOMATION"
          ],
          "readOnly": true
        },
        "name": {
          "type": "string",
          "description": "Output only. The DNS name.",
          "readOnly": true
        },
        "connectionType": {
          "description": "Output only. The connection type of the DNS name.",
          "type": "string",
          "enumDescriptions": [
            "Unknown connection type.",
            "Public IP.",
            "Private services access (private IP).",
            "Private Service Connect."
          ],
          "enum": [
            "CONNECTION_TYPE_UNSPECIFIED",
            "PUBLIC",
            "PRIVATE_SERVICES_ACCESS",
            "PRIVATE_SERVICE_CONNECT"
          ],
          "readOnly": true
        },
        "dnsScope": {
          "enum": [
            "DNS_SCOPE_UNSPECIFIED",
            "INSTANCE",
            "CLUSTER"
          ],
          "readOnly": true,
          "description": "Output only. The scope that the DNS name applies to.",
          "type": "string",
          "enumDescriptions": [
            "DNS scope not set. This value should not be used.",
            "Indicates an instance-level DNS name.",
            "Indicates a cluster-level DNS name."
          ]
        }
      },
      "type": "object",
      "description": "DNS metadata."
    },
    "SqlScheduledMaintenance": {
      "id": "SqlScheduledMaintenance",
      "properties": {
        "startTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "The start time of any upcoming scheduled maintenance for this instance."
        },
        "canDefer": {
          "deprecated": true,
          "type": "boolean"
        },
        "scheduleDeadlineTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "Maintenance cannot be rescheduled to start beyond this deadline."
        },
        "canReschedule": {
          "description": "If the scheduled maintenance can be rescheduled.",
          "type": "boolean"
        }
      },
      "type": "object",
      "description": "Any scheduled maintenance for this instance."
    },
    "SqlActiveDirectoryConfig": {
      "id": "SqlActiveDirectoryConfig",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always sql#activeDirectoryConfig."
        },
        "domain": {
          "description": "The name of the domain (e.g., mydomain.com).",
          "type": "string"
        },
        "adminCredentialSecretName": {
          "description": "Optional. The secret manager key storing the administrator credential. (e.g., projects/{project}/secrets/{secret}).",
          "type": "string"
        },
        "organizationalUnit": {
          "type": "string",
          "description": "Optional. The organizational unit distinguished name. This is the full hierarchical path to the organizational unit."
        },
        "mode": {
          "enum": [
            "ACTIVE_DIRECTORY_MODE_UNSPECIFIED",
            "MANAGED_ACTIVE_DIRECTORY",
            "SELF_MANAGED_ACTIVE_DIRECTORY",
            "CUSTOMER_MANAGED_ACTIVE_DIRECTORY"
          ],
          "description": "Optional. The mode of the Active Directory configuration.",
          "type": "string",
          "enumDeprecated": [
            false,
            false,
            true,
            false
          ],
          "enumDescriptions": [
            "Unspecified mode.",
            "Managed Active Directory mode. This is the fallback option to maintain backward compatibility.",
            "Deprecated: Use CUSTOMER_MANAGED_ACTIVE_DIRECTORY instead.",
            "Customer-managed Active Directory mode."
          ]
        },
        "dnsServers": {
          "type": "array",
          "description": "Optional. Domain controller IPv4 addresses used to bootstrap Active Directory.",
          "items": {
            "type": "string"
          }
        }
      },
      "description": "Active Directory configuration, relevant only for Cloud SQL for SQL Server.",
      "type": "object"
    },
    "AvailableDatabaseVersion": {
      "description": "An available database version. It can be a major or a minor version.",
      "type": "object",
      "id": "AvailableDatabaseVersion",
      "properties": {
        "name": {
          "description": "The database version name. For MySQL 8.0, this string provides the database major and minor version.",
          "type": "string"
        },
        "displayName": {
          "description": "The database version's display name.",
          "type": "string"
        },
        "majorVersion": {
          "description": "The version's major version name.",
          "type": "string"
        }
      }
    },
    "InsightsConfig": {
      "description": "Insights configuration. This specifies when Cloud SQL Insights feature is enabled and optional configuration.",
      "type": "object",
      "id": "InsightsConfig",
      "properties": {
        "queryInsightsEnabled": {
          "type": "boolean",
          "description": "Whether Query Insights feature is enabled."
        },
        "recordClientAddress": {
          "type": "boolean",
          "description": "Whether Query Insights will record client address when enabled."
        },
        "enhancedQueryInsightsEnabled": {
          "type": "boolean",
          "description": "Optional. Whether enhanced query insights feature is enabled."
        },
        "recordApplicationTags": {
          "type": "boolean",
          "description": "Whether Query Insights will record application tags from query when enabled."
        },
        "queryPlansPerMinute": {
          "description": "Number of query execution plans captured by Insights per minute for all queries combined. Default is 5.",
          "type": "integer",
          "format": "int32"
        },
        "queryStringLength": {
          "format": "int32",
          "type": "integer",
          "description": "Maximum query length stored in bytes. Default value: 1024 bytes. Range: 256-4500 bytes. Query lengths greater than this field value will be truncated to this value. When unset, query length will be the default value. Changing query length will restart the database."
        }
      }
    },
    "InstancesImportRequest": {
      "id": "InstancesImportRequest",
      "properties": {
        "importContext": {
          "description": "Contains details about the import operation.",
          "$ref": "ImportContext"
        }
      },
      "description": "Database instance import request.",
      "type": "object"
    },
    "SqlInstancesRescheduleMaintenanceRequestBody": {
      "description": "Reschedule options for maintenance windows.",
      "type": "object",
      "id": "SqlInstancesRescheduleMaintenanceRequestBody",
      "properties": {
        "reschedule": {
          "description": "Required. The type of the reschedule the user wants.",
          "$ref": "Reschedule"
        }
      }
    },
    "Tier": {
      "id": "Tier",
      "properties": {
        "region": {
          "items": {
            "type": "string"
          },
          "description": "The applicable regions for this tier.",
          "type": "array"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#tier`."
        },
        "tier": {
          "description": "An identifier for the machine type, for example, `db-custom-1-3840`. For related information, see [Pricing](/sql/pricing).",
          "type": "string"
        },
        "RAM": {
          "format": "int64",
          "description": "The maximum RAM usage of this tier in bytes.",
          "type": "string"
        },
        "DiskQuota": {
          "description": "The maximum disk size of this tier in bytes.",
          "type": "string",
          "format": "int64"
        }
      },
      "description": "A Google Cloud SQL service tier resource.",
      "type": "object"
    },
    "DatabaseInstance": {
      "id": "DatabaseInstance",
      "properties": {
        "primaryDnsName": {
          "readOnly": true,
          "deprecated": true,
          "description": "Output only. DEPRECATED: please use write_endpoint instead.",
          "type": "string"
        },
        "writeEndpoint": {
          "description": "Output only. The dns name of the primary instance in a replication group.",
          "type": "string",
          "readOnly": true
        },
        "connectionName": {
          "description": "Connection name of the Cloud SQL instance used in connection strings.",
          "type": "string"
        },
        "replicaNames": {
          "type": "array",
          "description": "The replicas of the instance.",
          "items": {
            "type": "string"
          }
        },
        "suspensionReason": {
          "items": {
            "type": "string",
            "enum": [
              "SQL_SUSPENSION_REASON_UNSPECIFIED",
              "BILLING_ISSUE",
              "LEGAL_ISSUE",
              "OPERATIONAL_ISSUE",
              "KMS_KEY_ISSUE",
              "PROJECT_ABUSE"
            ],
            "enumDescriptions": [
              "This is an unknown suspension reason.",
              "The instance is suspended due to billing issues (for example:, account issue)",
              "The instance is suspended due to illegal content (for example:, child pornography, copyrighted material, etc.).",
              "The instance is causing operational issues (for example:, causing the database to crash).",
              "The KMS key used by the instance is either revoked or denied access to",
              "The project is suspended due to abuse detected by Ares."
            ]
          },
          "description": "If the instance state is SUSPENDED, the reason for the suspension.",
          "type": "array"
        },
        "state": {
          "description": "The current serving state of the Cloud SQL instance.",
          "type": "string",
          "enumDeprecated": [
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            false
          ],
          "enumDescriptions": [
            "The state of the instance is unknown.",
            "The instance is running, or has been stopped by owner.",
            "The instance is not available, for example due to problems with billing.",
            "The instance is being deleted.",
            "The instance is being created.",
            "The instance is down for maintenance.",
            "The creation of the instance failed or a fatal error occurred during maintenance.",
            "Deprecated",
            "(Applicable to read pool nodes only.) The read pool node needs to be repaired. The database might be unavailable."
          ],
          "enum": [
            "SQL_INSTANCE_STATE_UNSPECIFIED",
            "RUNNABLE",
            "SUSPENDED",
            "PENDING_DELETE",
            "PENDING_CREATE",
            "MAINTENANCE",
            "FAILED",
            "ONLINE_MAINTENANCE",
            "REPAIRING"
          ]
        },
        "availableMaintenanceVersions": {
          "type": "array",
          "description": "Output only. List all maintenance versions applicable on the instance",
          "readOnly": true,
          "items": {
            "type": "string"
          }
        },
        "settings": {
          "description": "The user settings.",
          "$ref": "Settings"
        },
        "serviceAccountEmailAddress": {
          "type": "string",
          "description": "The service account email address assigned to the instance. \\This property is read-only."
        },
        "databaseInstalledVersion": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Stores the current database version running on the instance including minor version such as `MYSQL_8_0_18`."
        },
        "upgradableDatabaseVersions": {
          "type": "array",
          "description": "Output only. All database versions that are available for upgrade.",
          "readOnly": true,
          "items": {
            "$ref": "AvailableDatabaseVersion"
          }
        },
        "replicaConfiguration": {
          "description": "Configuration specific to failover replicas and read replicas.",
          "$ref": "ReplicaConfiguration"
        },
        "project": {
          "type": "string",
          "description": "The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable."
        },
        "backendType": {
          "enumDescriptions": [
            "This is an unknown backend type for instance.",
            "V1 speckle instance.",
            "V2 speckle instance.",
            "On premises instance."
          ],
          "description": "The backend type. `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.",
          "type": "string",
          "enumDeprecated": [
            false,
            true,
            false,
            false
          ],
          "enum": [
            "SQL_BACKEND_TYPE_UNSPECIFIED",
            "FIRST_GEN",
            "SECOND_GEN",
            "EXTERNAL"
          ]
        },
        "outOfDiskReport": {
          "description": "This field represents the report generated by the proactive database wellness job for OutOfDisk issues. * Writers: * the proactive database wellness job for OOD. * Readers: * the proactive database wellness job",
          "$ref": "SqlOutOfDiskReport"
        },
        "pscServiceAttachmentLink": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The link to service attachment of PSC instance."
        },
        "onPremisesConfiguration": {
          "description": "Configuration specific to on-premises instances.",
          "$ref": "OnPremisesConfiguration"
        },
        "diskEncryptionConfiguration": {
          "description": "Disk encryption configuration specific to an instance.",
          "$ref": "DiskEncryptionConfiguration"
        },
        "maxDiskSize": {
          "description": "The maximum disk size of the instance in bytes.",
          "type": "string",
          "deprecated": true,
          "format": "int64"
        },
        "failoverReplica": {
          "description": "The name and status of the failover replica.",
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "description": "The name of the failover replica. If specified at instance creation, a failover replica is created for the instance. The name doesn't include the project ID."
            },
            "available": {
              "description": "The availability status of the failover replica. A false status indicates that the failover replica is out of sync. The primary instance can only failover to the failover replica when the status is true.",
              "type": "boolean"
            }
          }
        },
        "name": {
          "description": "Name of the Cloud SQL instance. This does not include the project ID.",
          "type": "string"
        },
        "kind": {
          "description": "This is always `sql#instance`.",
          "type": "string"
        },
        "geminiConfig": {
          "description": "Gemini instance configuration.",
          "$ref": "GeminiInstanceConfig"
        },
        "scheduledMaintenance": {
          "description": "The start time of any upcoming scheduled maintenance for this instance.",
          "$ref": "SqlScheduledMaintenance"
        },
        "dnsNames": {
          "description": "Output only. The list of DNS names used by this instance.",
          "type": "array",
          "items": {
            "$ref": "DnsNameMapping"
          },
          "readOnly": true
        },
        "currentDiskSize": {
          "deprecated": true,
          "format": "int64",
          "type": "string",
          "description": "The current disk usage of the instance in bytes. This property has been deprecated. Use the \"cloudsql.googleapis.com/database/disk/bytes_used\" metric in Cloud Monitoring API instead. Please see [this announcement](https://groups.google.com/d/msg/google-cloud-sql-announce/I_7-F9EBhT0/BtvFtdFeAgAJ) for details."
        },
        "gceZone": {
          "type": "string",
          "description": "The Compute Engine zone that the instance is currently serving from. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary zone. WARNING: Changing this might restart the instance."
        },
        "nodeCount": {
          "type": "integer",
          "description": "The number of read pool nodes in a read pool.",
          "format": "int32"
        },
        "databaseVersion": {
          "enum": [
            "SQL_DATABASE_VERSION_UNSPECIFIED",
            "MYSQL_5_1",
            "MYSQL_5_5",
            "MYSQL_5_6",
            "MYSQL_5_7",
            "MYSQL_8_0",
            "MYSQL_8_0_18",
            "MYSQL_8_0_26",
            "MYSQL_8_0_27",
            "MYSQL_8_0_28",
            "MYSQL_8_0_29",
            "MYSQL_8_0_30",
            "MYSQL_8_0_31",
            "MYSQL_8_0_32",
            "MYSQL_8_0_33",
            "MYSQL_8_0_34",
            "MYSQL_8_0_35",
            "MYSQL_8_0_36",
            "MYSQL_8_0_37",
            "MYSQL_8_0_39",
            "MYSQL_8_0_40",
            "MYSQL_8_0_41",
            "MYSQL_8_0_42",
            "MYSQL_8_0_43",
            "MYSQL_8_0_44",
            "MYSQL_8_0_45",
            "MYSQL_8_0_46",
            "MYSQL_8_4",
            "MYSQL_9_7",
            "SQLSERVER_2017_STANDARD",
            "SQLSERVER_2017_ENTERPRISE",
            "SQLSERVER_2017_EXPRESS",
            "SQLSERVER_2017_WEB",
            "POSTGRES_9_6",
            "POSTGRES_10",
            "POSTGRES_11",
            "POSTGRES_12",
            "POSTGRES_13",
            "POSTGRES_14",
            "POSTGRES_15",
            "POSTGRES_16",
            "POSTGRES_17",
            "POSTGRES_18",
            "POSTGRES_19",
            "POSTGRES_20",
            "SQLSERVER_2019_STANDARD",
            "SQLSERVER_2019_ENTERPRISE",
            "SQLSERVER_2019_EXPRESS",
            "SQLSERVER_2019_WEB",
            "SQLSERVER_2022_STANDARD",
            "SQLSERVER_2022_ENTERPRISE",
            "SQLSERVER_2022_EXPRESS",
            "SQLSERVER_2022_WEB",
            "SQLSERVER_2025_STANDARD",
            "SQLSERVER_2025_ENTERPRISE",
            "SQLSERVER_2025_EXPRESS"
          ],
          "enumDescriptions": [
            "This is an unknown database version.",
            "The database version is MySQL 5.1.",
            "The database version is MySQL 5.5.",
            "The database version is MySQL 5.6.",
            "The database version is MySQL 5.7.",
            "The database version is MySQL 8.",
            "The database major version is MySQL 8.0 and the minor version is 18.",
            "The database major version is MySQL 8.0 and the minor version is 26.",
            "The database major version is MySQL 8.0 and the minor version is 27.",
            "The database major version is MySQL 8.0 and the minor version is 28.",
            "The database major version is MySQL 8.0 and the minor version is 29.",
            "The database major version is MySQL 8.0 and the minor version is 30.",
            "The database major version is MySQL 8.0 and the minor version is 31.",
            "The database major version is MySQL 8.0 and the minor version is 32.",
            "The database major version is MySQL 8.0 and the minor version is 33.",
            "The database major version is MySQL 8.0 and the minor version is 34.",
            "The database major version is MySQL 8.0 and the minor version is 35.",
            "The database major version is MySQL 8.0 and the minor version is 36.",
            "The database major version is MySQL 8.0 and the minor version is 37.",
            "The database major version is MySQL 8.0 and the minor version is 39.",
            "The database major version is MySQL 8.0 and the minor version is 40.",
            "The database major version is MySQL 8.0 and the minor version is 41.",
            "The database major version is MySQL 8.0 and the minor version is 42.",
            "The database major version is MySQL 8.0 and the minor version is 43.",
            "The database major version is MySQL 8.0 and the minor version is 44.",
            "The database major version is MySQL 8.0 and the minor version is 45.",
            "The database major version is MySQL 8.0 and the minor version is 46.",
            "The database version is MySQL 8.4.",
            "The database version is MySQL 9.7.",
            "The database version is SQL Server 2017 Standard.",
            "The database version is SQL Server 2017 Enterprise.",
            "The database version is SQL Server 2017 Express.",
            "The database version is SQL Server 2017 Web.",
            "The database version is PostgreSQL 9.6.",
            "The database version is PostgreSQL 10.",
            "The database version is PostgreSQL 11.",
            "The database version is PostgreSQL 12.",
            "The database version is PostgreSQL 13.",
            "The database version is PostgreSQL 14.",
            "The database version is PostgreSQL 15.",
            "The database version is PostgreSQL 16.",
            "The database version is PostgreSQL 17.",
            "The database version is PostgreSQL 18.",
            "The database version is PostgreSQL 19.",
            "The database version is PostgreSQL 20.",
            "The database version is SQL Server 2019 Standard.",
            "The database version is SQL Server 2019 Enterprise.",
            "The database version is SQL Server 2019 Express.",
            "The database version is SQL Server 2019 Web.",
            "The database version is SQL Server 2022 Standard.",
            "The database version is SQL Server 2022 Enterprise.",
            "The database version is SQL Server 2022 Express.",
            "The database version is SQL Server 2022 Web.",
            "The database version is SQL Server 2025 Standard.",
            "The database version is SQL Server 2025 Enterprise.",
            "The database version is SQL Server 2025 Express."
          ],
          "description": "The database engine type and version. The `databaseVersion` field cannot be changed after instance creation.",
          "type": "string",
          "enumDeprecated": [
            false,
            true,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ]
        },
        "selfLink": {
          "description": "The URI of this resource.",
          "type": "string"
        },
        "tags": {
          "description": "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.",
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "nodes": {
          "type": "array",
          "description": "Output only. Entries containing information about each read pool node of the read pool.",
          "readOnly": true,
          "items": {
            "$ref": "PoolNodeConfig"
          }
        },
        "includeReplicasForMajorVersionUpgrade": {
          "type": "boolean",
          "description": "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."
        },
        "replicationCluster": {
          "description": "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.",
          "$ref": "ReplicationCluster"
        },
        "createTime": {
          "readOnly": true,
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. The time when the instance was created in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`."
        },
        "dnsName": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The dns name of the instance."
        },
        "switchTransactionLogsToCloudStorageEnabled": {
          "description": "Input only. Whether Cloud SQL is enabled to switch storing point-in-time recovery log files from a data disk to Cloud Storage.",
          "type": "boolean"
        },
        "instanceType": {
          "enumDescriptions": [
            "This is an unknown Cloud SQL instance type.",
            "A regular Cloud SQL instance that is not replicating from a primary instance.",
            "An instance running on the customer's premises that is not managed by Cloud SQL.",
            "A Cloud SQL instance acting as a read-replica.",
            "A Cloud SQL read pool."
          ],
          "type": "string",
          "description": "The instance type.",
          "enum": [
            "SQL_INSTANCE_TYPE_UNSPECIFIED",
            "CLOUD_SQL_INSTANCE",
            "ON_PREMISES_INSTANCE",
            "READ_REPLICA_INSTANCE",
            "READ_POOL_INSTANCE"
          ]
        },
        "region": {
          "type": "string",
          "description": "The geographical region of the Cloud SQL instance. It can be one of the [regions](https://cloud.google.com/sql/docs/mysql/locations#location-r) where Cloud SQL operates: For example, `asia-east1`, `europe-west1`, and `us-central1`. The default value is `us-central1`."
        },
        "sqlNetworkArchitecture": {
          "enumDescriptions": [
            "",
            "The instance uses the new network architecture.",
            "The instance uses the old network architecture."
          ],
          "description": "The SQL network architecture for the instance.",
          "enum": [
            "SQL_NETWORK_ARCHITECTURE_UNSPECIFIED",
            "NEW_NETWORK_ARCHITECTURE",
            "OLD_NETWORK_ARCHITECTURE"
          ],
          "type": "string"
        },
        "satisfiesPzi": {
          "type": "boolean",
          "description": "Output only. This status indicates whether the instance satisfies PZI. The status is reserved for future use.",
          "readOnly": true
        },
        "diskEncryptionStatus": {
          "description": "Disk encryption status specific to an instance.",
          "$ref": "DiskEncryptionStatus"
        },
        "rootPassword": {
          "description": "Initial root password. Use only on creation. You must set root passwords before you can connect to PostgreSQL instances.",
          "type": "string"
        },
        "ipAddresses": {
          "description": "The assigned IP addresses for the instance.",
          "type": "array",
          "items": {
            "$ref": "IpMapping"
          }
        },
        "satisfiesPzs": {
          "type": "boolean",
          "description": "This status indicates whether the instance satisfies PZS. The status is reserved for future use."
        },
        "etag": {
          "type": "string",
          "description": "This field is deprecated and will be removed from a future version of the API. Use the `settings.settingsVersion` field instead."
        },
        "serverCaCert": {
          "description": "SSL configuration.",
          "$ref": "SslCert"
        },
        "ipv6Address": {
          "description": "The IPv6 address assigned to the instance. (Deprecated) This property was applicable only to First Generation instances.",
          "type": "string",
          "deprecated": true
        },
        "secondaryGceZone": {
          "type": "string",
          "description": "The Compute Engine zone that the failover instance is currently serving from for a regional instance. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary/failover zone."
        },
        "masterInstanceName": {
          "description": "The name of the instance which will act as primary in the replication setup.",
          "type": "string"
        },
        "maintenanceVersion": {
          "description": "The current software version on the instance.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "A Cloud SQL instance resource."
    },
    "Row": {
      "id": "Row",
      "properties": {
        "values": {
          "items": {
            "$ref": "Value"
          },
          "description": "The values for the row.",
          "type": "array"
        }
      },
      "type": "object",
      "description": "Contains the values for a row."
    },
    "SqlSubOperationType": {
      "type": "object",
      "description": "The sub operation type based on the operation type.",
      "id": "SqlSubOperationType",
      "properties": {
        "maintenanceType": {
          "type": "string",
          "description": "The type of maintenance to be performed on the instance.",
          "enum": [
            "SQL_MAINTENANCE_TYPE_UNSPECIFIED",
            "INSTANCE_MAINTENANCE",
            "REPLICA_INCLUDED_MAINTENANCE",
            "INSTANCE_SELF_SERVICE_MAINTENANCE",
            "REPLICA_INCLUDED_SELF_SERVICE_MAINTENANCE"
          ],
          "enumDescriptions": [
            "Maintenance type is unspecified.",
            "Indicates that a standalone instance is undergoing maintenance. The instance can be either a primary instance or a replica.",
            "Indicates that the primary instance and all of its replicas, including cascading replicas, are undergoing maintenance. Maintenance is performed on groups of replicas first, followed by the primary instance.",
            "Indicates that the standalone instance is undergoing maintenance, initiated by self-service. The instance can be either a primary instance or a replica.",
            "Indicates that the primary instance and all of its replicas are undergoing maintenance, initiated by self-service. Maintenance is performed on groups of replicas first, followed by the primary instance."
          ]
        }
      }
    },
    "DatabaseFlags": {
      "id": "DatabaseFlags",
      "properties": {
        "name": {
          "description": "The name of the flag. These flags are passed at instance startup, so include both server options and system variables. Flags are specified with underscores, not hyphens. For more information, see [Configuring Database Flags](https://cloud.google.com/sql/docs/mysql/flags) in the Cloud SQL documentation.",
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "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."
        }
      },
      "type": "object",
      "description": "Database flags for Cloud SQL instances."
    },
    "DiskEncryptionStatus": {
      "id": "DiskEncryptionStatus",
      "properties": {
        "kmsKeyVersionName": {
          "description": "KMS key version used to encrypt the Cloud SQL instance resource",
          "type": "string"
        },
        "kind": {
          "description": "This is always `sql#diskEncryptionStatus`.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "Disk encryption status for an instance."
    },
    "DenyMaintenancePeriod": {
      "id": "DenyMaintenancePeriod",
      "properties": {
        "endDate": {
          "description": "\"deny maintenance period\" end date. If the year of the end date is empty, the year of the start date also must be empty. In this case, it means the deny maintenance period recurs every year. The date is in format yyyy-mm-dd i.e., 2020-11-01, or mm-dd, i.e., 11-01",
          "type": "string"
        },
        "startDate": {
          "description": "\"deny maintenance period\" start date. If the year of the start date is empty, the year of the end date also must be empty. In this case, it means the deny maintenance period recurs every year. The date is in format yyyy-mm-dd i.e., 2020-11-01, or mm-dd, i.e., 11-01",
          "type": "string"
        },
        "time": {
          "description": "Time in UTC when the \"deny maintenance period\" starts on start_date and ends on end_date. The time is in format: HH:mm:SS, i.e., 00:00:00",
          "type": "string"
        }
      },
      "type": "object",
      "description": "Deny Maintenance Periods. This specifies a date range during when all CSA rollout will be denied."
    },
    "ReplicaConfiguration": {
      "id": "ReplicaConfiguration",
      "properties": {
        "failoverTarget": {
          "description": "Specifies if the replica is the failover target. If the field is set to `true` the replica will be designated as a failover replica. In case the primary instance fails, the replica instance will be promoted as the new primary instance. Only one replica can be specified as failover target, and the replica has to be in different zone with the primary instance.",
          "type": "boolean"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#replicaConfiguration`."
        },
        "mysqlReplicaConfiguration": {
          "description": "MySQL specific configuration when replicating from a MySQL on-premises primary instance. Replication configuration information such as the username, password, certificates, and keys are not stored in the instance metadata. The configuration information is used only to set up the replication connection and is stored by MySQL in a file named `master.info` in the data directory.",
          "$ref": "MySqlReplicaConfiguration"
        },
        "cascadableReplica": {
          "description": "Optional. Specifies if a SQL Server replica is a cascadable replica. A cascadable replica is a SQL Server cross region replica that supports replica(s) under it.",
          "type": "boolean"
        }
      },
      "description": "Read-replica configuration for connecting to the primary instance.",
      "type": "object"
    },
    "TiersListResponse": {
      "id": "TiersListResponse",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always `sql#tiersList`."
        },
        "items": {
          "items": {
            "$ref": "Tier"
          },
          "description": "List of tiers.",
          "type": "array"
        }
      },
      "type": "object",
      "description": "Tiers list response."
    },
    "SqlOutOfDiskReport": {
      "id": "SqlOutOfDiskReport",
      "properties": {
        "sqlOutOfDiskState": {
          "enumDescriptions": [
            "Unspecified state",
            "The instance has plenty space on data disk",
            "Data disk is almost used up. It is shutdown to prevent data corruption."
          ],
          "description": "This field represents the state generated by the proactive database wellness job for OutOfDisk issues. * Writers: * the proactive database wellness job for OOD. * Readers: * the proactive database wellness job",
          "enum": [
            "SQL_OUT_OF_DISK_STATE_UNSPECIFIED",
            "NORMAL",
            "SOFT_SHUTDOWN"
          ],
          "type": "string"
        },
        "sqlMinRecommendedIncreaseSizeGb": {
          "type": "integer",
          "description": "The minimum recommended increase size in GigaBytes This field is consumed by the frontend * Writers: * the proactive database wellness job for OOD. * Readers:",
          "format": "int32"
        }
      },
      "type": "object",
      "description": "This message wraps up the information written by out-of-disk detection job."
    },
    "ExecuteSqlPayload": {
      "id": "ExecuteSqlPayload",
      "properties": {
        "user": {
          "type": "string",
          "description": "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."
        },
        "autoIamAuthn": {
          "description": "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.",
          "type": "boolean"
        },
        "rowLimit": {
          "type": "string",
          "description": "Optional. The maximum number of rows returned per SQL statement.",
          "format": "int64"
        },
        "sqlStatement": {
          "type": "string",
          "description": "Required. SQL statements to run on the database. It can be a single statement or a sequence of statements separated by semicolons."
        },
        "database": {
          "description": "Optional. Name of the database on which the statement will be executed.",
          "type": "string"
        },
        "partialResultMode": {
          "description": "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.",
          "enum": [
            "PARTIAL_RESULT_MODE_UNSPECIFIED",
            "FAIL_PARTIAL_RESULT",
            "ALLOW_PARTIAL_RESULT"
          ],
          "type": "string",
          "enumDescriptions": [
            "Unspecified mode, effectively the same as `FAIL_PARTIAL_RESULT`.",
            "Throw an error if the result exceeds 10 MB or if only a partial result can be retrieved. Don't return the result.",
            "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."
          ]
        },
        "application": {
          "description": "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.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "The request payload used to execute SQL statements."
    },
    "SqlInstancesVerifyExternalSyncSettingsRequest": {
      "id": "SqlInstancesVerifyExternalSyncSettingsRequest",
      "properties": {
        "verifyConnectionOnly": {
          "description": "Flag to enable verifying connection only",
          "type": "boolean"
        },
        "migrationType": {
          "type": "string",
          "description": "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.",
          "enum": [
            "MIGRATION_TYPE_UNSPECIFIED",
            "LOGICAL",
            "PHYSICAL"
          ],
          "enumDescriptions": [
            "Default value is a logical dump file-based migration",
            "Logical dump file-based migration",
            "Physical file-based migration"
          ]
        },
        "mysqlSyncConfig": {
          "description": "Optional. MySQL-specific settings for start external sync.",
          "$ref": "MySqlSyncConfig"
        },
        "syncParallelLevel": {
          "type": "string",
          "description": "Optional. Parallel level for initial data sync. Only applicable for PostgreSQL.",
          "enum": [
            "EXTERNAL_SYNC_PARALLEL_LEVEL_UNSPECIFIED",
            "MIN",
            "OPTIMAL",
            "MAX"
          ],
          "enumDescriptions": [
            "Unknown sync parallel level. Will be defaulted to OPTIMAL.",
            "Minimal parallel level.",
            "Optimal parallel level.",
            "Maximum parallel level."
          ]
        },
        "selectedObjects": {
          "items": {
            "$ref": "ExternalSyncSelectedObject"
          },
          "description": "Optional. Migrate only the specified objects from the source instance. If this field is empty, then migrate all objects.",
          "type": "array"
        },
        "verifyReplicationOnly": {
          "type": "boolean",
          "description": "Optional. Flag to verify settings required by replication setup only"
        },
        "syncMode": {
          "description": "External sync mode",
          "enum": [
            "EXTERNAL_SYNC_MODE_UNSPECIFIED",
            "ONLINE",
            "OFFLINE"
          ],
          "type": "string",
          "enumDescriptions": [
            "Unknown external sync mode, will be defaulted to ONLINE mode",
            "Online external sync will set up replication after initial data external sync",
            "Offline external sync only dumps and loads a one-time snapshot of the primary instance's data"
          ]
        }
      },
      "type": "object"
    },
    "MaintenanceWindow": {
      "description": "Maintenance window. This specifies when a Cloud SQL instance is restarted for system maintenance purposes.",
      "type": "object",
      "id": "MaintenanceWindow",
      "properties": {
        "hour": {
          "format": "int32",
          "description": "Hour of day - 0 to 23. Specify in the UTC time zone.",
          "type": "integer"
        },
        "updateTrack": {
          "enumDescriptions": [
            "This is an unknown maintenance timing preference.",
            "For an instance with a scheduled maintenance window, this maintenance timing indicates that the maintenance update is scheduled 7 to 14 days after the notification is sent out. Also referred to as `Week 1` (Console) and `preview` (gcloud CLI).",
            "For an instance with a scheduled maintenance window, this maintenance timing indicates that the maintenance update is scheduled 15 to 21 days after the notification is sent out. Also referred to as `Week 2` (Console) and `production` (gcloud CLI).",
            "For instance with a scheduled maintenance window, this maintenance timing indicates that the maintenance update is scheduled 35 to 42 days after the notification is sent out."
          ],
          "description": "Maintenance timing settings: `canary`, `stable`, or `week5`. For more information, see [About maintenance on Cloud SQL instances](https://cloud.google.com/sql/docs/mysql/maintenance).",
          "enum": [
            "SQL_UPDATE_TRACK_UNSPECIFIED",
            "canary",
            "stable",
            "week5"
          ],
          "type": "string"
        },
        "kind": {
          "description": "This is always `sql#maintenanceWindow`.",
          "type": "string"
        },
        "day": {
          "type": "integer",
          "description": "Day of week - `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, or `SUNDAY`. Specify in the UTC time zone. Returned in output as an integer, 1 to 7, where `1` equals Monday.",
          "format": "int32"
        }
      }
    },
    "Value": {
      "id": "Value",
      "properties": {
        "nullValue": {
          "type": "boolean",
          "description": "If cell value is null, then this flag will be set to true."
        },
        "value": {
          "type": "string",
          "description": "The cell value represented in string format."
        }
      },
      "type": "object",
      "description": "The cell value of the table."
    },
    "ListBackupsResponse": {
      "id": "ListBackupsResponse",
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "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."
        },
        "backups": {
          "items": {
            "$ref": "Backup"
          },
          "description": "A list of backups.",
          "type": "array"
        },
        "warnings": {
          "type": "array",
          "description": "If a region isn't unavailable or if an unknown error occurs, then a warning message is returned.",
          "items": {
            "$ref": "ApiWarning"
          }
        }
      },
      "type": "object",
      "description": "The response payload containing a list of the backups."
    },
    "ConnectSettings": {
      "description": "Connect settings retrieval response.",
      "type": "object",
      "id": "ConnectSettings",
      "properties": {
        "nodeCount": {
          "format": "int32",
          "description": "The number of read pool nodes in a read pool.",
          "type": "integer"
        },
        "databaseVersion": {
          "enum": [
            "SQL_DATABASE_VERSION_UNSPECIFIED",
            "MYSQL_5_1",
            "MYSQL_5_5",
            "MYSQL_5_6",
            "MYSQL_5_7",
            "MYSQL_8_0",
            "MYSQL_8_0_18",
            "MYSQL_8_0_26",
            "MYSQL_8_0_27",
            "MYSQL_8_0_28",
            "MYSQL_8_0_29",
            "MYSQL_8_0_30",
            "MYSQL_8_0_31",
            "MYSQL_8_0_32",
            "MYSQL_8_0_33",
            "MYSQL_8_0_34",
            "MYSQL_8_0_35",
            "MYSQL_8_0_36",
            "MYSQL_8_0_37",
            "MYSQL_8_0_39",
            "MYSQL_8_0_40",
            "MYSQL_8_0_41",
            "MYSQL_8_0_42",
            "MYSQL_8_0_43",
            "MYSQL_8_0_44",
            "MYSQL_8_0_45",
            "MYSQL_8_0_46",
            "MYSQL_8_4",
            "MYSQL_9_7",
            "SQLSERVER_2017_STANDARD",
            "SQLSERVER_2017_ENTERPRISE",
            "SQLSERVER_2017_EXPRESS",
            "SQLSERVER_2017_WEB",
            "POSTGRES_9_6",
            "POSTGRES_10",
            "POSTGRES_11",
            "POSTGRES_12",
            "POSTGRES_13",
            "POSTGRES_14",
            "POSTGRES_15",
            "POSTGRES_16",
            "POSTGRES_17",
            "POSTGRES_18",
            "POSTGRES_19",
            "POSTGRES_20",
            "SQLSERVER_2019_STANDARD",
            "SQLSERVER_2019_ENTERPRISE",
            "SQLSERVER_2019_EXPRESS",
            "SQLSERVER_2019_WEB",
            "SQLSERVER_2022_STANDARD",
            "SQLSERVER_2022_ENTERPRISE",
            "SQLSERVER_2022_EXPRESS",
            "SQLSERVER_2022_WEB",
            "SQLSERVER_2025_STANDARD",
            "SQLSERVER_2025_ENTERPRISE",
            "SQLSERVER_2025_EXPRESS"
          ],
          "enumDescriptions": [
            "This is an unknown database version.",
            "The database version is MySQL 5.1.",
            "The database version is MySQL 5.5.",
            "The database version is MySQL 5.6.",
            "The database version is MySQL 5.7.",
            "The database version is MySQL 8.",
            "The database major version is MySQL 8.0 and the minor version is 18.",
            "The database major version is MySQL 8.0 and the minor version is 26.",
            "The database major version is MySQL 8.0 and the minor version is 27.",
            "The database major version is MySQL 8.0 and the minor version is 28.",
            "The database major version is MySQL 8.0 and the minor version is 29.",
            "The database major version is MySQL 8.0 and the minor version is 30.",
            "The database major version is MySQL 8.0 and the minor version is 31.",
            "The database major version is MySQL 8.0 and the minor version is 32.",
            "The database major version is MySQL 8.0 and the minor version is 33.",
            "The database major version is MySQL 8.0 and the minor version is 34.",
            "The database major version is MySQL 8.0 and the minor version is 35.",
            "The database major version is MySQL 8.0 and the minor version is 36.",
            "The database major version is MySQL 8.0 and the minor version is 37.",
            "The database major version is MySQL 8.0 and the minor version is 39.",
            "The database major version is MySQL 8.0 and the minor version is 40.",
            "The database major version is MySQL 8.0 and the minor version is 41.",
            "The database major version is MySQL 8.0 and the minor version is 42.",
            "The database major version is MySQL 8.0 and the minor version is 43.",
            "The database major version is MySQL 8.0 and the minor version is 44.",
            "The database major version is MySQL 8.0 and the minor version is 45.",
            "The database major version is MySQL 8.0 and the minor version is 46.",
            "The database version is MySQL 8.4.",
            "The database version is MySQL 9.7.",
            "The database version is SQL Server 2017 Standard.",
            "The database version is SQL Server 2017 Enterprise.",
            "The database version is SQL Server 2017 Express.",
            "The database version is SQL Server 2017 Web.",
            "The database version is PostgreSQL 9.6.",
            "The database version is PostgreSQL 10.",
            "The database version is PostgreSQL 11.",
            "The database version is PostgreSQL 12.",
            "The database version is PostgreSQL 13.",
            "The database version is PostgreSQL 14.",
            "The database version is PostgreSQL 15.",
            "The database version is PostgreSQL 16.",
            "The database version is PostgreSQL 17.",
            "The database version is PostgreSQL 18.",
            "The database version is PostgreSQL 19.",
            "The database version is PostgreSQL 20.",
            "The database version is SQL Server 2019 Standard.",
            "The database version is SQL Server 2019 Enterprise.",
            "The database version is SQL Server 2019 Express.",
            "The database version is SQL Server 2019 Web.",
            "The database version is SQL Server 2022 Standard.",
            "The database version is SQL Server 2022 Enterprise.",
            "The database version is SQL Server 2022 Express.",
            "The database version is SQL Server 2022 Web.",
            "The database version is SQL Server 2025 Standard.",
            "The database version is SQL Server 2025 Enterprise.",
            "The database version is SQL Server 2025 Express."
          ],
          "description": "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`.",
          "type": "string",
          "enumDeprecated": [
            false,
            true,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ]
        },
        "pscEnabled": {
          "description": "Whether PSC connectivity is enabled for this instance.",
          "type": "boolean"
        },
        "customSubjectAlternativeNames": {
          "type": "array",
          "description": "Custom subject alternative names for the server certificate.",
          "items": {
            "type": "string"
          }
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#connectSettings`."
        },
        "region": {
          "type": "string",
          "description": "The cloud region for the instance. e.g. `us-central1`, `europe-west1`. The region cannot be changed after instance creation."
        },
        "dnsNames": {
          "items": {
            "$ref": "DnsNameMapping"
          },
          "readOnly": true,
          "description": "Output only. The list of DNS names used by this instance.",
          "type": "array"
        },
        "dnsName": {
          "type": "string",
          "description": "The dns name of the instance."
        },
        "mdxProtocolSupport": {
          "readOnly": true,
          "items": {
            "enum": [
              "MDX_PROTOCOL_SUPPORT_UNSPECIFIED",
              "CLIENT_PROTOCOL_TYPE"
            ],
            "type": "string",
            "enumDescriptions": [
              "Not specified.",
              "Client should send the client protocol type in the MDX request."
            ]
          },
          "type": "array",
          "description": "Optional. Output only. mdx_protocol_support controls how the client uses metadata exchange when connecting to the instance. The values in the list representing parts of the MDX protocol that are supported by this instance. When the list is empty, the instance does not support MDX, so the client must not send an MDX request. The default is empty."
        },
        "connectionName": {
          "description": "Optional. Output only. Connection name of the Cloud SQL instance used in connection strings, in the format project:region:instance.",
          "type": "string",
          "readOnly": true
        },
        "serverCaMode": {
          "enumDescriptions": [
            "CA mode is unspecified. It is effectively the same as `GOOGLE_MANAGED_INTERNAL_CA`.",
            "Google-managed self-signed internal CA.",
            "Google-managed regional CA part of root CA hierarchy hosted on Google Cloud's Certificate Authority Service (CAS).",
            "Customer-managed CA hosted on Google Cloud's Certificate Authority Service (CAS)."
          ],
          "description": "Specify what type of CA is used for the server certificate.",
          "enum": [
            "CA_MODE_UNSPECIFIED",
            "GOOGLE_MANAGED_INTERNAL_CA",
            "GOOGLE_MANAGED_CAS_CA",
            "CUSTOMER_MANAGED_CAS_CA"
          ],
          "type": "string"
        },
        "nodes": {
          "items": {
            "$ref": "ConnectPoolNodeConfig"
          },
          "readOnly": true,
          "description": "Output only. Entries containing information about each read pool node of the read pool.",
          "type": "array"
        },
        "ipAddresses": {
          "items": {
            "$ref": "IpMapping"
          },
          "description": "The assigned IP addresses for the instance.",
          "type": "array"
        },
        "serverCaCert": {
          "description": "SSL configuration.",
          "$ref": "SslCert"
        },
        "backendType": {
          "enum": [
            "SQL_BACKEND_TYPE_UNSPECIFIED",
            "FIRST_GEN",
            "SECOND_GEN",
            "EXTERNAL"
          ],
          "enumDescriptions": [
            "This is an unknown backend type for instance.",
            "V1 speckle instance.",
            "V2 speckle instance.",
            "On premises instance."
          ],
          "description": "`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.",
          "type": "string",
          "enumDeprecated": [
            false,
            true,
            false,
            false
          ]
        }
      }
    },
    "Metadata": {
      "type": "object",
      "description": "The additional metadata information regarding the execution of the SQL statements.",
      "id": "Metadata",
      "properties": {
        "sqlStatementExecutionTime": {
          "format": "google-duration",
          "type": "string",
          "description": "The time taken to execute the SQL statements."
        }
      }
    },
    "SslCertsInsertRequest": {
      "id": "SslCertsInsertRequest",
      "properties": {
        "commonName": {
          "type": "string",
          "description": "User supplied name. Must be a distinct name from the other certificates for this instance."
        }
      },
      "description": "SslCerts insert request.",
      "type": "object"
    },
    "SelectedObjects": {
      "type": "object",
      "description": "A list of objects that the user selects for replication from an external source instance.",
      "id": "SelectedObjects",
      "properties": {
        "database": {
          "type": "string",
          "description": "Required. The name of the database to migrate."
        }
      }
    },
    "BackupRunsListResponse": {
      "type": "object",
      "description": "Backup run list results.",
      "id": "BackupRunsListResponse",
      "properties": {
        "items": {
          "items": {
            "$ref": "BackupRun"
          },
          "type": "array",
          "description": "A list of backup runs in reverse chronological order of the enqueued time."
        },
        "kind": {
          "description": "This is always `sql#backupRunsList`.",
          "type": "string"
        },
        "nextPageToken": {
          "type": "string",
          "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results."
        }
      }
    },
    "PerformDiskShrinkContext": {
      "description": "Perform disk shrink context.",
      "type": "object",
      "id": "PerformDiskShrinkContext",
      "properties": {
        "targetSizeGb": {
          "description": "The target disk shrink size in GigaBytes.",
          "type": "string",
          "format": "int64"
        }
      }
    },
    "ExportContext": {
      "description": "Database instance export context.",
      "type": "object",
      "id": "ExportContext",
      "properties": {
        "fileType": {
          "enumDescriptions": [
            "Unknown file type.",
            "File containing SQL statements.",
            "File in CSV format.",
            "",
            "TDE certificate."
          ],
          "description": "The file type for the specified uri.",
          "enum": [
            "SQL_FILE_TYPE_UNSPECIFIED",
            "SQL",
            "CSV",
            "BAK",
            "TDE"
          ],
          "type": "string"
        },
        "bakExportOptions": {
          "description": "Options for exporting BAK files (SQL Server-only)",
          "type": "object",
          "properties": {
            "exportLogEndTime": {
              "description": "Optional. The end timestamp when transaction log will be included in the export operation. [RFC 3339](https://tools.ietf.org/html/rfc3339) format (for example, `2023-10-01T16:19:00.094`) in UTC. When omitted, all available logs until current time will be included. Only applied to Cloud SQL for SQL Server.",
              "type": "string",
              "format": "google-datetime"
            },
            "striped": {
              "type": "boolean",
              "description": "Whether or not the export should be striped."
            },
            "bakType": {
              "type": "string",
              "description": "Type of this bak file will be export, FULL or DIFF, SQL Server only",
              "enum": [
                "BAK_TYPE_UNSPECIFIED",
                "FULL",
                "DIFF",
                "TLOG"
              ],
              "enumDescriptions": [
                "Default type.",
                "Full backup.",
                "Differential backup.",
                "SQL Server Transaction Log"
              ]
            },
            "differentialBase": {
              "type": "boolean",
              "description": "Whether or not the backup can be used as a differential base copy_only backup can not be served as differential base"
            },
            "stripeCount": {
              "type": "integer",
              "description": "Option for specifying how many stripes to use for the export. If blank, and the value of the striped field is true, the number of stripes is automatically chosen.",
              "format": "int32"
            },
            "exportLogStartTime": {
              "description": "Optional. The begin timestamp when transaction log will be included in the export operation. [RFC 3339](https://tools.ietf.org/html/rfc3339) format (for example, `2023-10-01T16:19:00.094`) in UTC. When omitted, all available logs from the beginning of retention period will be included. Only applied to Cloud SQL for SQL Server.",
              "type": "string",
              "format": "google-datetime"
            },
            "copyOnly": {
              "type": "boolean",
              "description": "Deprecated: copy_only is deprecated. Use differential_base instead",
              "deprecated": true
            }
          }
        },
        "uri": {
          "type": "string",
          "description": "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."
        },
        "sqlExportOptions": {
          "type": "object",
          "description": "Options for exporting data as SQL statements.",
          "properties": {
            "parallel": {
              "description": "Optional. Whether or not the export should be parallel.",
              "type": "boolean"
            },
            "postgresExportOptions": {
              "description": "Options for exporting from a Cloud SQL for PostgreSQL instance.",
              "type": "object",
              "properties": {
                "clean": {
                  "type": "boolean",
                  "description": "Optional. Use this option to include DROP \u003cobject\u003e SQL statements. Use these statements to delete database objects before running the import operation."
                },
                "ifExists": {
                  "type": "boolean",
                  "description": "Optional. Option to include an IF EXISTS SQL statement with each DROP statement produced by clean."
                }
              }
            },
            "threads": {
              "format": "int32",
              "description": "Optional. The number of threads to use for parallel export.",
              "type": "integer"
            },
            "tables": {
              "type": "array",
              "description": "Tables to export, or that were exported, from the specified database. If you specify tables, specify one and only one database. For PostgreSQL instances, you can specify only one table.",
              "items": {
                "type": "string"
              }
            },
            "mysqlExportOptions": {
              "type": "object",
              "description": "Options for exporting from MySQL.",
              "properties": {
                "masterData": {
                  "format": "int32",
                  "description": "Option to include SQL statement required to set up replication. If set to `1`, the dump file includes a CHANGE MASTER TO statement with the binary log coordinates, and --set-gtid-purged is set to ON. If set to `2`, the CHANGE MASTER TO statement is written as a SQL comment and has no effect. If set to any value other than `1`, --set-gtid-purged is set to OFF.",
                  "type": "integer"
                }
              }
            },
            "schemaOnly": {
              "type": "boolean",
              "description": "Export only schemas."
            }
          }
        },
        "databases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "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`."
        },
        "kind": {
          "description": "This is always `sql#exportContext`.",
          "type": "string"
        },
        "csvExportOptions": {
          "type": "object",
          "description": "Options for exporting data as CSV. `MySQL` and `PostgreSQL` instances only.",
          "properties": {
            "escapeCharacter": {
              "type": "string",
              "description": "Specifies the character that should appear before a data character that needs to be escaped."
            },
            "linesTerminatedBy": {
              "type": "string",
              "description": "This is used to separate lines. If a line does not contain all fields, the rest of the columns are set to their default values."
            },
            "selectQuery": {
              "type": "string",
              "description": "The select query used to extract the data."
            },
            "fieldsTerminatedBy": {
              "description": "Specifies the character that separates columns within each row (line) of the file.",
              "type": "string"
            },
            "quoteCharacter": {
              "description": "Specifies the quoting character to be used when a data value is quoted.",
              "type": "string"
            }
          }
        },
        "offload": {
          "description": "Whether to perform a serverless export.",
          "type": "boolean"
        },
        "tdeExportOptions": {
          "type": "object",
          "description": "Optional. Export parameters specific to SQL Server TDE certificates",
          "properties": {
            "certificatePath": {
              "description": "Required. Path to the TDE certificate public key in the form gs://bucketName/fileName. The instance must have write access to the location. Applicable only for SQL Server instances.",
              "type": "string"
            },
            "privateKeyPath": {
              "type": "string",
              "description": "Required. Path to the TDE certificate private key in the form gs://bucketName/fileName. The instance must have write access to the location. Applicable only for SQL Server instances."
            },
            "name": {
              "description": "Required. Certificate name. Applicable only for SQL Server instances.",
              "type": "string"
            },
            "privateKeyPassword": {
              "description": "Required. Password that encrypts the private key.",
              "type": "string"
            }
          }
        }
      }
    },
    "Settings": {
      "id": "Settings",
      "properties": {
        "performanceCaptureConfig": {
          "description": "Optional. Configuration for Performance Capture, provides diagnostic metrics during high load situations.",
          "$ref": "PerformanceCaptureConfig"
        },
        "readPoolAutoScaleConfig": {
          "description": "Optional. The read pool auto-scale configuration for the instance.",
          "$ref": "ReadPoolAutoScaleConfig"
        },
        "tier": {
          "type": "string",
          "description": "The tier (or machine type) for this instance, for example `db-custom-1-3840`. WARNING: Changing this restarts the instance."
        },
        "dataDiskType": {
          "enumDescriptions": [
            "This is an unknown data disk type.",
            "An SSD data disk.",
            "An HDD data disk.",
            "This field is deprecated and will be removed from a future version of the API.",
            "A Hyperdisk Balanced data disk."
          ],
          "type": "string",
          "enumDeprecated": [
            false,
            false,
            false,
            true,
            false
          ],
          "description": "The type of data disk: `PD_SSD` (default) or `PD_HDD`. Not used for First Generation instances.",
          "enum": [
            "SQL_DATA_DISK_TYPE_UNSPECIFIED",
            "PD_SSD",
            "PD_HDD",
            "OBSOLETE_LOCAL_SSD",
            "HYPERDISK_BALANCED"
          ]
        },
        "backupConfiguration": {
          "description": "The daily backup configuration for the instance.",
          "$ref": "BackupConfiguration"
        },
        "authorizedGaeApplications": {
          "type": "array",
          "description": "The App Engine app IDs that can access this instance. (Deprecated) Applied to First Generation instances only.",
          "deprecated": true,
          "items": {
            "type": "string"
          }
        },
        "availabilityType": {
          "type": "string",
          "description": "Availability type. Potential values: * `ZONAL`: The instance serves data from only one zone. Outages in that zone affect data accessibility. * `REGIONAL`: The instance can serve data from more than one zone in a region (it is highly available)./ For more information, see [Overview of the High Availability Configuration](https://cloud.google.com/sql/docs/mysql/high-availability).",
          "enum": [
            "SQL_AVAILABILITY_TYPE_UNSPECIFIED",
            "ZONAL",
            "REGIONAL"
          ],
          "enumDescriptions": [
            "This is an unknown Availability type.",
            "Zonal available instance.",
            "Regional available instance."
          ]
        },
        "storageAutoResize": {
          "type": "boolean",
          "description": "Configuration to increase storage size automatically. The default value is true."
        },
        "passwordValidationPolicy": {
          "description": "The local user password validation policy of the instance.",
          "$ref": "PasswordValidationPolicy"
        },
        "databaseFlags": {
          "items": {
            "$ref": "DatabaseFlags"
          },
          "description": "The database flags passed to the instance at startup.",
          "type": "array"
        },
        "finalBackupConfig": {
          "description": "Optional. The final backup configuration for the instance.",
          "$ref": "FinalBackupConfig"
        },
        "databaseReplicationEnabled": {
          "type": "boolean",
          "description": "Configuration specific to read replica instances. Indicates whether replication is enabled or not. WARNING: Changing this restarts the instance."
        },
        "connectionPoolConfig": {
          "description": "Optional. The managed connection pooling configuration for the instance.",
          "$ref": "ConnectionPoolConfig"
        },
        "entraidConfig": {
          "description": "Optional. The Microsoft Entra ID configuration for the SQL Server instance.",
          "$ref": "SqlServerEntraIdConfig"
        },
        "ipConfiguration": {
          "description": "The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled for Second Generation instances.",
          "$ref": "IpConfiguration"
        },
        "storageAutoResizeLimit": {
          "format": "int64",
          "type": "string",
          "description": "The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit."
        },
        "crashSafeReplicationEnabled": {
          "type": "boolean",
          "description": "Configuration specific to read replica instances. Indicates whether database flags for crash-safe replication are enabled. This property was only applicable to First Generation instances.",
          "deprecated": true
        },
        "dataCacheConfig": {
          "description": "Configuration for data cache.",
          "$ref": "DataCacheConfig"
        },
        "retainBackupsOnDelete": {
          "description": "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.",
          "type": "boolean"
        },
        "locationPreference": {
          "description": "The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or Compute Engine zone for better performance. App Engine co-location was only applicable to First Generation instances.",
          "$ref": "LocationPreference"
        },
        "advancedMachineFeatures": {
          "description": "Specifies advanced machine configuration for the instances relevant only for SQL Server.",
          "$ref": "AdvancedMachineFeatures"
        },
        "enableDataplexIntegration": {
          "type": "boolean",
          "description": "Optional. By default, Cloud SQL instances have schema extraction disabled for Dataplex. When this parameter is set to true, schema extraction for Dataplex on Cloud SQL instances is activated."
        },
        "activeDirectoryConfig": {
          "description": "Active Directory configuration, relevant only for Cloud SQL for SQL Server.",
          "$ref": "SqlActiveDirectoryConfig"
        },
        "enableGoogleMlIntegration": {
          "type": "boolean",
          "description": "Optional. When this parameter is set to true, Cloud SQL instances can connect to Vertex AI to pass requests for real-time predictions and insights to the AI. The default value is false. This applies only to Cloud SQL for MySQL and Cloud SQL for PostgreSQL instances."
        },
        "autoUpgradeEnabled": {
          "type": "boolean",
          "description": "Optional. Cloud SQL for MySQL auto-upgrade configuration. When this parameter is set to true, auto-upgrade is enabled for MySQL 8.0 minor versions. The MySQL version must be 8.0.35 or higher."
        },
        "activationPolicy": {
          "type": "string",
          "enumDeprecated": [
            false,
            false,
            false,
            true
          ],
          "description": "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.",
          "enumDescriptions": [
            "Unknown activation plan.",
            "The instance is always up and running.",
            "The instance never starts.",
            "The instance starts upon receiving requests."
          ],
          "enum": [
            "SQL_ACTIVATION_POLICY_UNSPECIFIED",
            "ALWAYS",
            "NEVER",
            "ON_DEMAND"
          ]
        },
        "insightsConfig": {
          "description": "Insights configuration, for now relevant only for Postgres.",
          "$ref": "InsightsConfig"
        },
        "edition": {
          "type": "string",
          "description": "Optional. The edition type of the Cloud SQL instance.",
          "enum": [
            "EDITION_UNSPECIFIED",
            "ENTERPRISE",
            "ENTERPRISE_PLUS",
            "DEVELOPER"
          ],
          "enumDescriptions": [
            "The instance did not specify the edition.",
            "The instance is an enterprise edition.",
            "The instance is an Enterprise Plus edition.",
            "This instance is a Cloud SQL developer edition instance."
          ]
        },
        "connectorEnforcement": {
          "type": "string",
          "description": "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.",
          "enum": [
            "CONNECTOR_ENFORCEMENT_UNSPECIFIED",
            "NOT_REQUIRED",
            "REQUIRED"
          ],
          "enumDescriptions": [
            "The requirement for Cloud SQL connectors is unknown.",
            "Do not require Cloud SQL connectors.",
            "Require all connections to use Cloud SQL connectors, including the Cloud SQL Auth Proxy and Cloud SQL Java, Python, and Go connectors. Note: This disables all existing authorized networks."
          ]
        },
        "dataDiskProvisionedThroughput": {
          "type": "string",
          "description": "Optional. Provisioned throughput measured in MiB per second for the data disk. This field is only used for hyperdisk-balanced disk types.",
          "format": "int64"
        },
        "pricingPlan": {
          "type": "string",
          "description": "The pricing plan for this instance. This can be either `PER_USE` or `PACKAGE`. Only `PER_USE` is supported for Second Generation instances.",
          "enum": [
            "SQL_PRICING_PLAN_UNSPECIFIED",
            "PACKAGE",
            "PER_USE"
          ],
          "enumDescriptions": [
            "This is an unknown pricing plan for this instance.",
            "The instance is billed at a monthly flat rate.",
            "The instance is billed per usage."
          ]
        },
        "replicationLagMaxSeconds": {
          "format": "int32",
          "description": "Optional. Configuration value for recreation of replica after certain replication lag.",
          "type": "integer"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#settings`."
        },
        "sqlServerAuditConfig": {
          "description": "SQL Server specific audit configuration.",
          "$ref": "SqlServerAuditConfig"
        },
        "collation": {
          "type": "string",
          "description": "The name of server Instance collation."
        },
        "timeZone": {
          "type": "string",
          "description": "Server timezone, relevant only for Cloud SQL for SQL Server."
        },
        "maintenanceWindow": {
          "description": "The maintenance window for this instance. This specifies when the instance can be restarted for maintenance purposes.",
          "$ref": "MaintenanceWindow"
        },
        "denyMaintenancePeriods": {
          "items": {
            "$ref": "DenyMaintenancePeriod"
          },
          "type": "array",
          "description": "Deny maintenance periods"
        },
        "dataDiskSizeGb": {
          "format": "int64",
          "type": "string",
          "description": "The size of data disk, in GB. The data disk size minimum is 10GB."
        },
        "dataDiskProvisionedIops": {
          "format": "int64",
          "description": "Optional. Provisioned number of I/O operations per second for the data disk. This field is only used for hyperdisk-balanced disk types.",
          "type": "string"
        },
        "replicationType": {
          "type": "string",
          "description": "The type of replication this instance uses. This can be either `ASYNCHRONOUS` or `SYNCHRONOUS`. (Deprecated) This property was only applicable to First Generation instances.",
          "deprecated": true,
          "enumDescriptions": [
            "This is an unknown replication type for a Cloud SQL instance.",
            "The synchronous replication mode for First Generation instances. It is the default value.",
            "The asynchronous replication mode for First Generation instances. It provides a slight performance gain, but if an outage occurs while this option is set to asynchronous, you can lose up to a few seconds of updates to your data."
          ],
          "enum": [
            "SQL_REPLICATION_TYPE_UNSPECIFIED",
            "SYNCHRONOUS",
            "ASYNCHRONOUS"
          ]
        },
        "dataApiAccess": {
          "enumDescriptions": [
            "Unspecified, effectively the same as `DISALLOW_DATA_API`.",
            "Disallow using ExecuteSql API to connect to the instance.",
            "Allow using ExecuteSql API to connect to the instance. For private IP instances, this allows authorized users to access the instance from the public internet using ExecuteSql API."
          ],
          "type": "string",
          "description": "This parameter controls whether to allow using ExecuteSql API to connect to the instance. Not allowed by default.",
          "enum": [
            "DATA_API_ACCESS_UNSPECIFIED",
            "DISALLOW_DATA_API",
            "ALLOW_DATA_API"
          ]
        },
        "acceleratedReplicaMode": {
          "description": "Optional. Configures whether the replica is in accelerated mode. This feature is in private preview and requires allowlisting to take effect.",
          "type": "boolean"
        },
        "settingsVersion": {
          "description": "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.",
          "type": "string",
          "format": "int64"
        },
        "deletionProtectionEnabled": {
          "type": "boolean",
          "description": "Configuration to protect against accidental instance deletion."
        },
        "userLabels": {
          "description": "User-provided labels, represented as a dictionary where each label is a single key value pair.",
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        }
      },
      "description": "Database instance settings.",
      "type": "object"
    },
    "PscAutoConnectionConfig": {
      "type": "object",
      "description": "Settings for an automatically-setup Private Service Connect consumer endpoint that is used to connect to a Cloud SQL instance.",
      "id": "PscAutoConnectionConfig",
      "properties": {
        "consumerProject": {
          "type": "string",
          "description": "Optional. 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."
        },
        "ipAddress": {
          "description": "The IP address of the consumer endpoint.",
          "type": "string"
        },
        "serviceConnectionPolicy": {
          "type": "string",
          "description": "Output only. The service connection policy created automatically for the consumer network when `psc_auto_connection_policy_enabled` is true. It is in the format of: `projects/{project}/regions/{region}/serviceConnectionPolicies/{policy_id}` The `policy_id` is in format of `$NETWORK-$RANDOM`.",
          "readOnly": true
        },
        "consumerNetwork": {
          "type": "string",
          "description": "Optional. 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."
        },
        "consumerNetworkStatus": {
          "description": "The connection policy status of the consumer network.",
          "type": "string"
        },
        "serviceConnectionPolicyCreationResult": {
          "description": "Output only. The status of service connection policy creation.",
          "type": "string",
          "readOnly": true
        },
        "status": {
          "description": "The connection status of the consumer endpoint.",
          "type": "string"
        },
        "writeEndpointAutoDnsStatus": {
          "type": "string",
          "description": "Output only. The status of automated DNS provisioning for the write endpoint.",
          "enumDescriptions": [
            "Unspecified status. This means status is missing from dependency service.",
            "DNS provisioning is OK.",
            "DNS provisioning failed.",
            "DNS provisioning status is not recognized by Cloud SQL."
          ],
          "enum": [
            "AUTO_DNS_STATUS_UNSPECIFIED",
            "AUTO_DNS_OK",
            "AUTO_DNS_FAILED",
            "AUTO_DNS_UNKNOWN"
          ],
          "readOnly": true
        },
        "instanceAutoDnsStatus": {
          "description": "Output only. The status of automated DNS provisioning.",
          "type": "string",
          "enumDescriptions": [
            "Unspecified status. This means status is missing from dependency service.",
            "DNS provisioning is OK.",
            "DNS provisioning failed.",
            "DNS provisioning status is not recognized by Cloud SQL."
          ],
          "enum": [
            "AUTO_DNS_STATUS_UNSPECIFIED",
            "AUTO_DNS_OK",
            "AUTO_DNS_FAILED",
            "AUTO_DNS_UNKNOWN"
          ],
          "readOnly": true
        }
      }
    },
    "GenerateEphemeralCertResponse": {
      "description": "Ephemeral certificate creation request.",
      "type": "object",
      "id": "GenerateEphemeralCertResponse",
      "properties": {
        "ephemeralCert": {
          "description": "Generated cert",
          "$ref": "SslCert"
        }
      }
    },
    "FinalBackupConfig": {
      "id": "FinalBackupConfig",
      "properties": {
        "enabled": {
          "description": "Whether the final backup is enabled for the instance.",
          "type": "boolean"
        },
        "retentionDays": {
          "description": "The number of days to retain the final backup after the instance deletion. The final backup will be purged at (time_of_instance_deletion + retention_days).",
          "type": "integer",
          "format": "int32"
        }
      },
      "type": "object",
      "description": "Config used to determine the final backup settings for the instance."
    },
    "OperationsListResponse": {
      "description": "Operations list response.",
      "type": "object",
      "id": "OperationsListResponse",
      "properties": {
        "items": {
          "items": {
            "$ref": "Operation"
          },
          "description": "List of operation resources.",
          "type": "array"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#operationsList`."
        },
        "nextPageToken": {
          "type": "string",
          "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results."
        }
      }
    },
    "SqlServerDatabaseDetails": {
      "type": "object",
      "description": "Represents a Sql Server database on the Cloud SQL instance.",
      "id": "SqlServerDatabaseDetails",
      "properties": {
        "compatibilityLevel": {
          "format": "int32",
          "type": "integer",
          "description": "The version of SQL Server with which the database is to be made compatible"
        },
        "recoveryModel": {
          "description": "The recovery model of a SQL Server database",
          "type": "string"
        }
      }
    },
    "ImportContext": {
      "type": "object",
      "description": "Database instance import context.",
      "id": "ImportContext",
      "properties": {
        "database": {
          "description": "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.",
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#importContext`."
        },
        "uri": {
          "type": "string",
          "description": "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."
        },
        "tdeImportOptions": {
          "properties": {
            "privateKeyPassword": {
              "type": "string",
              "description": "Required. Password that encrypts the private key."
            },
            "certificatePath": {
              "description": "Required. Path to the TDE certificate public key in the form gs://bucketName/fileName. The instance must have read access to the file. Applicable only for SQL Server instances.",
              "type": "string"
            },
            "privateKeyPath": {
              "type": "string",
              "description": "Required. Path to the TDE certificate private key in the form gs://bucketName/fileName. The instance must have read access to the file. Applicable only for SQL Server instances."
            },
            "name": {
              "type": "string",
              "description": "Required. Certificate name. Applicable only for SQL Server instances."
            }
          },
          "type": "object",
          "description": "Optional. Import parameters specific to SQL Server .TDE files Import parameters specific to SQL Server TDE certificates"
        },
        "fileType": {
          "description": "The file type for the specified uri. * `SQL`: The file contains SQL statements. * `CSV`: The file contains CSV data. * `BAK`: The file contains backup data for a SQL Server instance.",
          "enum": [
            "SQL_FILE_TYPE_UNSPECIFIED",
            "SQL",
            "CSV",
            "BAK",
            "TDE"
          ],
          "type": "string",
          "enumDescriptions": [
            "Unknown file type.",
            "File containing SQL statements.",
            "File in CSV format.",
            "",
            "TDE certificate."
          ]
        },
        "bakImportOptions": {
          "properties": {
            "striped": {
              "type": "boolean",
              "description": "Whether or not the backup set being restored is striped. Applies only to Cloud SQL for SQL Server."
            },
            "bakType": {
              "description": "Type of the bak content, FULL or DIFF.",
              "enum": [
                "BAK_TYPE_UNSPECIFIED",
                "FULL",
                "DIFF",
                "TLOG"
              ],
              "type": "string",
              "enumDescriptions": [
                "Default type.",
                "Full backup.",
                "Differential backup.",
                "SQL Server Transaction Log"
              ]
            },
            "stopAt": {
              "description": "Optional. The timestamp when the import should stop. This timestamp is in the [RFC 3339](https://tools.ietf.org/html/rfc3339) format (for example, `2023-10-01T16:19:00.094`). This field is equivalent to the STOPAT keyword and applies to Cloud SQL for SQL Server only.",
              "type": "string",
              "format": "google-datetime"
            },
            "stopAtMark": {
              "description": "Optional. The marked transaction where the import should stop. This field is equivalent to the STOPATMARK keyword and applies to Cloud SQL for SQL Server only.",
              "type": "string"
            },
            "recoveryOnly": {
              "description": "Whether or not the backup importing request will just bring database online without downloading Bak content only one of \"no_recovery\" and \"recovery_only\" can be true otherwise error will return. Applies only to Cloud SQL for SQL Server.",
              "type": "boolean"
            },
            "encryptionOptions": {
              "type": "object",
              "properties": {
                "keepEncrypted": {
                  "type": "boolean",
                  "description": "Optional. Whether the imported file remains encrypted."
                },
                "pvkPath": {
                  "type": "string",
                  "description": "Path to the Certificate Private Key (.pvk) in Cloud Storage, in the form `gs://bucketName/fileName`. The instance must have write permissions to the bucket and read access to the file."
                },
                "pvkPassword": {
                  "type": "string",
                  "description": "Password that encrypts the private key"
                },
                "certPath": {
                  "type": "string",
                  "description": "Path to the Certificate (.cer) in Cloud Storage, in the form `gs://bucketName/fileName`. The instance must have write permissions to the bucket and read access to the file."
                }
              }
            },
            "noRecovery": {
              "type": "boolean",
              "description": "Whether or not the backup importing will restore database with NORECOVERY option. Applies only to Cloud SQL for SQL Server."
            }
          },
          "type": "object",
          "description": "Import parameters specific to SQL Server .BAK files"
        },
        "importUser": {
          "type": "string",
          "description": "The PostgreSQL user for this import operation. PostgreSQL instances only."
        },
        "csvImportOptions": {
          "description": "Options for importing data as CSV.",
          "type": "object",
          "properties": {
            "escapeCharacter": {
              "type": "string",
              "description": "Specifies the character that should appear before a data character that needs to be escaped."
            },
            "linesTerminatedBy": {
              "description": "This is used to separate lines. If a line does not contain all fields, the rest of the columns are set to their default values.",
              "type": "string"
            },
            "fieldsTerminatedBy": {
              "type": "string",
              "description": "Specifies the character that separates columns within each row (line) of the file."
            },
            "table": {
              "description": "The table to which CSV data is imported.",
              "type": "string"
            },
            "columns": {
              "items": {
                "type": "string"
              },
              "type": "array",
              "description": "The columns to which CSV data is imported. If not specified, all columns of the database table are loaded with CSV data."
            },
            "quoteCharacter": {
              "description": "Specifies the quoting character to be used when a data value is quoted.",
              "type": "string"
            }
          }
        },
        "sqlImportOptions": {
          "description": "Optional. Options for importing data from SQL statements.",
          "type": "object",
          "properties": {
            "threads": {
              "format": "int32",
              "type": "integer",
              "description": "Optional. The number of threads to use for parallel import."
            },
            "parallel": {
              "type": "boolean",
              "description": "Optional. Whether or not the import should be parallel."
            },
            "postgresImportOptions": {
              "properties": {
                "clean": {
                  "type": "boolean",
                  "description": "Optional. The --clean flag for the pg_restore utility. This flag applies only if you enabled Cloud SQL to import files in parallel."
                },
                "ifExists": {
                  "type": "boolean",
                  "description": "Optional. The --if-exists flag for the pg_restore utility. This flag applies only if you enabled Cloud SQL to import files in parallel."
                }
              },
              "description": "Optional. Options for importing from a Cloud SQL for PostgreSQL instance.",
              "type": "object"
            }
          }
        }
      }
    },
    "MySqlSyncConfig": {
      "type": "object",
      "description": "MySQL-specific external server sync settings.",
      "id": "MySqlSyncConfig",
      "properties": {
        "initialSyncFlags": {
          "description": "Flags to use for the initial dump.",
          "type": "array",
          "items": {
            "$ref": "SyncFlags"
          }
        }
      }
    },
    "RestoreBackupContext": {
      "id": "RestoreBackupContext",
      "properties": {
        "kind": {
          "description": "This is always `sql#restoreBackupContext`.",
          "type": "string"
        },
        "backupRunId": {
          "format": "int64",
          "type": "string",
          "description": "The ID of the backup run to restore from."
        },
        "instanceId": {
          "description": "The ID of the instance that the backup was taken from.",
          "type": "string"
        },
        "project": {
          "type": "string",
          "description": "The full project ID of the source instance."
        }
      },
      "description": "Database instance restore from backup context. Backup context contains source instance id and project id.",
      "type": "object"
    },
    "InstancesRotateEntraIdCertificateRequest": {
      "id": "InstancesRotateEntraIdCertificateRequest",
      "properties": {
        "rotateEntraIdCertificateContext": {
          "description": "Optional. Contains details about the rotate Entra ID certificate operation.",
          "$ref": "RotateEntraIdCertificateContext"
        }
      },
      "type": "object",
      "description": "Rotate Entra ID Certificate request."
    },
    "InstancesReencryptRequest": {
      "description": "Database Instance reencrypt request.",
      "type": "object",
      "id": "InstancesReencryptRequest",
      "properties": {
        "backupReencryptionConfig": {
          "description": "Configuration specific to backup re-encryption",
          "$ref": "BackupReencryptionConfig"
        }
      }
    },
    "Empty": {
      "id": "Empty",
      "properties": {},
      "type": "object",
      "description": "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); }"
    },
    "PasswordValidationPolicy": {
      "id": "PasswordValidationPolicy",
      "properties": {
        "reuseInterval": {
          "format": "int32",
          "description": "Number of previous passwords that cannot be reused.",
          "type": "integer"
        },
        "disallowCompromisedCredentials": {
          "type": "boolean",
          "description": "This field is deprecated and will be removed in a future version of the API.",
          "deprecated": true
        },
        "complexity": {
          "description": "The complexity of the password.",
          "enum": [
            "COMPLEXITY_UNSPECIFIED",
            "COMPLEXITY_DEFAULT"
          ],
          "type": "string",
          "enumDescriptions": [
            "Complexity check is not specified.",
            "A combination of lowercase, uppercase, numeric, and non-alphanumeric characters."
          ]
        },
        "disallowUsernameSubstring": {
          "type": "boolean",
          "description": "Disallow username as a part of the password."
        },
        "minLength": {
          "format": "int32",
          "type": "integer",
          "description": "Minimum number of characters allowed."
        },
        "passwordChangeInterval": {
          "format": "google-duration",
          "type": "string",
          "description": "Minimum interval after which the password can be changed. This flag is only supported for PostgreSQL."
        },
        "enablePasswordPolicy": {
          "description": "Whether to enable the password policy or not. When enabled, passwords must meet complexity requirements. Keep this policy enabled to help prevent unauthorized access. Disabling this policy allows weak passwords.",
          "type": "boolean"
        }
      },
      "type": "object",
      "description": "Database instance local user password validation policy. This message defines the password policy for local database users. When enabled, it enforces constraints on password complexity, length, and reuse. Keep this policy enabled to help prevent unauthorized access."
    },
    "InstancesExportRequest": {
      "id": "InstancesExportRequest",
      "properties": {
        "exportContext": {
          "description": "Contains details about the export operation.",
          "$ref": "ExportContext"
        }
      },
      "description": "Database instance export request.",
      "type": "object"
    },
    "SqlInstancesExecuteSqlResponse": {
      "id": "SqlInstancesExecuteSqlResponse",
      "properties": {
        "status": {
          "description": "Contains the error from the database if the SQL execution failed.",
          "$ref": "Status"
        },
        "messages": {
          "items": {
            "$ref": "Message"
          },
          "type": "array",
          "description": "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."
        },
        "metadata": {
          "description": "The additional metadata information regarding the execution of the SQL statements.",
          "$ref": "Metadata"
        },
        "results": {
          "items": {
            "$ref": "QueryResult"
          },
          "description": "The list of results after executing all the SQL statements.",
          "type": "array"
        }
      },
      "type": "object",
      "description": "Execute SQL statements response."
    },
    "DemoteMasterMySqlReplicaConfiguration": {
      "id": "DemoteMasterMySqlReplicaConfiguration",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always `sql#demoteMasterMysqlReplicaConfiguration`."
        },
        "username": {
          "type": "string",
          "description": "The username for the replication connection."
        },
        "clientCertificate": {
          "description": "PEM representation of the replica's x509 certificate.",
          "type": "string"
        },
        "caCertificate": {
          "description": "PEM representation of the trusted CA's x509 certificate.",
          "type": "string"
        },
        "password": {
          "description": "The password for the replication connection.",
          "type": "string"
        },
        "clientKey": {
          "description": "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.",
          "type": "string"
        }
      },
      "description": "Read-replica configuration specific to MySQL databases.",
      "type": "object"
    },
    "SqlServerEntraIdConfig": {
      "id": "SqlServerEntraIdConfig",
      "properties": {
        "tenantId": {
          "type": "string",
          "description": "Optional. The tenant ID for the Entra ID configuration."
        },
        "kind": {
          "description": "Output only. This is always sql#sqlServerEntraIdConfig",
          "type": "string",
          "readOnly": true
        },
        "applicationId": {
          "description": "Optional. The application ID for the Entra ID configuration.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "SQL Server Entra ID configuration."
    },
    "PscConfig": {
      "id": "PscConfig",
      "properties": {
        "pscWriteEndpointDnsEnabled": {
          "type": "boolean",
          "description": "Optional. Indicates whether Private Service Connect write endpoint DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal global DNS record across all networks configured with Private Service Connect auto-connections that points to the cluster primary instance. This feature is only supported for Enterprise Plus edition. This will default to true for new enterprise plus instances when `psc_auto_dns_enabled` is enabled."
        },
        "pscAutoConnectionPolicyEnabled": {
          "type": "boolean",
          "description": "Optional. Whether to set up the PSC service connection policy automatically."
        },
        "pscAutoDnsEnabled": {
          "description": "Optional. Indicates whether Private Service Connect DNS automation is enabled for this instance. When enabled, Cloud SQL provisions a universal DNS record across all networks configured with Private Service Connect auto-connections. This will default to true for new instances when Private Service Connect is enabled.",
          "type": "boolean"
        },
        "allowedConsumerProjects": {
          "type": "array",
          "description": "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).",
          "items": {
            "type": "string"
          }
        },
        "pscAutoConnections": {
          "items": {
            "$ref": "PscAutoConnectionConfig"
          },
          "type": "array",
          "description": "Optional. The list of settings for requested Private Service Connect consumer endpoints that can be used to connect to this Cloud SQL instance."
        },
        "pscEnabled": {
          "description": "Whether PSC connectivity is enabled for this instance.",
          "type": "boolean"
        },
        "networkAttachmentUri": {
          "type": "string",
          "description": "Optional. The network attachment of the consumer network that the Private Service Connect enabled Cloud SQL instance is authorized to connect via PSC interface. format: projects/PROJECT/regions/REGION/networkAttachments/ID"
        }
      },
      "type": "object",
      "description": "PSC settings for a Cloud SQL instance."
    },
    "BinLogCoordinates": {
      "description": "Binary log coordinates.",
      "type": "object",
      "id": "BinLogCoordinates",
      "properties": {
        "kind": {
          "description": "This is always `sql#binLogCoordinates`.",
          "type": "string"
        },
        "binLogFileName": {
          "type": "string",
          "description": "Name of the binary log file for a Cloud SQL instance."
        },
        "binLogPosition": {
          "description": "Position (offset) within the binary log file.",
          "type": "string",
          "format": "int64"
        }
      }
    },
    "UsersListResponse": {
      "description": "User list response.",
      "type": "object",
      "id": "UsersListResponse",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always *sql#usersList*."
        },
        "nextPageToken": {
          "deprecated": true,
          "description": "Unused.",
          "type": "string"
        },
        "items": {
          "items": {
            "$ref": "User"
          },
          "description": "List of user resources in the instance.",
          "type": "array"
        }
      }
    },
    "DatabasesListResponse": {
      "description": "Database list response.",
      "type": "object",
      "id": "DatabasesListResponse",
      "properties": {
        "items": {
          "type": "array",
          "description": "List of database resources in the instance.",
          "items": {
            "$ref": "Database"
          }
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#databasesList`."
        }
      }
    },
    "ConnectionPoolFlags": {
      "id": "ConnectionPoolFlags",
      "properties": {
        "name": {
          "description": "Required. The name of the flag.",
          "type": "string"
        },
        "value": {
          "description": "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.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "Connection pool flags for Cloud SQL instances managed connection pool configuration."
    },
    "GenerateEphemeralCertRequest": {
      "id": "GenerateEphemeralCertRequest",
      "properties": {
        "access_token": {
          "type": "string",
          "description": "Optional. Access token to include in the signed certificate."
        },
        "validDuration": {
          "format": "google-duration",
          "description": "Optional. If set, it will contain the cert valid duration.",
          "type": "string"
        },
        "public_key": {
          "description": "PEM encoded public key to include in the signed certificate.",
          "type": "string"
        },
        "readTime": {
          "type": "string",
          "description": "Optional. Optional snapshot read timestamp to trade freshness for performance.",
          "format": "google-datetime"
        }
      },
      "description": "Ephemeral certificate creation request.",
      "type": "object"
    },
    "RotateServerCertificateContext": {
      "id": "RotateServerCertificateContext",
      "properties": {
        "kind": {
          "description": "Optional. This is always `sql#rotateServerCertificateContext`.",
          "type": "string"
        },
        "nextVersion": {
          "type": "string",
          "description": "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."
        }
      },
      "type": "object",
      "description": "Instance rotate server certificate context."
    },
    "SqlServerUserDetails": {
      "id": "SqlServerUserDetails",
      "properties": {
        "disabled": {
          "type": "boolean",
          "description": "If the user has been disabled"
        },
        "serverRoles": {
          "items": {
            "type": "string"
          },
          "description": "The server roles for this user",
          "type": "array"
        }
      },
      "type": "object",
      "description": "Represents a Sql Server user on the Cloud SQL instance."
    },
    "InstancesRotateServerCertificateRequest": {
      "description": "Rotate Server Certificate request.",
      "type": "object",
      "id": "InstancesRotateServerCertificateRequest",
      "properties": {
        "rotateServerCertificateContext": {
          "description": "Optional. Contains details about the rotate server CA operation.",
          "$ref": "RotateServerCertificateContext"
        }
      }
    },
    "GeminiInstanceConfig": {
      "type": "object",
      "description": "Gemini instance configuration.",
      "id": "GeminiInstanceConfig",
      "properties": {
        "entitled": {
          "readOnly": true,
          "type": "boolean",
          "description": "Output only. Whether Gemini is enabled."
        },
        "googleVacuumMgmtEnabled": {
          "description": "Output only. Whether the vacuum management is enabled.",
          "type": "boolean",
          "readOnly": true
        },
        "activeQueryEnabled": {
          "type": "boolean",
          "description": "Output only. Whether the active query is enabled.",
          "readOnly": true
        },
        "indexAdvisorEnabled": {
          "readOnly": true,
          "description": "Output only. Whether the index advisor is enabled.",
          "type": "boolean"
        },
        "oomSessionCancelEnabled": {
          "readOnly": true,
          "type": "boolean",
          "description": "Output only. Whether canceling the out-of-memory (OOM) session is enabled."
        },
        "flagRecommenderEnabled": {
          "readOnly": true,
          "description": "Output only. Whether the flag recommender is enabled.",
          "type": "boolean"
        }
      }
    },
    "AcquireSsrsLeaseContext": {
      "id": "AcquireSsrsLeaseContext",
      "properties": {
        "setupLogin": {
          "type": "string",
          "description": "The username to be used as the setup login to connect to the database server for SSRS setup."
        },
        "serviceLogin": {
          "description": "The username to be used as the service login to connect to the report database for SSRS setup.",
          "type": "string"
        },
        "reportDatabase": {
          "description": "The report database to be used for the SSRS setup.",
          "type": "string"
        },
        "duration": {
          "format": "google-duration",
          "description": "Lease duration needed for the SSRS setup.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "Acquire SSRS lease context."
    },
    "InstancesRestoreBackupRequest": {
      "type": "object",
      "description": "Database instance restore backup request.",
      "id": "InstancesRestoreBackupRequest",
      "properties": {
        "restoreInstanceSettings": {
          "description": "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.",
          "$ref": "DatabaseInstance"
        },
        "restoreBackupContext": {
          "description": "Parameters required to perform the restore backup operation.",
          "$ref": "RestoreBackupContext"
        },
        "backup": {
          "description": "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.",
          "type": "string"
        },
        "backupdrBackup": {
          "description": "The name of the backup that's used to restore a Cloud SQL instance: Format: \"projects/{project-id}/locations/{location}/backupVaults/{backupvault}/dataSources/{datasource}/backups/{backup-uid}\". Only one of restore_backup_context, backup, backupdr_backup can be passed to the input.",
          "type": "string"
        },
        "restoreInstanceClearOverridesFieldNames": {
          "description": "Optional. This field has the same purpose as restore_instance_settings, changes any instance settings stored in the backup you are restoring from. With the difference that these fields are cleared in the settings.",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "SqlServerAuditConfig": {
      "id": "SqlServerAuditConfig",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always sql#sqlServerAuditConfig"
        },
        "retentionInterval": {
          "type": "string",
          "description": "How long to keep generated audit files.",
          "format": "google-duration"
        },
        "uploadInterval": {
          "format": "google-duration",
          "description": "How often to upload generated audit files.",
          "type": "string"
        },
        "bucket": {
          "type": "string",
          "description": "The name of the destination bucket (e.g., gs://mybucket)."
        }
      },
      "type": "object",
      "description": "SQL Server specific audit configuration."
    },
    "MySqlReplicaConfiguration": {
      "description": "Read-replica configuration specific to MySQL databases.",
      "type": "object",
      "id": "MySqlReplicaConfiguration",
      "properties": {
        "password": {
          "description": "The password for the replication connection.",
          "type": "string"
        },
        "masterHeartbeatPeriod": {
          "format": "int64",
          "type": "string",
          "description": "Interval in milliseconds between replication heartbeats."
        },
        "connectRetryInterval": {
          "description": "Seconds to wait between connect retries. MySQL's default is 60 seconds.",
          "type": "integer",
          "format": "int32"
        },
        "caCertificate": {
          "type": "string",
          "description": "PEM representation of the trusted CA's x509 certificate."
        },
        "clientCertificate": {
          "type": "string",
          "description": "PEM representation of the replica's x509 certificate."
        },
        "clientKey": {
          "description": "PEM representation of the replica's private key. The corresponding public key is encoded in the client's certificate.",
          "type": "string"
        },
        "verifyServerCertificate": {
          "type": "boolean",
          "description": "Whether or not to check the primary instance's Common Name value in the certificate that it sends during the SSL handshake."
        },
        "dumpFilePath": {
          "type": "string",
          "description": "Path to a SQL dump file in Google Cloud Storage from which the replica instance is to be created. The URI is in the form gs://bucketName/fileName. Compressed gzip files (.gz) are also supported. Dumps have the binlog co-ordinates from which replication begins. This can be accomplished by setting --master-data to 1 when using mysqldump."
        },
        "username": {
          "description": "The username for the replication connection.",
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#mysqlReplicaConfiguration`."
        },
        "sslCipher": {
          "description": "A list of permissible ciphers to use for SSL encryption.",
          "type": "string"
        }
      }
    },
    "SyncFlags": {
      "type": "object",
      "description": "Initial sync flags for certain Cloud SQL APIs. Currently used for the MySQL external server initial dump.",
      "id": "SyncFlags",
      "properties": {
        "name": {
          "description": "The name of the flag.",
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "The value of the flag. This field must be omitted if the flag doesn't take a value."
        }
      }
    },
    "OperationErrors": {
      "type": "object",
      "description": "Database instance operation errors list wrapper.",
      "id": "OperationErrors",
      "properties": {
        "kind": {
          "description": "This is always `sql#operationErrors`.",
          "type": "string"
        },
        "errors": {
          "description": "The list of errors encountered while processing this operation.",
          "type": "array",
          "items": {
            "$ref": "OperationError"
          }
        }
      }
    },
    "QueryResult": {
      "id": "QueryResult",
      "properties": {
        "rows": {
          "items": {
            "$ref": "Row"
          },
          "description": "Rows returned by the SQL statement.",
          "type": "array"
        },
        "status": {
          "description": "If results were truncated due to an error, details of that error.",
          "$ref": "Status"
        },
        "message": {
          "description": "Message related to the SQL execution result.",
          "type": "string"
        },
        "columns": {
          "items": {
            "$ref": "Column"
          },
          "type": "array",
          "description": "List of columns included in the result. This also includes the data type of the column."
        },
        "partialResult": {
          "type": "boolean",
          "description": "Set to true if the SQL execution's result is truncated due to size limits or an error retrieving results."
        }
      },
      "description": "QueryResult contains the result of executing a single SQL statement.",
      "type": "object"
    },
    "SqlInstancesStartExternalSyncRequest": {
      "id": "SqlInstancesStartExternalSyncRequest",
      "properties": {
        "syncMode": {
          "type": "string",
          "description": "External sync mode.",
          "enum": [
            "EXTERNAL_SYNC_MODE_UNSPECIFIED",
            "ONLINE",
            "OFFLINE"
          ],
          "enumDescriptions": [
            "Unknown external sync mode, will be defaulted to ONLINE mode",
            "Online external sync will set up replication after initial data external sync",
            "Offline external sync only dumps and loads a one-time snapshot of the primary instance's data"
          ]
        },
        "migrationType": {
          "description": "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.",
          "enum": [
            "MIGRATION_TYPE_UNSPECIFIED",
            "LOGICAL",
            "PHYSICAL"
          ],
          "type": "string",
          "enumDescriptions": [
            "Default value is a logical dump file-based migration",
            "Logical dump file-based migration",
            "Physical file-based migration"
          ]
        },
        "skipVerification": {
          "description": "Whether to skip the verification step (VESS).",
          "type": "boolean"
        },
        "mysqlSyncConfig": {
          "description": "MySQL-specific settings for start external sync.",
          "$ref": "MySqlSyncConfig"
        },
        "syncParallelLevel": {
          "enumDescriptions": [
            "Unknown sync parallel level. Will be defaulted to OPTIMAL.",
            "Minimal parallel level.",
            "Optimal parallel level.",
            "Maximum parallel level."
          ],
          "description": "Optional. Parallel level for initial data sync. Currently only applicable for MySQL.",
          "enum": [
            "EXTERNAL_SYNC_PARALLEL_LEVEL_UNSPECIFIED",
            "MIN",
            "OPTIMAL",
            "MAX"
          ],
          "type": "string"
        },
        "replicaOverwriteEnabled": {
          "type": "boolean",
          "description": "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."
        }
      },
      "type": "object"
    },
    "TargetMetric": {
      "id": "TargetMetric",
      "properties": {
        "metric": {
          "description": "The metric name to be used for auto scaling.",
          "type": "string"
        },
        "targetValue": {
          "type": "number",
          "description": "The target value for the metric.",
          "format": "float"
        }
      },
      "description": "Target metric for read pool auto scaling.",
      "type": "object"
    },
    "InstancesPreCheckMajorVersionUpgradeRequest": {
      "id": "InstancesPreCheckMajorVersionUpgradeRequest",
      "properties": {
        "preCheckMajorVersionUpgradeContext": {
          "description": "Required. Contains details about the pre-check major version upgrade operation.",
          "$ref": "PreCheckMajorVersionUpgradeContext"
        }
      },
      "type": "object",
      "description": "Request for Pre-checks for MVU"
    },
    "ExternalSyncSelectedObject": {
      "id": "ExternalSyncSelectedObject",
      "properties": {
        "database": {
          "type": "string",
          "description": "The name of the database that Cloud SQL migrates."
        }
      },
      "description": "The selected object that Cloud SQL migrates.",
      "type": "object"
    },
    "IpConfiguration": {
      "id": "IpConfiguration",
      "properties": {
        "pscConfig": {
          "description": "PSC settings for this instance.",
          "$ref": "PscConfig"
        },
        "ipv4Enabled": {
          "type": "boolean",
          "description": "Whether the instance is assigned a public IP address or not."
        },
        "enablePrivatePathForGoogleCloudServices": {
          "description": "Controls connectivity to private IP instances from Google services, such as BigQuery.",
          "type": "boolean"
        },
        "authorizedNetworks": {
          "description": "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`).",
          "type": "array",
          "items": {
            "$ref": "AclEntry"
          }
        },
        "customSubjectAlternativeNames": {
          "description": "Optional. Custom Subject Alternative Name(SAN)s for a Cloud SQL instance.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "serverCaPool": {
          "description": "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}",
          "type": "string"
        },
        "serverCaMode": {
          "type": "string",
          "description": "Specify what type of CA is used for the server certificate.",
          "enum": [
            "CA_MODE_UNSPECIFIED",
            "GOOGLE_MANAGED_INTERNAL_CA",
            "GOOGLE_MANAGED_CAS_CA",
            "CUSTOMER_MANAGED_CAS_CA"
          ],
          "enumDescriptions": [
            "CA mode is unspecified. It is effectively the same as `GOOGLE_MANAGED_INTERNAL_CA`.",
            "Google-managed self-signed internal CA.",
            "Google-managed regional CA part of root CA hierarchy hosted on Google Cloud's Certificate Authority Service (CAS).",
            "Customer-managed CA hosted on Google Cloud's Certificate Authority Service (CAS)."
          ]
        },
        "privateNetwork": {
          "type": "string",
          "description": "The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, `/projects/myProject/global/networks/default`. This setting can be updated, but it cannot be removed after it is set."
        },
        "allocatedIpRange": {
          "type": "string",
          "description": "The name of the allocated ip range for the private ip Cloud SQL instance. For example: \"google-managed-services-default\". If set, the instance ip will be created in the allocated range. The range name must comply with [RFC 1035](https://tools.ietf.org/html/rfc1035). Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?.`"
        },
        "sslMode": {
          "type": "string",
          "description": "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.",
          "enum": [
            "SSL_MODE_UNSPECIFIED",
            "ALLOW_UNENCRYPTED_AND_ENCRYPTED",
            "ENCRYPTED_ONLY",
            "TRUSTED_CLIENT_CERTIFICATE_REQUIRED"
          ],
          "enumDescriptions": [
            "The SSL mode is unknown.",
            "Allow non-SSL/non-TLS and SSL/TLS connections. For SSL connections to MySQL and PostgreSQL, the client certificate isn't verified. When this value is used, the legacy `require_ssl` flag must be false or cleared to avoid a conflict between the values of the two flags.",
            "Only allow connections encrypted with SSL/TLS. For SSL connections to MySQL and PostgreSQL, the client certificate isn't verified. When this value is used, the legacy `require_ssl` flag must be false or cleared to avoid a conflict between the values of the two flags.",
            "Only allow connections encrypted with SSL/TLS and with valid client certificates. When this value is used, the legacy `require_ssl` flag must be true or cleared to avoid the conflict between values of two flags. PostgreSQL clients or users that connect using IAM database authentication must use either the [Cloud SQL Auth Proxy](https://cloud.google.com/sql/docs/postgres/connect-auth-proxy) or [Cloud SQL Connectors](https://cloud.google.com/sql/docs/postgres/connect-connectors) to enforce client identity verification. Only applicable to MySQL and PostgreSQL. Not applicable to SQL Server."
          ]
        },
        "serverCertificateRotationMode": {
          "type": "string",
          "description": "Optional. Controls the automatic server certificate rotation feature. This feature is disabled by default. When enabled, the server certificate will be automatically rotated during Cloud SQL scheduled maintenance or self-service maintenance updates up to six months before it expires. This setting can only be set if server_ca_mode is either GOOGLE_MANAGED_CAS_CA or CUSTOMER_MANAGED_CAS_CA.",
          "enum": [
            "SERVER_CERTIFICATE_ROTATION_MODE_UNSPECIFIED",
            "NO_AUTOMATIC_ROTATION",
            "AUTOMATIC_ROTATION_DURING_MAINTENANCE"
          ],
          "enumDescriptions": [
            "Unspecified: no automatic server certificate rotation.",
            "No automatic server certificate rotation. The user must [manage server certificate rotation](/sql/docs/mysql/manage-ssl-instance#rotate-server-certificate-cas) on their side.",
            "Automatic server certificate rotation during Cloud SQL scheduled maintenance or self-service maintenance updates. Requires `server_ca_mode` to be `GOOGLE_MANAGED_CAS_CA` or `CUSTOMER_MANAGED_CAS_CA`."
          ]
        },
        "requireSsl": {
          "description": "Use `ssl_mode` instead. Whether SSL/TLS connections over IP are enforced. If set to false, then allow both non-SSL/non-TLS and SSL/TLS connections. For SSL/TLS connections, the client certificate won't be verified. If set to true, then only allow connections encrypted with SSL/TLS and with valid client certificates. If you want to enforce SSL/TLS without enforcing the requirement for valid client certificates, then use the `ssl_mode` flag instead of the legacy `require_ssl` flag.",
          "type": "boolean"
        }
      },
      "type": "object",
      "description": "IP Management configuration."
    },
    "IpMapping": {
      "type": "object",
      "description": "Database instance IP mapping",
      "id": "IpMapping",
      "properties": {
        "type": {
          "enumDescriptions": [
            "This is an unknown IP address type.",
            "IP address the customer is supposed to connect to. Usually this is the load balancer's IP address",
            "Source IP address of the connection a read replica establishes to its external primary instance. This IP address can be allowlisted by the customer in case it has a firewall that filters incoming connection to its on premises primary instance.",
            "Private IP used when using private IPs and network peering.",
            "V1 IP of a migrated instance. We want the user to decommission this IP as soon as the migration is complete. Note: V1 instances with V1 ip addresses will be counted as PRIMARY."
          ],
          "description": "The type of this IP address. A `PRIMARY` address is a public address that can accept incoming connections. A `PRIVATE` address is a private address that can accept incoming connections. An `OUTGOING` address is the source address of connections originating from the instance, if supported.",
          "enum": [
            "SQL_IP_ADDRESS_TYPE_UNSPECIFIED",
            "PRIMARY",
            "OUTGOING",
            "PRIVATE",
            "MIGRATED_1ST_GEN"
          ],
          "type": "string"
        },
        "ipAddress": {
          "type": "string",
          "description": "The IP address assigned."
        },
        "timeToRetire": {
          "type": "string",
          "description": "The due time for this IP to be retired in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`. This field is only available when the IP is scheduled to be retired.",
          "format": "google-datetime"
        }
      }
    },
    "Flag": {
      "type": "object",
      "description": "A flag resource.",
      "id": "Flag",
      "properties": {
        "type": {
          "type": "string",
          "description": "The type of the flag. Flags are typed to being `BOOLEAN`, `STRING`, `INTEGER` or `NONE`. `NONE` is used for flags which do not take a value, such as `skip_grant_tables`.",
          "enum": [
            "SQL_FLAG_TYPE_UNSPECIFIED",
            "BOOLEAN",
            "STRING",
            "INTEGER",
            "NONE",
            "MYSQL_TIMEZONE_OFFSET",
            "FLOAT",
            "REPEATED_STRING"
          ],
          "enumDescriptions": [
            "This is an unknown flag type.",
            "Boolean type flag.",
            "String type flag.",
            "Integer type flag.",
            "Flag type used for a server startup option.",
            "Type introduced specially for MySQL TimeZone offset. Accept a string value with the format [-12:59, 13:00].",
            "Float type flag.",
            "Comma-separated list of the strings in a SqlFlagType enum."
          ]
        },
        "minValue": {
          "format": "int64",
          "description": "For `INTEGER` flags, the minimum allowed value.",
          "type": "string"
        },
        "inBeta": {
          "type": "boolean",
          "description": "Whether or not the flag is considered in beta."
        },
        "recommendedStringValue": {
          "type": "string",
          "description": "Recommended flag value in string format for UI display."
        },
        "flagScope": {
          "type": "string",
          "description": "Scope of flag.",
          "enum": [
            "SQL_FLAG_SCOPE_UNSPECIFIED",
            "SQL_FLAG_SCOPE_DATABASE",
            "SQL_FLAG_SCOPE_CONNECTION_POOL"
          ],
          "enumDescriptions": [
            "Assume database flags if unspecified",
            "database flags",
            "connection pool configuration flags"
          ]
        },
        "appliesTo": {
          "type": "array",
          "description": "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).",
          "items": {
            "enum": [
              "SQL_DATABASE_VERSION_UNSPECIFIED",
              "MYSQL_5_1",
              "MYSQL_5_5",
              "MYSQL_5_6",
              "MYSQL_5_7",
              "MYSQL_8_0",
              "MYSQL_8_0_18",
              "MYSQL_8_0_26",
              "MYSQL_8_0_27",
              "MYSQL_8_0_28",
              "MYSQL_8_0_29",
              "MYSQL_8_0_30",
              "MYSQL_8_0_31",
              "MYSQL_8_0_32",
              "MYSQL_8_0_33",
              "MYSQL_8_0_34",
              "MYSQL_8_0_35",
              "MYSQL_8_0_36",
              "MYSQL_8_0_37",
              "MYSQL_8_0_39",
              "MYSQL_8_0_40",
              "MYSQL_8_0_41",
              "MYSQL_8_0_42",
              "MYSQL_8_0_43",
              "MYSQL_8_0_44",
              "MYSQL_8_0_45",
              "MYSQL_8_0_46",
              "MYSQL_8_4",
              "MYSQL_9_7",
              "SQLSERVER_2017_STANDARD",
              "SQLSERVER_2017_ENTERPRISE",
              "SQLSERVER_2017_EXPRESS",
              "SQLSERVER_2017_WEB",
              "POSTGRES_9_6",
              "POSTGRES_10",
              "POSTGRES_11",
              "POSTGRES_12",
              "POSTGRES_13",
              "POSTGRES_14",
              "POSTGRES_15",
              "POSTGRES_16",
              "POSTGRES_17",
              "POSTGRES_18",
              "POSTGRES_19",
              "POSTGRES_20",
              "SQLSERVER_2019_STANDARD",
              "SQLSERVER_2019_ENTERPRISE",
              "SQLSERVER_2019_EXPRESS",
              "SQLSERVER_2019_WEB",
              "SQLSERVER_2022_STANDARD",
              "SQLSERVER_2022_ENTERPRISE",
              "SQLSERVER_2022_EXPRESS",
              "SQLSERVER_2022_WEB",
              "SQLSERVER_2025_STANDARD",
              "SQLSERVER_2025_ENTERPRISE",
              "SQLSERVER_2025_EXPRESS"
            ],
            "type": "string",
            "enumDeprecated": [
              false,
              true,
              true,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              true,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false,
              false
            ],
            "enumDescriptions": [
              "This is an unknown database version.",
              "The database version is MySQL 5.1.",
              "The database version is MySQL 5.5.",
              "The database version is MySQL 5.6.",
              "The database version is MySQL 5.7.",
              "The database version is MySQL 8.",
              "The database major version is MySQL 8.0 and the minor version is 18.",
              "The database major version is MySQL 8.0 and the minor version is 26.",
              "The database major version is MySQL 8.0 and the minor version is 27.",
              "The database major version is MySQL 8.0 and the minor version is 28.",
              "The database major version is MySQL 8.0 and the minor version is 29.",
              "The database major version is MySQL 8.0 and the minor version is 30.",
              "The database major version is MySQL 8.0 and the minor version is 31.",
              "The database major version is MySQL 8.0 and the minor version is 32.",
              "The database major version is MySQL 8.0 and the minor version is 33.",
              "The database major version is MySQL 8.0 and the minor version is 34.",
              "The database major version is MySQL 8.0 and the minor version is 35.",
              "The database major version is MySQL 8.0 and the minor version is 36.",
              "The database major version is MySQL 8.0 and the minor version is 37.",
              "The database major version is MySQL 8.0 and the minor version is 39.",
              "The database major version is MySQL 8.0 and the minor version is 40.",
              "The database major version is MySQL 8.0 and the minor version is 41.",
              "The database major version is MySQL 8.0 and the minor version is 42.",
              "The database major version is MySQL 8.0 and the minor version is 43.",
              "The database major version is MySQL 8.0 and the minor version is 44.",
              "The database major version is MySQL 8.0 and the minor version is 45.",
              "The database major version is MySQL 8.0 and the minor version is 46.",
              "The database version is MySQL 8.4.",
              "The database version is MySQL 9.7.",
              "The database version is SQL Server 2017 Standard.",
              "The database version is SQL Server 2017 Enterprise.",
              "The database version is SQL Server 2017 Express.",
              "The database version is SQL Server 2017 Web.",
              "The database version is PostgreSQL 9.6.",
              "The database version is PostgreSQL 10.",
              "The database version is PostgreSQL 11.",
              "The database version is PostgreSQL 12.",
              "The database version is PostgreSQL 13.",
              "The database version is PostgreSQL 14.",
              "The database version is PostgreSQL 15.",
              "The database version is PostgreSQL 16.",
              "The database version is PostgreSQL 17.",
              "The database version is PostgreSQL 18.",
              "The database version is PostgreSQL 19.",
              "The database version is PostgreSQL 20.",
              "The database version is SQL Server 2019 Standard.",
              "The database version is SQL Server 2019 Enterprise.",
              "The database version is SQL Server 2019 Express.",
              "The database version is SQL Server 2019 Web.",
              "The database version is SQL Server 2022 Standard.",
              "The database version is SQL Server 2022 Enterprise.",
              "The database version is SQL Server 2022 Express.",
              "The database version is SQL Server 2022 Web.",
              "The database version is SQL Server 2025 Standard.",
              "The database version is SQL Server 2025 Enterprise.",
              "The database version is SQL Server 2025 Express."
            ]
          }
        },
        "maxValue": {
          "description": "For `INTEGER` flags, the maximum allowed value.",
          "type": "string",
          "format": "int64"
        },
        "kind": {
          "description": "This is always `sql#flag`.",
          "type": "string"
        },
        "allowedIntValues": {
          "type": "array",
          "description": "Use this field if only certain integers are accepted. Can be combined with min_value and max_value to add additional values.",
          "items": {
            "type": "string",
            "format": "int64"
          }
        },
        "requiresRestart": {
          "description": "Indicates whether changing this flag will trigger a database restart. Only applicable to Second Generation instances.",
          "type": "boolean"
        },
        "name": {
          "description": "This is the name of the flag. Flag names always use underscores, not hyphens, for example: `max_allowed_packet`",
          "type": "string"
        },
        "allowedStringValues": {
          "type": "array",
          "description": "For `STRING` flags, a list of strings that the value can be set to.",
          "items": {
            "type": "string"
          }
        },
        "recommendedIntValue": {
          "type": "string",
          "description": "Recommended flag value in integer format for UI display.",
          "format": "int64"
        }
      }
    },
    "SqlInstancesReleaseSsrsLeaseResponse": {
      "type": "object",
      "description": "The response for the release of the SSRS lease.",
      "id": "SqlInstancesReleaseSsrsLeaseResponse",
      "properties": {
        "operationId": {
          "description": "The operation ID.",
          "type": "string"
        }
      }
    },
    "InstancesListServerCasResponse": {
      "id": "InstancesListServerCasResponse",
      "properties": {
        "certs": {
          "items": {
            "$ref": "SslCert"
          },
          "description": "List of server CA certificates for the instance.",
          "type": "array"
        },
        "kind": {
          "description": "This is always `sql#instancesListServerCas`.",
          "type": "string"
        },
        "activeVersion": {
          "type": "string"
        }
      },
      "description": "Instances ListServerCas response.",
      "type": "object"
    },
    "SqlInstancesGetLatestRecoveryTimeResponse": {
      "id": "SqlInstancesGetLatestRecoveryTimeResponse",
      "properties": {
        "earliestRecoveryTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "Timestamp, identifies the earliest recovery time of the source instance."
        },
        "latestRecoveryTime": {
          "format": "google-datetime",
          "description": "Timestamp, identifies the latest recovery time of the source instance.",
          "type": "string"
        },
        "kind": {
          "description": "This is always `sql#getLatestRecoveryTime`.",
          "type": "string"
        }
      },
      "description": "Instance get latest recovery time response.",
      "type": "object"
    },
    "AclEntry": {
      "description": "An entry for an Access Control list.",
      "type": "object",
      "id": "AclEntry",
      "properties": {
        "value": {
          "description": "The allowlisted value for the access control list.",
          "type": "string"
        },
        "expirationTime": {
          "format": "google-datetime",
          "description": "The time when this access control entry expires in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`.",
          "type": "string"
        },
        "kind": {
          "description": "This is always `sql#aclEntry`.",
          "type": "string"
        },
        "name": {
          "description": "Optional. A label to identify this entry.",
          "type": "string"
        }
      }
    },
    "SqlExternalSyncSettingError": {
      "id": "SqlExternalSyncSettingError",
      "properties": {
        "kind": {
          "type": "string",
          "description": "Can be `sql#externalSyncSettingError` or `sql#externalSyncSettingWarning`."
        },
        "type": {
          "enumDescriptions": [
            "",
            "",
            "",
            "",
            "",
            "The replication user is missing privileges that are required.",
            "Unsupported migration type.",
            "No pglogical extension installed on databases, applicable for postgres.",
            "pglogical node already exists on databases, applicable for postgres.",
            "The value of parameter wal_level is not set to logical.",
            "The value of parameter shared_preload_libraries does not include pglogical.",
            "The value of parameter max_replication_slots is not sufficient.",
            "The value of parameter max_wal_senders is not sufficient.",
            "The value of parameter max_worker_processes is not sufficient.",
            "Extensions installed are either not supported or having unsupported versions",
            "The value of parameter rds.logical_replication is not set to 1.",
            "The primary instance logging setup doesn't allow EM sync.",
            "The primary instance database parameter setup doesn't allow EM sync.",
            "The gtid_mode is not supported, applicable for MySQL.",
            "SQL Server Agent is not running.",
            "The table definition is not support due to missing primary key or replica identity, applicable for postgres. Note that this is a warning and won't block the migration.",
            "The customer has a definer that will break EM setup.",
            "SQL Server @@SERVERNAME does not match actual host name.",
            "The primary instance has been setup and will fail the setup.",
            "The primary instance has unsupported binary log format.",
            "The primary instance's binary log retention setting.",
            "The primary instance has tables with unsupported storage engine.",
            "Source has tables with limited support eg: PostgreSQL tables without primary keys.",
            "The replica instance contains existing data.",
            "The replication user is missing privileges that are optional.",
            "Additional BACKUP_ADMIN privilege is granted to the replication user which may lock source MySQL 8 instance for DDLs during initial sync.",
            "The Cloud Storage bucket is missing necessary permissions.",
            "The Cloud Storage bucket has an error in the file or contains invalid file information.",
            "The source instance has unsupported database settings for migration.",
            "The replication user is missing parallel import specific privileges. (e.g. LOCK TABLES) for MySQL.",
            "The global variable local_infile is off on external server replica.",
            "This code instructs customers to turn on point-in-time recovery manually for the instance after promoting the Cloud SQL for PostgreSQL instance.",
            "The minor version of replica database is incompatible with the source.",
            "This warning message indicates that Cloud SQL uses the maximum number of subscriptions to migrate data from the source to the destination.",
            "Unable to verify definers on the source for MySQL.",
            "If a time out occurs while the subscription counts are calculated, then this value is set to 1. Otherwise, this value is set to 2.",
            "Count of subscriptions needed to sync source data for PostgreSQL database.",
            "Final parallel level that is used to do migration.",
            "The disk size of the replica instance is smaller than the data size of the source instance.",
            "The data size of the source instance is greater than 1 TB, the number of cores of the replica instance is less than 8, and the memory of the replica is less than 32 GB.",
            "The warning message indicates the unsupported extensions will not be migrated to the destination.",
            "The warning message indicates the pg_cron extension and settings will not be migrated to the destination.",
            "The error message indicates that pg_cron flags are enabled on the destination which is not supported during the migration.",
            "This error message indicates that the specified extensions are not enabled on destination instance. For example, before you can migrate data to the destination instance, you must enable the PGAudit extension on the instance.",
            "The source database has generated columns that can't be migrated. Please change them to regular columns before migration.",
            "The source database has users that aren't created in the replica. First, create all users, which are in the pg_user_mappings table of the source database, in the destination instance. Then, perform the migration.",
            "The selected objects include system objects that aren't supported for migration.",
            "The source database has tables with the FULL or NOTHING replica identity. Before starting your migration, either remove the identity or change it to DEFAULT. Note that this is an error and will block the migration.",
            "The selected objects don't exist on the source instance.",
            "PSC only destination instance does not have a network attachment URI.",
            "Selected objects reference unselected objects. Based on their object type (foreign key constraint or view), selected objects will fail during migration.",
            "The migration will delete existing data in the replica; set replica_overwrite_enabled in the request to acknowledge this. This is an error. MySQL only.",
            "The migration will delete existing data in the replica; replica_overwrite_enabled was set in the request acknowledging this. This is a warning rather than an error. MySQL only.",
            "The replication user is missing specific privileges to setup DDL replication. (e.g. CREATE EVENT TRIGGER, CREATE SCHEMA) for PostgreSQL."
          ],
          "type": "string",
          "description": "Identifies the specific error that occurred.",
          "enum": [
            "SQL_EXTERNAL_SYNC_SETTING_ERROR_TYPE_UNSPECIFIED",
            "CONNECTION_FAILURE",
            "BINLOG_NOT_ENABLED",
            "INCOMPATIBLE_DATABASE_VERSION",
            "REPLICA_ALREADY_SETUP",
            "INSUFFICIENT_PRIVILEGE",
            "UNSUPPORTED_MIGRATION_TYPE",
            "NO_PGLOGICAL_INSTALLED",
            "PGLOGICAL_NODE_ALREADY_EXISTS",
            "INVALID_WAL_LEVEL",
            "INVALID_SHARED_PRELOAD_LIBRARY",
            "INSUFFICIENT_MAX_REPLICATION_SLOTS",
            "INSUFFICIENT_MAX_WAL_SENDERS",
            "INSUFFICIENT_MAX_WORKER_PROCESSES",
            "UNSUPPORTED_EXTENSIONS",
            "INVALID_RDS_LOGICAL_REPLICATION",
            "INVALID_LOGGING_SETUP",
            "INVALID_DB_PARAM",
            "UNSUPPORTED_GTID_MODE",
            "SQLSERVER_AGENT_NOT_RUNNING",
            "UNSUPPORTED_TABLE_DEFINITION",
            "UNSUPPORTED_DEFINER",
            "SQLSERVER_SERVERNAME_MISMATCH",
            "PRIMARY_ALREADY_SETUP",
            "UNSUPPORTED_BINLOG_FORMAT",
            "BINLOG_RETENTION_SETTING",
            "UNSUPPORTED_STORAGE_ENGINE",
            "LIMITED_SUPPORT_TABLES",
            "EXISTING_DATA_IN_REPLICA",
            "MISSING_OPTIONAL_PRIVILEGES",
            "RISKY_BACKUP_ADMIN_PRIVILEGE",
            "INSUFFICIENT_GCS_PERMISSIONS",
            "INVALID_FILE_INFO",
            "UNSUPPORTED_DATABASE_SETTINGS",
            "MYSQL_PARALLEL_IMPORT_INSUFFICIENT_PRIVILEGE",
            "LOCAL_INFILE_OFF",
            "TURN_ON_PITR_AFTER_PROMOTE",
            "INCOMPATIBLE_DATABASE_MINOR_VERSION",
            "SOURCE_MAX_SUBSCRIPTIONS",
            "UNABLE_TO_VERIFY_DEFINERS",
            "SUBSCRIPTION_CALCULATION_STATUS",
            "PG_SUBSCRIPTION_COUNT",
            "PG_SYNC_PARALLEL_LEVEL",
            "INSUFFICIENT_DISK_SIZE",
            "INSUFFICIENT_MACHINE_TIER",
            "UNSUPPORTED_EXTENSIONS_NOT_MIGRATED",
            "EXTENSIONS_NOT_MIGRATED",
            "PG_CRON_FLAG_ENABLED_IN_REPLICA",
            "EXTENSIONS_NOT_ENABLED_IN_REPLICA",
            "UNSUPPORTED_COLUMNS",
            "USERS_NOT_CREATED_IN_REPLICA",
            "UNSUPPORTED_SYSTEM_OBJECTS",
            "UNSUPPORTED_TABLES_WITH_REPLICA_IDENTITY",
            "SELECTED_OBJECTS_NOT_EXIST_ON_SOURCE",
            "PSC_ONLY_INSTANCE_WITH_NO_NETWORK_ATTACHMENT_URI",
            "SELECTED_OBJECTS_REFERENCE_UNSELECTED_OBJECTS",
            "PROMPT_DELETE_EXISTING",
            "WILL_DELETE_EXISTING",
            "PG_DDL_REPLICATION_INSUFFICIENT_PRIVILEGE"
          ]
        },
        "detail": {
          "type": "string",
          "description": "Additional information about the error encountered."
        }
      },
      "type": "object",
      "description": "External primary instance migration setting error/warning."
    },
    "OperationMetadata": {
      "type": "object",
      "description": "Represents the metadata of the long-running operation.",
      "id": "OperationMetadata",
      "properties": {
        "endTime": {
          "description": "Output only. The time the operation finished running.",
          "type": "string",
          "readOnly": true,
          "format": "google-datetime"
        },
        "createTime": {
          "readOnly": true,
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. The time the operation was created."
        },
        "target": {
          "description": "Output only. Server-defined resource path for the target of the operation.",
          "type": "string",
          "readOnly": true
        },
        "verb": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Name of the verb executed by the operation."
        },
        "apiVersion": {
          "type": "string",
          "description": "Output only. API version used to start the operation.",
          "readOnly": true
        },
        "cancelRequested": {
          "readOnly": true,
          "description": "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`.",
          "type": "boolean"
        },
        "statusDetail": {
          "description": "Output only. Human-readable status of the operation, if any.",
          "type": "string",
          "readOnly": true
        }
      }
    },
    "OnPremisesConfiguration": {
      "id": "OnPremisesConfiguration",
      "properties": {
        "selectedObjects": {
          "description": "Optional. A list of objects that the user selects for replication from an external source instance.",
          "type": "array",
          "items": {
            "$ref": "SelectedObjects"
          }
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#onPremisesConfiguration`."
        },
        "username": {
          "description": "The username for connecting to on-premises instance.",
          "type": "string"
        },
        "dumpFilePath": {
          "description": "The dump file to create the Cloud SQL replica.",
          "type": "string"
        },
        "sslOption": {
          "enumDescriptions": [
            "Unknown SSL option i.e. SSL option not specified by user.",
            "SSL is disabled for replica connection to the on-premises source.",
            "SSL is required for replica connection to the on-premises source.",
            "Verify CA is required for replica connection to the on-premises source."
          ],
          "type": "string",
          "description": "Optional. SslOption for replica connection to the on-premises source.",
          "enum": [
            "SSL_OPTION_UNSPECIFIED",
            "DISABLE",
            "REQUIRE",
            "VERIFY_CA"
          ]
        },
        "hostPort": {
          "description": "The host and port of the on-premises instance in host:port format",
          "type": "string"
        },
        "sourceInstance": {
          "description": "The reference to Cloud SQL instance if the source is Cloud SQL.",
          "$ref": "InstanceReference"
        },
        "caCertificate": {
          "type": "string",
          "description": "PEM representation of the trusted CA's x509 certificate."
        },
        "clientCertificate": {
          "description": "PEM representation of the replica's x509 certificate.",
          "type": "string"
        },
        "password": {
          "type": "string",
          "description": "The password for connecting to on-premises instance."
        },
        "clientKey": {
          "type": "string",
          "description": "PEM representation of the replica's private key. The corresponding public key is encoded in the client's certificate."
        }
      },
      "type": "object",
      "description": "On-premises instance configuration."
    },
    "InstanceReference": {
      "id": "InstanceReference",
      "properties": {
        "region": {
          "type": "string",
          "description": "The region of the Cloud SQL instance being referenced."
        },
        "name": {
          "type": "string",
          "description": "The name of the Cloud SQL instance being referenced. This does not include the project ID."
        },
        "project": {
          "description": "The project ID of the Cloud SQL instance being referenced. The default is the same project ID as the instance references it.",
          "type": "string"
        }
      },
      "description": "Reference to another Cloud SQL instance.",
      "type": "object"
    },
    "RotateEntraIdCertificateContext": {
      "id": "RotateEntraIdCertificateContext",
      "properties": {
        "kind": {
          "type": "string",
          "description": "Optional. This is always `sql#rotateEntraIdCertificateContext`."
        },
        "nextVersion": {
          "description": "Optional. The fingerprint of the next version to be rotated to. If left unspecified, will be rotated to the most recently added Entra ID certificate version.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "Instance rotate Entra ID certificate context."
    },
    "AdvancedMachineFeatures": {
      "id": "AdvancedMachineFeatures",
      "properties": {
        "threadsPerCore": {
          "type": "integer",
          "description": "The number of threads per physical core.",
          "format": "int32"
        }
      },
      "type": "object",
      "description": "Specifies options for controlling advanced machine features."
    },
    "PerformanceCaptureConfig": {
      "type": "object",
      "description": "Performance capture configuration.",
      "id": "PerformanceCaptureConfig",
      "properties": {
        "runningThreadsThreshold": {
          "description": "Optional. Specifies the minimum number of MySQL `Threads_running` to trigger the performance capture on the primary instance.",
          "type": "integer",
          "format": "int32"
        },
        "memoryUsageThresholdPercent": {
          "format": "int32",
          "type": "integer",
          "description": "Optional. Specifies the minimum percentage of memory usage to trigger the performance capture. Valid integers range from `10` to `99`. Enter `0` to disable the check."
        },
        "probeThreshold": {
          "format": "int32",
          "type": "integer",
          "description": "Optional. Specifies the minimum number of consecutive probe threshold that triggers performance capture."
        },
        "historyListLengthThresholdCount": {
          "type": "integer",
          "description": "Optional. Specifies the minimum number of undo log entries in the history list length to trigger the performance capture. Valid integers range from `10000` to `10000000`. Enter `0` to disable the check.",
          "format": "int32"
        },
        "enabled": {
          "type": "boolean",
          "description": "Optional. Enables or disables the performance capture feature."
        },
        "transactionKillExcludedUserHosts": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Optional. Specifies a customer-defined list of users to exclude from transaction termination. Entries can be in the format 'user@host' or just 'user'. A standalone 'user' implies 'user@%', excluding the user from any host. Wildcard '%' is allowed in the host part of the 'user@host' format. Example: `[\"app_user\", \"db_admin@10.1.2.3\", \"report_user@%\"]`"
        },
        "secondsBehindSourceThreshold": {
          "type": "integer",
          "description": "Optional. Specifies the minimum number of seconds replica must be lagging behind primary instance to trigger the performance capture on replica.",
          "format": "int32"
        },
        "transactionDurationThreshold": {
          "type": "integer",
          "description": "Optional. Specifies the amount of time in seconds that a transaction needs to have been open before the watcher starts recording it.",
          "format": "int32"
        },
        "probingIntervalSeconds": {
          "description": "Optional. Specifies the interval in seconds between consecutive probes that check if any trigger condition thresholds have been reached.",
          "type": "integer",
          "format": "int32"
        },
        "transactionKillThresholdSeconds": {
          "format": "int32",
          "type": "integer",
          "description": "Optional. Specifies the amount of time in seconds that a transaction needs to have been open before the watcher starts terminating it. Valid integers range from `60` to `604800` (7 days). Enter `0` to disable. If enabled (i.e., \u003e 0), this value must be greater than or equal to `transaction_duration_threshold`. Configurations where `0 \u003c transaction_kill_threshold_seconds \u003c transaction_duration_threshold` will be rejected."
        },
        "cpuUtilizationThresholdPercent": {
          "type": "integer",
          "description": "Optional. Specifies the minimum percentage of CPU utilization to trigger the performance capture. Valid integers range from `10` to `99`. Enter `0` to disable the check.",
          "format": "int32"
        },
        "semaphoreWaitThresholdCount": {
          "description": "Optional. Specifies the minimum allowed number of semaphore waits to trigger the performance capture. Valid integers range from `10` to `10000`. Enter `0` to disable the check.",
          "type": "integer",
          "format": "int32"
        },
        "transactionLockWaitThresholdCount": {
          "description": "Optional. Specifies the minimum allowed number of transactions in lock wait state to trigger the performance capture. Valid integers range from `10` to `10000`. Enter `0` to disable the check.",
          "type": "integer",
          "format": "int32"
        },
        "transactionKillType": {
          "enumDescriptions": [
            "Unspecified.",
            "Only read-only transactions are eligible for termination.",
            "All transactions are eligible for termination, including those with write operations (such as INSERT, UPDATE, DELETE, or DDL)."
          ],
          "type": "string",
          "description": "Optional. Determines which transactions are allowed to be terminated when they exceed `transaction_kill_threshold_seconds`. This allows protecting write-heavy transactions from auto-termination if desired. Defaults to `READ_ONLY_TRANSACTIONS` if unspecified.",
          "enum": [
            "TRANSACTION_KILL_TYPE_UNSPECIFIED",
            "READ_ONLY_TRANSACTIONS",
            "ALL_TRANSACTIONS"
          ]
        }
      }
    },
    "RotateServerCaContext": {
      "id": "RotateServerCaContext",
      "properties": {
        "kind": {
          "description": "This is always `sql#rotateServerCaContext`.",
          "type": "string"
        },
        "nextVersion": {
          "type": "string",
          "description": "The fingerprint of the next version to be rotated to. If left unspecified, will be rotated to the most recently added server CA version."
        }
      },
      "type": "object",
      "description": "Instance rotate server CA context."
    },
    "InstancesDemoteMasterRequest": {
      "description": "Database demote primary instance request.",
      "type": "object",
      "id": "InstancesDemoteMasterRequest",
      "properties": {
        "demoteMasterContext": {
          "description": "Contains details about the demoteMaster operation.",
          "$ref": "DemoteMasterContext"
        }
      }
    },
    "DemoteContext": {
      "description": "This context is used to demote an existing standalone instance to be a Cloud SQL read replica for an external database server.",
      "type": "object",
      "id": "DemoteContext",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always `sql#demoteContext`."
        },
        "sourceRepresentativeInstanceName": {
          "type": "string",
          "description": "Required. The name of the instance which acts as an on-premises primary instance in the replication setup."
        }
      }
    },
    "DataCacheConfig": {
      "id": "DataCacheConfig",
      "properties": {
        "dataCacheEnabled": {
          "type": "boolean",
          "description": "Whether data cache is enabled for the instance."
        }
      },
      "description": "Data cache configurations.",
      "type": "object"
    },
    "PreCheckMajorVersionUpgradeContext": {
      "type": "object",
      "description": "Pre-check major version upgrade context.",
      "id": "PreCheckMajorVersionUpgradeContext",
      "properties": {
        "targetDatabaseVersion": {
          "enum": [
            "SQL_DATABASE_VERSION_UNSPECIFIED",
            "MYSQL_5_1",
            "MYSQL_5_5",
            "MYSQL_5_6",
            "MYSQL_5_7",
            "MYSQL_8_0",
            "MYSQL_8_0_18",
            "MYSQL_8_0_26",
            "MYSQL_8_0_27",
            "MYSQL_8_0_28",
            "MYSQL_8_0_29",
            "MYSQL_8_0_30",
            "MYSQL_8_0_31",
            "MYSQL_8_0_32",
            "MYSQL_8_0_33",
            "MYSQL_8_0_34",
            "MYSQL_8_0_35",
            "MYSQL_8_0_36",
            "MYSQL_8_0_37",
            "MYSQL_8_0_39",
            "MYSQL_8_0_40",
            "MYSQL_8_0_41",
            "MYSQL_8_0_42",
            "MYSQL_8_0_43",
            "MYSQL_8_0_44",
            "MYSQL_8_0_45",
            "MYSQL_8_0_46",
            "MYSQL_8_4",
            "MYSQL_9_7",
            "SQLSERVER_2017_STANDARD",
            "SQLSERVER_2017_ENTERPRISE",
            "SQLSERVER_2017_EXPRESS",
            "SQLSERVER_2017_WEB",
            "POSTGRES_9_6",
            "POSTGRES_10",
            "POSTGRES_11",
            "POSTGRES_12",
            "POSTGRES_13",
            "POSTGRES_14",
            "POSTGRES_15",
            "POSTGRES_16",
            "POSTGRES_17",
            "POSTGRES_18",
            "POSTGRES_19",
            "POSTGRES_20",
            "SQLSERVER_2019_STANDARD",
            "SQLSERVER_2019_ENTERPRISE",
            "SQLSERVER_2019_EXPRESS",
            "SQLSERVER_2019_WEB",
            "SQLSERVER_2022_STANDARD",
            "SQLSERVER_2022_ENTERPRISE",
            "SQLSERVER_2022_EXPRESS",
            "SQLSERVER_2022_WEB",
            "SQLSERVER_2025_STANDARD",
            "SQLSERVER_2025_ENTERPRISE",
            "SQLSERVER_2025_EXPRESS"
          ],
          "enumDescriptions": [
            "This is an unknown database version.",
            "The database version is MySQL 5.1.",
            "The database version is MySQL 5.5.",
            "The database version is MySQL 5.6.",
            "The database version is MySQL 5.7.",
            "The database version is MySQL 8.",
            "The database major version is MySQL 8.0 and the minor version is 18.",
            "The database major version is MySQL 8.0 and the minor version is 26.",
            "The database major version is MySQL 8.0 and the minor version is 27.",
            "The database major version is MySQL 8.0 and the minor version is 28.",
            "The database major version is MySQL 8.0 and the minor version is 29.",
            "The database major version is MySQL 8.0 and the minor version is 30.",
            "The database major version is MySQL 8.0 and the minor version is 31.",
            "The database major version is MySQL 8.0 and the minor version is 32.",
            "The database major version is MySQL 8.0 and the minor version is 33.",
            "The database major version is MySQL 8.0 and the minor version is 34.",
            "The database major version is MySQL 8.0 and the minor version is 35.",
            "The database major version is MySQL 8.0 and the minor version is 36.",
            "The database major version is MySQL 8.0 and the minor version is 37.",
            "The database major version is MySQL 8.0 and the minor version is 39.",
            "The database major version is MySQL 8.0 and the minor version is 40.",
            "The database major version is MySQL 8.0 and the minor version is 41.",
            "The database major version is MySQL 8.0 and the minor version is 42.",
            "The database major version is MySQL 8.0 and the minor version is 43.",
            "The database major version is MySQL 8.0 and the minor version is 44.",
            "The database major version is MySQL 8.0 and the minor version is 45.",
            "The database major version is MySQL 8.0 and the minor version is 46.",
            "The database version is MySQL 8.4.",
            "The database version is MySQL 9.7.",
            "The database version is SQL Server 2017 Standard.",
            "The database version is SQL Server 2017 Enterprise.",
            "The database version is SQL Server 2017 Express.",
            "The database version is SQL Server 2017 Web.",
            "The database version is PostgreSQL 9.6.",
            "The database version is PostgreSQL 10.",
            "The database version is PostgreSQL 11.",
            "The database version is PostgreSQL 12.",
            "The database version is PostgreSQL 13.",
            "The database version is PostgreSQL 14.",
            "The database version is PostgreSQL 15.",
            "The database version is PostgreSQL 16.",
            "The database version is PostgreSQL 17.",
            "The database version is PostgreSQL 18.",
            "The database version is PostgreSQL 19.",
            "The database version is PostgreSQL 20.",
            "The database version is SQL Server 2019 Standard.",
            "The database version is SQL Server 2019 Enterprise.",
            "The database version is SQL Server 2019 Express.",
            "The database version is SQL Server 2019 Web.",
            "The database version is SQL Server 2022 Standard.",
            "The database version is SQL Server 2022 Enterprise.",
            "The database version is SQL Server 2022 Express.",
            "The database version is SQL Server 2022 Web.",
            "The database version is SQL Server 2025 Standard.",
            "The database version is SQL Server 2025 Enterprise.",
            "The database version is SQL Server 2025 Express."
          ],
          "description": "Required. The target database version to upgrade to.",
          "type": "string",
          "enumDeprecated": [
            false,
            true,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ]
        },
        "kind": {
          "description": "Optional. This is always `sql#preCheckMajorVersionUpgradeContext`.",
          "type": "string"
        },
        "preCheckResponse": {
          "readOnly": true,
          "items": {
            "$ref": "PreCheckResponse"
          },
          "type": "array",
          "description": "Output only. The responses from the precheck operation."
        }
      }
    },
    "SslCertsCreateEphemeralRequest": {
      "id": "SslCertsCreateEphemeralRequest",
      "properties": {
        "public_key": {
          "description": "PEM encoded public key to include in the signed certificate.",
          "type": "string"
        },
        "access_token": {
          "type": "string",
          "description": "Access token to include in the signed certificate."
        }
      },
      "description": "SslCerts create ephemeral certificate request.",
      "type": "object"
    },
    "SslCertDetail": {
      "id": "SslCertDetail",
      "properties": {
        "certInfo": {
          "description": "The public information about the cert.",
          "$ref": "SslCert"
        },
        "certPrivateKey": {
          "type": "string",
          "description": "The private key for the client cert, in pem format. Keep private in order to protect your security."
        }
      },
      "description": "SslCertDetail.",
      "type": "object"
    },
    "SqlInstancesAcquireSsrsLeaseResponse": {
      "type": "object",
      "description": "Acquire SSRS lease response.",
      "id": "SqlInstancesAcquireSsrsLeaseResponse",
      "properties": {
        "operationId": {
          "description": "The unique identifier for this operation.",
          "type": "string"
        }
      }
    },
    "PreCheckResponse": {
      "type": "object",
      "description": "Structured PreCheckResponse containing message, type, and required actions.",
      "id": "PreCheckResponse",
      "properties": {
        "messageType": {
          "enumDescriptions": [
            "Default unspecified value to prevent unintended behavior changes.",
            "General informational messages that don't require action.",
            "Warnings that might impact the upgrade but don't block it.",
            "Errors that a user must resolve before proceeding with the upgrade."
          ],
          "description": "The type of message whether it is an info, warning, or error.",
          "enum": [
            "MESSAGE_TYPE_UNSPECIFIED",
            "INFO",
            "WARNING",
            "ERROR"
          ],
          "type": "string"
        },
        "actionsRequired": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "The actions that the user needs to take. Use repeated for multiple actions."
        },
        "message": {
          "type": "string",
          "description": "The message to be displayed to the user."
        }
      }
    },
    "BackupContext": {
      "id": "BackupContext",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always `sql#backupContext`."
        },
        "backupId": {
          "description": "The identifier of the backup.",
          "type": "string",
          "format": "int64"
        },
        "name": {
          "type": "string",
          "description": "The name of the backup. Format: projects/{project}/backups/{backup}"
        }
      },
      "type": "object",
      "description": "Backup context."
    },
    "InstancesDemoteRequest": {
      "id": "InstancesDemoteRequest",
      "properties": {
        "demoteContext": {
          "description": "Required. This context is used to demote an existing standalone instance to be a Cloud SQL read replica for an external database server.",
          "$ref": "DemoteContext"
        }
      },
      "description": "This request is used to demote an existing standalone instance to be a Cloud SQL read replica for an external database server.",
      "type": "object"
    },
    "BackupRetentionSettings": {
      "id": "BackupRetentionSettings",
      "properties": {
        "retainedBackups": {
          "description": "Depending on the value of retention_unit, this is used to determine if a backup needs to be deleted. If retention_unit is 'COUNT', we will retain this many backups.",
          "type": "integer",
          "format": "int32"
        },
        "retentionUnit": {
          "enumDescriptions": [
            "Backup retention unit is unspecified, will be treated as COUNT.",
            "Retention will be by count, eg. \"retain the most recent 7 backups\"."
          ],
          "type": "string",
          "description": "The unit that 'retained_backups' represents.",
          "enum": [
            "RETENTION_UNIT_UNSPECIFIED",
            "COUNT"
          ]
        }
      },
      "description": "We currently only support backup retention by specifying the number of backups we will retain.",
      "type": "object"
    },
    "Status": {
      "type": "object",
      "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).",
      "id": "Status",
      "properties": {
        "code": {
          "format": "int32",
          "description": "The status code, which should be an enum value of google.rpc.Code.",
          "type": "integer"
        },
        "message": {
          "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.",
          "type": "string"
        },
        "details": {
          "items": {
            "type": "object",
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            }
          },
          "type": "array",
          "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use."
        }
      }
    },
    "Backup": {
      "type": "object",
      "description": "A backup resource.",
      "id": "Backup",
      "properties": {
        "name": {
          "readOnly": true,
          "description": "Output only. The resource name of the backup. Format: projects/{project}/backups/{backup}.",
          "type": "string"
        },
        "timeZone": {
          "description": "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.",
          "type": "string",
          "readOnly": true
        },
        "description": {
          "description": "The description of this backup.",
          "type": "string"
        },
        "kind": {
          "readOnly": true,
          "description": "Output only. This is always `sql#backup`.",
          "type": "string"
        },
        "backupKind": {
          "description": "Output only. Specifies the kind of backup, PHYSICAL or DEFAULT_SNAPSHOT.",
          "type": "string",
          "enumDescriptions": [
            "This is an unknown BackupKind.",
            "Snapshot-based backups.",
            "Physical backups."
          ],
          "enum": [
            "SQL_BACKUP_KIND_UNSPECIFIED",
            "SNAPSHOT",
            "PHYSICAL"
          ],
          "readOnly": true
        },
        "ttlDays": {
          "description": "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.",
          "type": "string",
          "format": "int64"
        },
        "kmsKey": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. This output contains the encryption configuration for a backup and the resource name of the KMS key for disk encryption."
        },
        "state": {
          "enum": [
            "SQL_BACKUP_STATE_UNSPECIFIED",
            "ENQUEUED",
            "RUNNING",
            "FAILED",
            "SUCCESSFUL",
            "DELETING",
            "DELETION_FAILED"
          ],
          "readOnly": true,
          "type": "string",
          "description": "Output only. The state of this backup.",
          "enumDescriptions": [
            "The state of the backup is unknown.",
            "The backup that's added to a queue.",
            "The backup is in progress.",
            "The backup failed.",
            "The backup is successful.",
            "The backup is being deleted.",
            "Deletion of the backup failed."
          ]
        },
        "instanceSettings": {
          "description": "Optional. Output only. Instance setting of the source instance that's associated with this backup.",
          "$ref": "DatabaseInstance",
          "readOnly": true
        },
        "error": {
          "readOnly": true,
          "description": "Output only. Information about why the backup operation fails (for example, when the backup state fails).",
          "$ref": "OperationError"
        },
        "databaseVersion": {
          "enum": [
            "SQL_DATABASE_VERSION_UNSPECIFIED",
            "MYSQL_5_1",
            "MYSQL_5_5",
            "MYSQL_5_6",
            "MYSQL_5_7",
            "MYSQL_8_0",
            "MYSQL_8_0_18",
            "MYSQL_8_0_26",
            "MYSQL_8_0_27",
            "MYSQL_8_0_28",
            "MYSQL_8_0_29",
            "MYSQL_8_0_30",
            "MYSQL_8_0_31",
            "MYSQL_8_0_32",
            "MYSQL_8_0_33",
            "MYSQL_8_0_34",
            "MYSQL_8_0_35",
            "MYSQL_8_0_36",
            "MYSQL_8_0_37",
            "MYSQL_8_0_39",
            "MYSQL_8_0_40",
            "MYSQL_8_0_41",
            "MYSQL_8_0_42",
            "MYSQL_8_0_43",
            "MYSQL_8_0_44",
            "MYSQL_8_0_45",
            "MYSQL_8_0_46",
            "MYSQL_8_4",
            "MYSQL_9_7",
            "SQLSERVER_2017_STANDARD",
            "SQLSERVER_2017_ENTERPRISE",
            "SQLSERVER_2017_EXPRESS",
            "SQLSERVER_2017_WEB",
            "POSTGRES_9_6",
            "POSTGRES_10",
            "POSTGRES_11",
            "POSTGRES_12",
            "POSTGRES_13",
            "POSTGRES_14",
            "POSTGRES_15",
            "POSTGRES_16",
            "POSTGRES_17",
            "POSTGRES_18",
            "POSTGRES_19",
            "POSTGRES_20",
            "SQLSERVER_2019_STANDARD",
            "SQLSERVER_2019_ENTERPRISE",
            "SQLSERVER_2019_EXPRESS",
            "SQLSERVER_2019_WEB",
            "SQLSERVER_2022_STANDARD",
            "SQLSERVER_2022_ENTERPRISE",
            "SQLSERVER_2022_EXPRESS",
            "SQLSERVER_2022_WEB",
            "SQLSERVER_2025_STANDARD",
            "SQLSERVER_2025_ENTERPRISE",
            "SQLSERVER_2025_EXPRESS"
          ],
          "readOnly": true,
          "description": "Output only. The database version of the instance of at the time this backup was made.",
          "type": "string",
          "enumDeprecated": [
            false,
            true,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ],
          "enumDescriptions": [
            "This is an unknown database version.",
            "The database version is MySQL 5.1.",
            "The database version is MySQL 5.5.",
            "The database version is MySQL 5.6.",
            "The database version is MySQL 5.7.",
            "The database version is MySQL 8.",
            "The database major version is MySQL 8.0 and the minor version is 18.",
            "The database major version is MySQL 8.0 and the minor version is 26.",
            "The database major version is MySQL 8.0 and the minor version is 27.",
            "The database major version is MySQL 8.0 and the minor version is 28.",
            "The database major version is MySQL 8.0 and the minor version is 29.",
            "The database major version is MySQL 8.0 and the minor version is 30.",
            "The database major version is MySQL 8.0 and the minor version is 31.",
            "The database major version is MySQL 8.0 and the minor version is 32.",
            "The database major version is MySQL 8.0 and the minor version is 33.",
            "The database major version is MySQL 8.0 and the minor version is 34.",
            "The database major version is MySQL 8.0 and the minor version is 35.",
            "The database major version is MySQL 8.0 and the minor version is 36.",
            "The database major version is MySQL 8.0 and the minor version is 37.",
            "The database major version is MySQL 8.0 and the minor version is 39.",
            "The database major version is MySQL 8.0 and the minor version is 40.",
            "The database major version is MySQL 8.0 and the minor version is 41.",
            "The database major version is MySQL 8.0 and the minor version is 42.",
            "The database major version is MySQL 8.0 and the minor version is 43.",
            "The database major version is MySQL 8.0 and the minor version is 44.",
            "The database major version is MySQL 8.0 and the minor version is 45.",
            "The database major version is MySQL 8.0 and the minor version is 46.",
            "The database version is MySQL 8.4.",
            "The database version is MySQL 9.7.",
            "The database version is SQL Server 2017 Standard.",
            "The database version is SQL Server 2017 Enterprise.",
            "The database version is SQL Server 2017 Express.",
            "The database version is SQL Server 2017 Web.",
            "The database version is PostgreSQL 9.6.",
            "The database version is PostgreSQL 10.",
            "The database version is PostgreSQL 11.",
            "The database version is PostgreSQL 12.",
            "The database version is PostgreSQL 13.",
            "The database version is PostgreSQL 14.",
            "The database version is PostgreSQL 15.",
            "The database version is PostgreSQL 16.",
            "The database version is PostgreSQL 17.",
            "The database version is PostgreSQL 18.",
            "The database version is PostgreSQL 19.",
            "The database version is PostgreSQL 20.",
            "The database version is SQL Server 2019 Standard.",
            "The database version is SQL Server 2019 Enterprise.",
            "The database version is SQL Server 2019 Express.",
            "The database version is SQL Server 2019 Web.",
            "The database version is SQL Server 2022 Standard.",
            "The database version is SQL Server 2022 Enterprise.",
            "The database version is SQL Server 2022 Express.",
            "The database version is SQL Server 2022 Web.",
            "The database version is SQL Server 2025 Standard.",
            "The database version is SQL Server 2025 Enterprise.",
            "The database version is SQL Server 2025 Express."
          ]
        },
        "instanceDeletionTime": {
          "readOnly": true,
          "format": "google-datetime",
          "type": "string",
          "description": "Optional. Output only. Timestamp in UTC of when the instance associated with this backup is deleted."
        },
        "satisfiesPzi": {
          "readOnly": true,
          "description": "Output only. This status indicates whether the backup satisfies PZI. The status is reserved for future use.",
          "type": "boolean"
        },
        "kmsKeyVersion": {
          "description": "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.",
          "type": "string",
          "readOnly": true
        },
        "maxChargeableBytes": {
          "description": "Output only. The maximum chargeable bytes for the backup.",
          "type": "string",
          "readOnly": true,
          "format": "int64"
        },
        "selfLink": {
          "description": "Output only. The URI of this resource.",
          "type": "string",
          "readOnly": true
        },
        "backupRun": {
          "description": "Output only. The mapping to backup run resource used for IAM validations.",
          "type": "string",
          "readOnly": true
        },
        "type": {
          "type": "string",
          "description": "Output only. The type of this backup. The type can be \"AUTOMATED\", \"ON_DEMAND\", or “FINAL”.",
          "enumDescriptions": [
            "This is an unknown backup type.",
            "The backup schedule triggers a backup automatically.",
            "The user triggers a backup manually.",
            "The backup that's created when the instance is deleted."
          ],
          "enum": [
            "SQL_BACKUP_TYPE_UNSPECIFIED",
            "AUTOMATED",
            "ON_DEMAND",
            "FINAL"
          ],
          "readOnly": true
        },
        "instance": {
          "description": "The name of the database instance.",
          "type": "string"
        },
        "satisfiesPzs": {
          "description": "Output only. This status indicates whether the backup satisfies PZS. The status is reserved for future use.",
          "type": "boolean",
          "readOnly": true
        },
        "location": {
          "type": "string",
          "description": "The storage location of the backups. The location can be multi-regional."
        },
        "expiryTime": {
          "format": "google-datetime",
          "description": "Backup expiration time. A UTC timestamp of when this resource expired.",
          "type": "string"
        },
        "backupInterval": {
          "description": "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.",
          "$ref": "Interval",
          "readOnly": true
        }
      }
    },
    "DemoteMasterContext": {
      "description": "Database instance demote primary instance context.",
      "type": "object",
      "id": "DemoteMasterContext",
      "properties": {
        "replicaConfiguration": {
          "description": "Configuration specific to read-replicas replicating from the on-premises primary instance.",
          "$ref": "DemoteMasterConfiguration"
        },
        "masterInstanceName": {
          "type": "string",
          "description": "The name of the instance which will act as on-premises primary instance in the replication setup."
        },
        "skipReplicationSetup": {
          "type": "boolean",
          "description": "Flag to skip replication setup on the instance."
        },
        "kind": {
          "description": "This is always `sql#demoteMasterContext`.",
          "type": "string"
        },
        "verifyGtidConsistency": {
          "type": "boolean",
          "description": "Verify the GTID consistency for demote operation. Default value: `True`. Setting this flag to `false` enables you to bypass the GTID consistency check between on-premises primary instance and Cloud SQL instance during the demotion operation but also exposes you to the risk of future replication failures. Change the value only if you know the reason for the GTID divergence and are confident that doing so will not cause any replication issues."
        }
      }
    },
    "InstancesListResponse": {
      "id": "InstancesListResponse",
      "properties": {
        "warnings": {
          "items": {
            "$ref": "ApiWarning"
          },
          "type": "array",
          "description": "List of warnings that occurred while handling the request."
        },
        "items": {
          "description": "List of database instance resources.",
          "type": "array",
          "items": {
            "$ref": "DatabaseInstance"
          }
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#instancesList`."
        },
        "nextPageToken": {
          "type": "string",
          "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results."
        }
      },
      "description": "Database instances list response.",
      "type": "object"
    },
    "InstancesTruncateLogRequest": {
      "description": "Instance truncate log request.",
      "type": "object",
      "id": "InstancesTruncateLogRequest",
      "properties": {
        "truncateLogContext": {
          "description": "Contains details about the truncate log operation.",
          "$ref": "TruncateLogContext"
        }
      }
    },
    "SqlInstancesResetReplicaSizeRequest": {
      "type": "object",
      "description": "Instance reset replica size request.",
      "id": "SqlInstancesResetReplicaSizeRequest",
      "properties": {}
    },
    "BackupRun": {
      "type": "object",
      "description": "A BackupRun resource.",
      "id": "BackupRun",
      "properties": {
        "startTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "The time the backup operation actually started in UTC timezone in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`."
        },
        "endTime": {
          "format": "google-datetime",
          "description": "The time the backup operation completed in UTC timezone in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`.",
          "type": "string"
        },
        "timeZone": {
          "type": "string",
          "description": "Backup time zone to prevent restores to an instance with a different time zone. Now relevant only for SQL Server."
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#backupRun`."
        },
        "description": {
          "description": "The description of this run, only applicable to on-demand backups.",
          "type": "string"
        },
        "backupKind": {
          "description": "Specifies the kind of backup, PHYSICAL or DEFAULT_SNAPSHOT.",
          "enum": [
            "SQL_BACKUP_KIND_UNSPECIFIED",
            "SNAPSHOT",
            "PHYSICAL"
          ],
          "type": "string",
          "enumDescriptions": [
            "This is an unknown BackupKind.",
            "Snapshot-based backups.",
            "Physical backups."
          ]
        },
        "enqueuedTime": {
          "description": "The time the run was enqueued in UTC timezone in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`.",
          "type": "string",
          "format": "google-datetime"
        },
        "status": {
          "enumDescriptions": [
            "The status of the run is unknown.",
            "The backup operation was enqueued.",
            "The backup is overdue across a given backup window. Indicates a problem. Example: Long-running operation in progress during the whole window.",
            "The backup is in progress.",
            "The backup failed.",
            "The backup was successful.",
            "The backup was skipped (without problems) for a given backup window. Example: Instance was idle.",
            "The backup is about to be deleted.",
            "The backup deletion failed.",
            "The backup has been deleted."
          ],
          "description": "The status of this run.",
          "enum": [
            "SQL_BACKUP_RUN_STATUS_UNSPECIFIED",
            "ENQUEUED",
            "OVERDUE",
            "RUNNING",
            "FAILED",
            "SUCCESSFUL",
            "SKIPPED",
            "DELETION_PENDING",
            "DELETION_FAILED",
            "DELETED"
          ],
          "type": "string"
        },
        "error": {
          "description": "Information about why the backup operation failed. This is only present if the run has the FAILED status.",
          "$ref": "OperationError"
        },
        "databaseVersion": {
          "readOnly": true,
          "enum": [
            "SQL_DATABASE_VERSION_UNSPECIFIED",
            "MYSQL_5_1",
            "MYSQL_5_5",
            "MYSQL_5_6",
            "MYSQL_5_7",
            "MYSQL_8_0",
            "MYSQL_8_0_18",
            "MYSQL_8_0_26",
            "MYSQL_8_0_27",
            "MYSQL_8_0_28",
            "MYSQL_8_0_29",
            "MYSQL_8_0_30",
            "MYSQL_8_0_31",
            "MYSQL_8_0_32",
            "MYSQL_8_0_33",
            "MYSQL_8_0_34",
            "MYSQL_8_0_35",
            "MYSQL_8_0_36",
            "MYSQL_8_0_37",
            "MYSQL_8_0_39",
            "MYSQL_8_0_40",
            "MYSQL_8_0_41",
            "MYSQL_8_0_42",
            "MYSQL_8_0_43",
            "MYSQL_8_0_44",
            "MYSQL_8_0_45",
            "MYSQL_8_0_46",
            "MYSQL_8_4",
            "MYSQL_9_7",
            "SQLSERVER_2017_STANDARD",
            "SQLSERVER_2017_ENTERPRISE",
            "SQLSERVER_2017_EXPRESS",
            "SQLSERVER_2017_WEB",
            "POSTGRES_9_6",
            "POSTGRES_10",
            "POSTGRES_11",
            "POSTGRES_12",
            "POSTGRES_13",
            "POSTGRES_14",
            "POSTGRES_15",
            "POSTGRES_16",
            "POSTGRES_17",
            "POSTGRES_18",
            "POSTGRES_19",
            "POSTGRES_20",
            "SQLSERVER_2019_STANDARD",
            "SQLSERVER_2019_ENTERPRISE",
            "SQLSERVER_2019_EXPRESS",
            "SQLSERVER_2019_WEB",
            "SQLSERVER_2022_STANDARD",
            "SQLSERVER_2022_ENTERPRISE",
            "SQLSERVER_2022_EXPRESS",
            "SQLSERVER_2022_WEB",
            "SQLSERVER_2025_STANDARD",
            "SQLSERVER_2025_ENTERPRISE",
            "SQLSERVER_2025_EXPRESS"
          ],
          "enumDescriptions": [
            "This is an unknown database version.",
            "The database version is MySQL 5.1.",
            "The database version is MySQL 5.5.",
            "The database version is MySQL 5.6.",
            "The database version is MySQL 5.7.",
            "The database version is MySQL 8.",
            "The database major version is MySQL 8.0 and the minor version is 18.",
            "The database major version is MySQL 8.0 and the minor version is 26.",
            "The database major version is MySQL 8.0 and the minor version is 27.",
            "The database major version is MySQL 8.0 and the minor version is 28.",
            "The database major version is MySQL 8.0 and the minor version is 29.",
            "The database major version is MySQL 8.0 and the minor version is 30.",
            "The database major version is MySQL 8.0 and the minor version is 31.",
            "The database major version is MySQL 8.0 and the minor version is 32.",
            "The database major version is MySQL 8.0 and the minor version is 33.",
            "The database major version is MySQL 8.0 and the minor version is 34.",
            "The database major version is MySQL 8.0 and the minor version is 35.",
            "The database major version is MySQL 8.0 and the minor version is 36.",
            "The database major version is MySQL 8.0 and the minor version is 37.",
            "The database major version is MySQL 8.0 and the minor version is 39.",
            "The database major version is MySQL 8.0 and the minor version is 40.",
            "The database major version is MySQL 8.0 and the minor version is 41.",
            "The database major version is MySQL 8.0 and the minor version is 42.",
            "The database major version is MySQL 8.0 and the minor version is 43.",
            "The database major version is MySQL 8.0 and the minor version is 44.",
            "The database major version is MySQL 8.0 and the minor version is 45.",
            "The database major version is MySQL 8.0 and the minor version is 46.",
            "The database version is MySQL 8.4.",
            "The database version is MySQL 9.7.",
            "The database version is SQL Server 2017 Standard.",
            "The database version is SQL Server 2017 Enterprise.",
            "The database version is SQL Server 2017 Express.",
            "The database version is SQL Server 2017 Web.",
            "The database version is PostgreSQL 9.6.",
            "The database version is PostgreSQL 10.",
            "The database version is PostgreSQL 11.",
            "The database version is PostgreSQL 12.",
            "The database version is PostgreSQL 13.",
            "The database version is PostgreSQL 14.",
            "The database version is PostgreSQL 15.",
            "The database version is PostgreSQL 16.",
            "The database version is PostgreSQL 17.",
            "The database version is PostgreSQL 18.",
            "The database version is PostgreSQL 19.",
            "The database version is PostgreSQL 20.",
            "The database version is SQL Server 2019 Standard.",
            "The database version is SQL Server 2019 Enterprise.",
            "The database version is SQL Server 2019 Express.",
            "The database version is SQL Server 2019 Web.",
            "The database version is SQL Server 2022 Standard.",
            "The database version is SQL Server 2022 Enterprise.",
            "The database version is SQL Server 2022 Express.",
            "The database version is SQL Server 2022 Web.",
            "The database version is SQL Server 2025 Standard.",
            "The database version is SQL Server 2025 Enterprise.",
            "The database version is SQL Server 2025 Express."
          ],
          "type": "string",
          "enumDeprecated": [
            false,
            true,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ],
          "description": "Output only. The instance database version at the time this backup was made."
        },
        "windowStartTime": {
          "description": "The start time of the backup window during which this the backup was attempted in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`.",
          "type": "string",
          "format": "google-datetime"
        },
        "selfLink": {
          "description": "The URI of this resource.",
          "type": "string"
        },
        "diskEncryptionStatus": {
          "description": "Encryption status specific to a backup.",
          "$ref": "DiskEncryptionStatus"
        },
        "maxChargeableBytes": {
          "readOnly": true,
          "format": "int64",
          "type": "string",
          "description": "Output only. The maximum chargeable bytes for the backup."
        },
        "type": {
          "enumDescriptions": [
            "This is an unknown BackupRun type.",
            "The backup schedule automatically triggers a backup.",
            "The user manually triggers a backup."
          ],
          "type": "string",
          "description": "The type of this run; can be either \"AUTOMATED\" or \"ON_DEMAND\" or \"FINAL\". This field defaults to \"ON_DEMAND\" and is ignored, when specified for insert requests.",
          "enum": [
            "SQL_BACKUP_RUN_TYPE_UNSPECIFIED",
            "AUTOMATED",
            "ON_DEMAND"
          ]
        },
        "instance": {
          "description": "Name of the database instance.",
          "type": "string"
        },
        "location": {
          "type": "string",
          "description": "Location of the backups."
        },
        "id": {
          "format": "int64",
          "type": "string",
          "description": "The identifier for this backup run. Unique only for a specific Cloud SQL instance."
        },
        "diskEncryptionConfiguration": {
          "description": "Encryption configuration specific to a backup.",
          "$ref": "DiskEncryptionConfiguration"
        }
      }
    },
    "SslCert": {
      "type": "object",
      "description": "SslCerts Resource",
      "id": "SslCert",
      "properties": {
        "kind": {
          "description": "This is always `sql#sslCert`.",
          "type": "string"
        },
        "instance": {
          "description": "Name of the database instance.",
          "type": "string"
        },
        "cert": {
          "type": "string",
          "description": "PEM representation."
        },
        "selfLink": {
          "type": "string",
          "description": "The URI of this resource."
        },
        "createTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "The time when the certificate was created in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`."
        },
        "expirationTime": {
          "format": "google-datetime",
          "description": "The time when the certificate expires in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`.",
          "type": "string"
        },
        "certSerialNumber": {
          "type": "string",
          "description": "Serial number, as extracted from the certificate."
        },
        "sha1Fingerprint": {
          "type": "string",
          "description": "Sha1 Fingerprint."
        },
        "commonName": {
          "type": "string",
          "description": "User supplied name. Constrained to [a-zA-Z.-_ ]+."
        }
      }
    },
    "FlagsListResponse": {
      "id": "FlagsListResponse",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always `sql#flagsList`."
        },
        "items": {
          "items": {
            "$ref": "Flag"
          },
          "description": "List of flags.",
          "type": "array"
        }
      },
      "type": "object",
      "description": "Flags list response."
    },
    "Database": {
      "id": "Database",
      "properties": {
        "name": {
          "type": "string",
          "description": "The name of the database in the Cloud SQL instance. This does not include the project ID or instance name."
        },
        "selfLink": {
          "description": "The URI of this resource.",
          "type": "string"
        },
        "collation": {
          "type": "string",
          "description": "The Cloud SQL collation value."
        },
        "sqlserverDatabaseDetails": {
          "$ref": "SqlServerDatabaseDetails"
        },
        "etag": {
          "description": "This field is deprecated and will be removed from a future version of the API.",
          "type": "string"
        },
        "project": {
          "description": "The project ID of the project containing the Cloud SQL database. The Google apps domain is prefixed if applicable.",
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#database`."
        },
        "instance": {
          "description": "The name of the Cloud SQL instance. This does not include the project ID.",
          "type": "string"
        },
        "charset": {
          "description": "The Cloud SQL charset value.",
          "type": "string"
        }
      },
      "description": "Represents a SQL database on the Cloud SQL instance.",
      "type": "object"
    },
    "Operation": {
      "type": "object",
      "description": "An Operation resource. For successful operations that return an Operation resource, only the fields relevant to the operation are populated in the resource.",
      "id": "Operation",
      "properties": {
        "exportContext": {
          "description": "The context for export operation, if applicable.",
          "$ref": "ExportContext"
        },
        "preCheckMajorVersionUpgradeContext": {
          "description": "The context for pre-check major version upgrade operation, if applicable. This field is only populated when the operation_type is PRE_CHECK_MAJOR_VERSION_UPGRADE. The PreCheckMajorVersionUpgradeContext message itself contains the details for that pre-check, such as the target database version for the upgrade and the results of the check (including any warnings or errors found).",
          "$ref": "PreCheckMajorVersionUpgradeContext"
        },
        "targetLink": {
          "type": "string"
        },
        "selfLink": {
          "type": "string",
          "description": "The URI of this resource."
        },
        "targetId": {
          "type": "string",
          "description": "Name of the resource on which this operation runs."
        },
        "acquireSsrsLeaseContext": {
          "description": "The context for acquire SSRS lease operation, if applicable.",
          "$ref": "AcquireSsrsLeaseContext"
        },
        "backupContext": {
          "description": "The context for backup operation, if applicable.",
          "$ref": "BackupContext"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#operation`."
        },
        "insertTime": {
          "description": "The time this operation was enqueued in UTC timezone in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`.",
          "type": "string",
          "format": "google-datetime"
        },
        "importContext": {
          "description": "The context for import operation, if applicable.",
          "$ref": "ImportContext"
        },
        "endTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "The time this operation finished in UTC timezone in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`."
        },
        "startTime": {
          "description": "The time this operation actually started in UTC timezone in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`.",
          "type": "string",
          "format": "google-datetime"
        },
        "apiWarning": {
          "description": "An Admin API warning message.",
          "$ref": "ApiWarning"
        },
        "name": {
          "type": "string",
          "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation."
        },
        "subOperationType": {
          "description": "Optional. The sub operation based on the operation type.",
          "$ref": "SqlSubOperationType"
        },
        "operationType": {
          "description": "The type of the operation. Valid values are: * `CREATE` * `DELETE` * `UPDATE` * `RESTART` * `IMPORT` * `EXPORT` * `BACKUP_VOLUME` * `RESTORE_VOLUME` * `CREATE_USER` * `DELETE_USER` * `CREATE_DATABASE` * `DELETE_DATABASE`",
          "type": "string",
          "enumDeprecated": [
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            true,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            true,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ],
          "enumDescriptions": [
            "Unknown operation type.",
            "Imports data into a Cloud SQL instance.",
            "Exports data from a Cloud SQL instance to a Cloud Storage bucket.",
            "Creates a new Cloud SQL instance.",
            "Updates the settings of a Cloud SQL instance.",
            "Deletes a Cloud SQL instance.",
            "Restarts the Cloud SQL instance.",
            "",
            "",
            "Performs instance backup.",
            "Deletes an instance backup.",
            "Restores an instance backup.",
            "Injects a privileged user in mysql for MOB instances.",
            "Clones a Cloud SQL instance.",
            "Stops replication on a Cloud SQL read replica instance.",
            "Starts replication on a Cloud SQL read replica instance.",
            "Promotes a Cloud SQL replica instance.",
            "Creates a Cloud SQL replica instance.",
            "Creates a new user in a Cloud SQL instance.",
            "Deletes a user from a Cloud SQL instance.",
            "Updates an existing user in a Cloud SQL instance. If a user with the specified username doesn't exist, a new user is created.",
            "Creates a database in the Cloud SQL instance.",
            "Deletes a database in the Cloud SQL instance.",
            "Updates a database in the Cloud SQL instance.",
            "Performs failover of an HA-enabled Cloud SQL failover replica.",
            "Deletes the backup taken by a backup run.",
            "",
            "Truncates a general or slow log table in MySQL.",
            "Demotes the stand-alone instance to be a Cloud SQL read replica for an external database server.",
            "Indicates that the instance is currently in maintenance. Maintenance typically causes the instance to be unavailable for 1-3 minutes.",
            "This field is deprecated, and will be removed in future version of API.",
            "",
            "Creates clone instance.",
            "Reschedule maintenance to another time.",
            "Starts external sync of a Cloud SQL EM replica to an external primary instance.",
            "Recovers logs from an instance's old data disk.",
            "Performs auto-restart of an HA-enabled Cloud SQL database for auto recovery.",
            "Re-encrypts CMEK instances with latest key version.",
            "Switches the roles of the primary and replica pair. The target instance should be the replica.",
            "Update a backup.",
            "Acquire a lease for the setup of SQL Server Reporting Services (SSRS).",
            "Release a lease for the setup of SQL Server Reporting Services (SSRS).",
            "Reconfigures old primary after a promote replica operation. Effect of a promote operation to the old primary is executed in this operation, asynchronously from the promote replica operation executed to the replica.",
            "Indicates that the instance, its read replicas, and its cascading replicas are in maintenance. Maintenance typically gets initiated on groups of replicas first, followed by the primary instance. For each instance, maintenance typically causes the instance to be unavailable for 1-3 minutes.",
            "Indicates that the instance (and any of its replicas) are currently in maintenance. This is initiated as a self-service request by using SSM. Maintenance typically causes the instance to be unavailable for 1-3 minutes.",
            "Switches a primary instance to a replica. This operation runs as part of a switchover operation to the original primary instance.",
            "Updates the major version of a Cloud SQL instance.",
            "Deprecated: ADVANCED_BACKUP is deprecated. Use ENHANCED_BACKUP instead.",
            "Changes the BackupTier of a Cloud SQL instance.",
            "Creates a backup for an Enhanced BackupTier Cloud SQL instance.",
            "Repairs entire read pool or specified read pool nodes in the read pool.",
            "Creates a Cloud SQL read pool instance.",
            "Pre-checks for major version upgrade.",
            "This operation type represents individual steps in a multi-step setup migration workflow: including configuration, replication, switchover/back, and data reseeding, as defined by operation's intent.",
            "Sends a message to a Cloud SQL agent."
          ],
          "enum": [
            "SQL_OPERATION_TYPE_UNSPECIFIED",
            "IMPORT",
            "EXPORT",
            "CREATE",
            "UPDATE",
            "DELETE",
            "RESTART",
            "BACKUP",
            "SNAPSHOT",
            "BACKUP_VOLUME",
            "DELETE_VOLUME",
            "RESTORE_VOLUME",
            "INJECT_USER",
            "CLONE",
            "STOP_REPLICA",
            "START_REPLICA",
            "PROMOTE_REPLICA",
            "CREATE_REPLICA",
            "CREATE_USER",
            "DELETE_USER",
            "UPDATE_USER",
            "CREATE_DATABASE",
            "DELETE_DATABASE",
            "UPDATE_DATABASE",
            "FAILOVER",
            "DELETE_BACKUP",
            "RECREATE_REPLICA",
            "TRUNCATE_LOG",
            "DEMOTE_MASTER",
            "MAINTENANCE",
            "ENABLE_PRIVATE_IP",
            "DEFER_MAINTENANCE",
            "CREATE_CLONE",
            "RESCHEDULE_MAINTENANCE",
            "START_EXTERNAL_SYNC",
            "LOG_CLEANUP",
            "AUTO_RESTART",
            "REENCRYPT",
            "SWITCHOVER",
            "UPDATE_BACKUP",
            "ACQUIRE_SSRS_LEASE",
            "RELEASE_SSRS_LEASE",
            "RECONFIGURE_OLD_PRIMARY",
            "CLUSTER_MAINTENANCE",
            "SELF_SERVICE_MAINTENANCE",
            "SWITCHOVER_TO_REPLICA",
            "MAJOR_VERSION_UPGRADE",
            "ADVANCED_BACKUP",
            "MANAGE_BACKUP",
            "ENHANCED_BACKUP",
            "REPAIR_READ_POOL",
            "CREATE_READ_POOL",
            "PRE_CHECK_MAJOR_VERSION_UPGRADE",
            "SETUP_MIGRATION",
            "AGENT_SEND_MESSAGE"
          ]
        },
        "error": {
          "description": "If errors occurred during processing of this operation, this field will be populated.",
          "$ref": "OperationErrors"
        },
        "targetProject": {
          "description": "The project ID of the target instance related to this operation.",
          "type": "string"
        },
        "user": {
          "description": "The email address of the user who initiated this operation.",
          "type": "string"
        },
        "status": {
          "enumDescriptions": [
            "The state of the operation is unknown.",
            "The operation has been queued, but has not started yet.",
            "The operation is running.",
            "The operation completed."
          ],
          "description": "The status of an operation.",
          "enum": [
            "SQL_OPERATION_STATUS_UNSPECIFIED",
            "PENDING",
            "RUNNING",
            "DONE"
          ],
          "type": "string"
        }
      }
    },
    "ReadPoolAutoScaleConfig": {
      "id": "ReadPoolAutoScaleConfig",
      "properties": {
        "minNodeCount": {
          "description": "Minimum number of read pool nodes to be maintained.",
          "type": "integer",
          "format": "int32"
        },
        "targetMetrics": {
          "type": "array",
          "description": "Optional. Target metrics for read pool auto scaling.",
          "items": {
            "$ref": "TargetMetric"
          }
        },
        "scaleOutCooldownSeconds": {
          "format": "int32",
          "description": "The cooldown period for scale out operations.",
          "type": "integer"
        },
        "disableScaleIn": {
          "type": "boolean",
          "description": "Indicates whether read pool auto scaling supports scale in operations (removing nodes)."
        },
        "scaleInCooldownSeconds": {
          "type": "integer",
          "description": "The cooldown period for scale in operations.",
          "format": "int32"
        },
        "enabled": {
          "description": "Indicates whether read pool auto scaling is enabled.",
          "type": "boolean"
        },
        "maxNodeCount": {
          "description": "Maximum number of read pool nodes to be maintained.",
          "type": "integer",
          "format": "int32"
        }
      },
      "type": "object",
      "description": "The read pool auto-scale configuration."
    },
    "Interval": {
      "id": "Interval",
      "properties": {
        "startTime": {
          "description": "Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.",
          "type": "string",
          "format": "google-datetime"
        },
        "endTime": {
          "format": "google-datetime",
          "description": "Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.",
          "type": "string"
        }
      },
      "description": "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.",
      "type": "object"
    },
    "ReplicationCluster": {
      "id": "ReplicationCluster",
      "properties": {
        "failoverDrReplicaName": {
          "description": "Optional. If the instance is a primary instance, then this field identifies the disaster recovery (DR) replica. A DR replica is an optional configuration for Enterprise Plus edition instances. If the instance is a read replica, then the field is not set. Set this field to a replica name to designate a DR replica for a primary instance. Remove the replica name to remove the DR replica designation.",
          "type": "string"
        },
        "drReplica": {
          "readOnly": true,
          "description": "Output only. Read-only field that indicates whether the replica is a DR replica. This field is not set if the instance is a primary instance.",
          "type": "boolean"
        },
        "psaWriteEndpoint": {
          "description": "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.",
          "type": "string",
          "readOnly": true
        }
      },
      "description": "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.",
      "type": "object"
    },
    "User": {
      "id": "User",
      "properties": {
        "iamStatus": {
          "enumDescriptions": [
            "The default value for users that are not of type CLOUD_IAM_GROUP. Only CLOUD_IAM_GROUP users will be inactive or active. Users with an IamStatus of IAM_STATUS_UNSPECIFIED will not display whether they are active or inactive as that is not applicable to them.",
            "INACTIVE indicates a group is not available for IAM database authentication.",
            "ACTIVE indicates a group is available for IAM database authentication."
          ],
          "type": "string",
          "description": "Indicates if a group is active or inactive for IAM database authentication.",
          "enum": [
            "IAM_STATUS_UNSPECIFIED",
            "INACTIVE",
            "ACTIVE"
          ]
        },
        "host": {
          "description": "Optional. The host from which the user can connect. For `insert` operations, host defaults to an empty string. For `update` operations, host is specified as part of the request URL. The host name cannot be updated after insertion. For a MySQL instance, it's required; for a PostgreSQL or SQL Server instance, it's optional.",
          "type": "string"
        },
        "etag": {
          "description": "This field is deprecated and will be removed from a future version of the API.",
          "type": "string"
        },
        "project": {
          "type": "string",
          "description": "The project ID of the project containing the Cloud SQL database. The Google apps domain is prefixed if applicable. Can be omitted for *update* because it is already specified on the URL."
        },
        "sqlserverUserDetails": {
          "$ref": "SqlServerUserDetails"
        },
        "instance": {
          "type": "string",
          "description": "The name of the Cloud SQL instance. This does not include the project ID. Can be omitted for *update* because it is already specified on the URL."
        },
        "type": {
          "enumDescriptions": [
            "The database's built-in user type.",
            "Cloud IAM user.",
            "Cloud IAM service account.",
            "Cloud IAM group. Not used for login.",
            "Read-only. Login for a user that belongs to the Cloud IAM group.",
            "Read-only. Login for a service account that belongs to the Cloud IAM group.",
            "Cloud IAM workforce identity user managed via workforce identity federation.",
            "Microsoft Entra ID user."
          ],
          "description": "The user type. It determines the method to authenticate the user during login. The default is the database's built-in user type.",
          "enum": [
            "BUILT_IN",
            "CLOUD_IAM_USER",
            "CLOUD_IAM_SERVICE_ACCOUNT",
            "CLOUD_IAM_GROUP",
            "CLOUD_IAM_GROUP_USER",
            "CLOUD_IAM_GROUP_SERVICE_ACCOUNT",
            "CLOUD_IAM_WORKFORCE_IDENTITY",
            "ENTRAID_USER"
          ],
          "type": "string"
        },
        "iamEmail": {
          "type": "string",
          "description": "Optional. The full email for an IAM user. For normal database users, this will not be filled. Only applicable to MySQL database users."
        },
        "dualPasswordType": {
          "type": "string",
          "description": "Dual password status for the user.",
          "enum": [
            "DUAL_PASSWORD_TYPE_UNSPECIFIED",
            "NO_MODIFY_DUAL_PASSWORD",
            "NO_DUAL_PASSWORD",
            "DUAL_PASSWORD"
          ],
          "enumDescriptions": [
            "The default value.",
            "Do not update the user's dual password status.",
            "No dual password usable for connecting using this user.",
            "Dual password usable for connecting using this user."
          ]
        },
        "name": {
          "type": "string",
          "description": "The name of the user in the Cloud SQL instance. Can be omitted for `update` because it is already specified in the URL."
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#user`."
        },
        "password": {
          "type": "string",
          "description": "The password for the user."
        },
        "passwordPolicy": {
          "description": "User level password validation policy.",
          "$ref": "UserPasswordValidationPolicy"
        },
        "databaseRoles": {
          "description": "Optional. Role memberships of the user",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "description": "A Cloud SQL user resource.",
      "type": "object"
    },
    "PoolNodeConfig": {
      "type": "object",
      "description": "Details of a single read pool node of a read pool.",
      "id": "PoolNodeConfig",
      "properties": {
        "name": {
          "type": "string",
          "description": "Output only. The name of the read pool node, to be used for retrieving metrics and logs.",
          "readOnly": true
        },
        "dnsName": {
          "readOnly": true,
          "description": "Output only. The DNS name of the read pool node.",
          "type": "string"
        },
        "state": {
          "enum": [
            "SQL_INSTANCE_STATE_UNSPECIFIED",
            "RUNNABLE",
            "SUSPENDED",
            "PENDING_DELETE",
            "PENDING_CREATE",
            "MAINTENANCE",
            "FAILED",
            "ONLINE_MAINTENANCE",
            "REPAIRING"
          ],
          "readOnly": true,
          "description": "Output only. The current state of the read pool node.",
          "type": "string",
          "enumDeprecated": [
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            true,
            false
          ],
          "enumDescriptions": [
            "The state of the instance is unknown.",
            "The instance is running, or has been stopped by owner.",
            "The instance is not available, for example due to problems with billing.",
            "The instance is being deleted.",
            "The instance is being created.",
            "The instance is down for maintenance.",
            "The creation of the instance failed or a fatal error occurred during maintenance.",
            "Deprecated",
            "(Applicable to read pool nodes only.) The read pool node needs to be repaired. The database might be unavailable."
          ]
        },
        "pscAutoConnections": {
          "description": "Output only. The list of settings for requested automatically-setup Private Service Connect (PSC) consumer endpoints that can be used to connect to this read pool node.",
          "type": "array",
          "items": {
            "$ref": "PscAutoConnectionConfig"
          },
          "readOnly": true
        },
        "dnsNames": {
          "description": "Output only. The list of DNS names used by this read pool node.",
          "type": "array",
          "items": {
            "$ref": "DnsNameMapping"
          },
          "readOnly": true
        },
        "pscServiceAttachmentLink": {
          "readOnly": true,
          "description": "Output only. The Private Service Connect (PSC) service attachment of the read pool node.",
          "type": "string"
        },
        "gceZone": {
          "type": "string",
          "description": "Output only. The zone of the read pool node.",
          "readOnly": true
        },
        "ipAddresses": {
          "items": {
            "$ref": "IpMapping"
          },
          "readOnly": true,
          "description": "Output only. Mappings containing IP addresses that can be used to connect to the read pool node.",
          "type": "array"
        }
      }
    },
    "OperationError": {
      "description": "Database instance operation error.",
      "type": "object",
      "id": "OperationError",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always `sql#operationError`."
        },
        "message": {
          "description": "Additional information about the error encountered.",
          "type": "string"
        },
        "code": {
          "type": "string",
          "description": "Identifies the specific error that occurred."
        }
      }
    },
    "ConnectPoolNodeConfig": {
      "id": "ConnectPoolNodeConfig",
      "properties": {
        "dnsNames": {
          "type": "array",
          "description": "Output only. The list of DNS names used by this read pool node.",
          "readOnly": true,
          "items": {
            "$ref": "DnsNameMapping"
          }
        },
        "ipAddresses": {
          "items": {
            "$ref": "IpMapping"
          },
          "readOnly": true,
          "description": "Output only. Mappings containing IP addresses that can be used to connect to the read pool node.",
          "type": "array"
        },
        "name": {
          "description": "Output only. The name of the read pool node. Doesn't include the project ID.",
          "type": "string",
          "readOnly": true
        },
        "dnsName": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The DNS name of the read pool node."
        }
      },
      "description": "Details of a single read pool node of a read pool.",
      "type": "object"
    },
    "CloneContext": {
      "type": "object",
      "description": "Database instance clone context.",
      "id": "CloneContext",
      "properties": {
        "allocatedIpRange": {
          "description": "The name of the allocated ip range for the private ip Cloud SQL instance. For example: \"google-managed-services-default\". If set, the cloned instance ip will be created in the allocated range. The range name must comply with [RFC 1035](https://tools.ietf.org/html/rfc1035). Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. Reserved for future use.",
          "type": "string"
        },
        "preferredSecondaryZone": {
          "type": "string",
          "description": "Optional. Copy clone and point-in-time recovery clone of a regional instance in the specified zones. If not specified, clone to the same secondary zone as the source instance. This value cannot be the same as the preferred_zone field."
        },
        "pitrTimestampMs": {
          "format": "int64",
          "type": "string",
          "description": "Reserved for future use."
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#cloneContext`."
        },
        "destinationNetwork": {
          "type": "string",
          "description": "Optional. The fully qualified URI of the VPC network to which the cloned instance will be connected via private services access for private IP. For example:`projects/my-network-project/global/networks/my-network`. This field is only required for cross-project cloning."
        },
        "databaseNames": {
          "items": {
            "type": "string"
          },
          "description": "(SQL Server only) Clone only the specified databases from the source instance. Clone all databases if empty.",
          "type": "array"
        },
        "destinationInstanceName": {
          "type": "string",
          "description": "Name of the Cloud SQL instance to be created as a clone."
        },
        "preferredZone": {
          "description": "Optional. Copy clone and point-in-time recovery clone of an instance to the specified zone. If no zone is specified, clone to the same primary zone as the source instance.",
          "type": "string"
        },
        "pointInTime": {
          "type": "string",
          "description": "Timestamp, if specified, identifies the time to which the source instance is cloned.",
          "format": "google-datetime"
        },
        "destinationProject": {
          "type": "string",
          "description": "Optional. The project ID of the destination project where the cloned instance will be created. To perform a cross-project clone, this field is required. If not specified, the clone is created in the same project as the source instance."
        },
        "binLogCoordinates": {
          "description": "Binary log coordinates, if specified, identify the position up to which the source instance is cloned. If not specified, the source instance is cloned up to the most recent binary log coordinates.",
          "$ref": "BinLogCoordinates"
        },
        "sourceInstanceDeletionTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "The timestamp used to identify the time when the source instance is deleted. If this instance is deleted, then you must set the timestamp."
        }
      }
    },
    "Message": {
      "description": "Represents a notice or warning message from the database.",
      "type": "object",
      "id": "Message",
      "properties": {
        "severity": {
          "type": "string",
          "description": "The severity of the message (e.g., \"NOTICE\" for PostgreSQL, \"WARNING\" for MySQL)."
        },
        "message": {
          "type": "string",
          "description": "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."
        }
      }
    },
    "SqlInstancesGetDiskShrinkConfigResponse": {
      "description": "Instance get disk shrink config response.",
      "type": "object",
      "id": "SqlInstancesGetDiskShrinkConfigResponse",
      "properties": {
        "minimalTargetSizeGb": {
          "type": "string",
          "description": "The minimum size to which a disk can be shrunk in GigaBytes.",
          "format": "int64"
        },
        "message": {
          "description": "Additional message to customers.",
          "type": "string"
        },
        "kind": {
          "description": "This is always `sql#getDiskShrinkConfig`.",
          "type": "string"
        }
      }
    },
    "Column": {
      "id": "Column",
      "properties": {
        "name": {
          "description": "Name of the column.",
          "type": "string"
        },
        "type": {
          "description": "Datatype of the column.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "Contains the name and datatype of a column."
    },
    "InstancesRotateServerCaRequest": {
      "type": "object",
      "description": "Rotate Server CA request.",
      "id": "InstancesRotateServerCaRequest",
      "properties": {
        "rotateServerCaContext": {
          "description": "Contains details about the rotate server CA operation.",
          "$ref": "RotateServerCaContext"
        }
      }
    },
    "DiskEncryptionConfiguration": {
      "type": "object",
      "description": "Disk encryption configuration for an instance.",
      "id": "DiskEncryptionConfiguration",
      "properties": {
        "kmsKeyName": {
          "type": "string",
          "description": "Resource name of KMS key for disk encryption"
        },
        "kind": {
          "type": "string",
          "description": "This is always `sql#diskEncryptionConfiguration`."
        }
      }
    },
    "InstancesFailoverRequest": {
      "id": "InstancesFailoverRequest",
      "properties": {
        "failoverContext": {
          "description": "Failover Context.",
          "$ref": "FailoverContext"
        }
      },
      "description": "Instance failover request.",
      "type": "object"
    },
    "FailoverContext": {
      "id": "FailoverContext",
      "properties": {
        "kind": {
          "type": "string",
          "description": "This is always `sql#failoverContext`."
        },
        "settingsVersion": {
          "format": "int64",
          "type": "string",
          "description": "The current settings version of this instance. Request will be rejected if this version doesn't match the current settings version."
        }
      },
      "description": "Database instance failover context.",
      "type": "object"
    }
  },
  "batchPath": "batch",
  "documentationLink": "https://cloud.google.com/sql/docs",
  "rootUrl": "https://sqladmin.googleapis.com/"
}
