From dd67f442c3d14de4f6bb0be398b4632639e1693d Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:25 +0000 Subject: [PATCH 01/28] fix(alloydb): update the API --- discovery/alloydb-v1.json | 3405 ++++++++++++++++++ discovery/alloydb-v1alpha.json | 3592 +++++++++++++++++++ discovery/alloydb-v1beta.json | 3571 +++++++++++++++++++ src/apis/alloydb/README.md | 37 + src/apis/alloydb/index.ts | 66 + src/apis/alloydb/package.json | 43 + src/apis/alloydb/tsconfig.json | 10 + src/apis/alloydb/v1.ts | 4982 ++++++++++++++++++++++++++ src/apis/alloydb/v1alpha.ts | 5279 ++++++++++++++++++++++++++++ src/apis/alloydb/v1beta.ts | 5259 +++++++++++++++++++++++++++ src/apis/alloydb/webpack.config.js | 79 + 11 files changed, 26323 insertions(+) create mode 100644 discovery/alloydb-v1.json create mode 100644 discovery/alloydb-v1alpha.json create mode 100644 discovery/alloydb-v1beta.json create mode 100644 src/apis/alloydb/README.md create mode 100644 src/apis/alloydb/index.ts create mode 100644 src/apis/alloydb/package.json create mode 100644 src/apis/alloydb/tsconfig.json create mode 100644 src/apis/alloydb/v1.ts create mode 100644 src/apis/alloydb/v1alpha.ts create mode 100644 src/apis/alloydb/v1beta.ts create mode 100644 src/apis/alloydb/webpack.config.js diff --git a/discovery/alloydb-v1.json b/discovery/alloydb-v1.json new file mode 100644 index 0000000000..7f7069a67a --- /dev/null +++ b/discovery/alloydb-v1.json @@ -0,0 +1,3405 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "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." + } + } + } + }, + "basePath": "", + "baseUrl": "https://alloydb.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud AlloyDB Admin", + "description": "AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases. ", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/alloydb/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "alloydb:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://alloydb.mtls.googleapis.com/", + "name": "alloydb", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "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", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "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.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "locations": { + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudLocationLocation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "alloydb.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If not set, the service selects a default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/locations", + "response": { + "$ref": "GoogleCloudLocationListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "backups": { + "methods": { + "create": { + "description": "Creates a new Backup in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/backups", + "httpMethod": "POST", + "id": "alloydb.projects.locations.backups.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "backupId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/backups", + "request": { + "$ref": "Backup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Backup.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/backups/{backupsId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.backups.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Backup. If an etag is provided and does not match the current etag of the Backup, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. Name of the resource. For the required format, see the comment on the Backup.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Backup.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/backups/{backupsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.backups.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Backup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Backups in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/backups", + "httpMethod": "GET", + "id": "alloydb.projects.locations.backups.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListBackupsRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/backups", + "response": { + "$ref": "ListBackupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Backup.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/backups/{backupsId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.backups.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if instance is not found. In that case, a new backup is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Backup resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Backup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "clusters": { + "methods": { + "create": { + "description": "Creates a new Cluster in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "clusterId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/clusters", + "request": { + "$ref": "Cluster" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "createsecondary": { + "description": "Creates a cluster of type SECONDARY in the given location using the primary cluster as the source.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters:createsecondary", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.createsecondary", + "parameterOrder": [ + "parent" + ], + "parameters": { + "clusterId": { + "description": "Required. ID of the requesting object (the secondary cluster).", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/clusters:createsecondary", + "request": { + "$ref": "Cluster" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.clusters.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "force": { + "description": "Optional. Whether to cascade delete child instances for given cluster.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the cluster to return. Returns all default fields if not set.", + "enum": [ + "CLUSTER_VIEW_UNSPECIFIED", + "CLUSTER_VIEW_BASIC", + "CLUSTER_VIEW_CONTINUOUS_BACKUP" + ], + "enumDescriptions": [ + "CLUSTER_VIEW_UNSPECIFIED Not specified, equivalent to BASIC.", + "BASIC server responses include all the relevant cluster details, excluding Cluster.ContinuousBackupInfo.EarliestRestorableTime and other view-specific fields. The default value.", + "CONTINUOUS_BACKUP response returns all the fields from BASIC plus the earliest restorable time if continuous backups are enabled. May increase latency." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Cluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Clusters in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field. Additionally, you can perform an aggregated list operation by specifying a value with the following format: * projects/{project}/locations/-", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/clusters", + "response": { + "$ref": "ListClustersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.clusters.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if cluster is not found. In that case, a new cluster is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of the cluster resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Cluster resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Cluster" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "promote": { + "description": "Promotes a SECONDARY cluster. This turns down replication from the PRIMARY cluster and promotes a secondary cluster into its own standalone cluster. Imperative only.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:promote", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.promote", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Cluster.name field", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:promote", + "request": { + "$ref": "PromoteClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "restore": { + "description": "Creates a new Cluster in a given project and location, with a volume restored from the provided source, either a backup ID or a point-in-time and a source cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters:restore", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.restore", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/clusters:restore", + "request": { + "$ref": "RestoreClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "instances": { + "methods": { + "create": { + "description": "Creates a new Instance in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "instanceId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/instances", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "createsecondary": { + "description": "Creates a new SECONDARY Instance in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances:createsecondary", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.createsecondary", + "parameterOrder": [ + "parent" + ], + "parameters": { + "instanceId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/instances:createsecondary", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Instance.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.clusters.instances.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Instance. If an etag is provided and does not match the current etag of the Instance, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "failover": { + "description": "Forces a Failover for a highly available instance. Failover promotes the HA standby instance as the new primary. Imperative only.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}:failover", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.failover", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:failover", + "request": { + "$ref": "FailoverInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Instance.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.instances.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "The view of the instance to return.", + "enum": [ + "INSTANCE_VIEW_UNSPECIFIED", + "INSTANCE_VIEW_BASIC", + "INSTANCE_VIEW_FULL" + ], + "enumDescriptions": [ + "INSTANCE_VIEW_UNSPECIFIED Not specified, equivalent to BASIC.", + "BASIC server responses for a primary or read instance include all the relevant instance details, excluding the details of each node in the instance. The default value.", + "FULL response is equivalent to BASIC for primary instance (for now). For read pool instance, this includes details of each node in the pool." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "injectFault": { + "description": "Injects fault in an instance. Imperative only.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}:injectFault", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.injectFault", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:injectFault", + "request": { + "$ref": "InjectFaultRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Instances in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.instances.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. Additionally, you can perform an aggregated list operation by specifying a value with one of the following formats: * projects/{project}/locations/-/clusters/- * projects/{project}/locations/{region}/clusters/-", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/instances", + "response": { + "$ref": "ListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Instance.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.clusters.instances.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if instance is not found. In that case, a new instance is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of the instance resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}/instances/{instance_id} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project}/locations/{region}/clusters/{cluster_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Instance resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "restart": { + "description": "Restart an Instance in a cluster. Imperative only.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}:restart", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.restart", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:restart", + "request": { + "$ref": "RestartInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "users": { + "methods": { + "create": { + "description": "Creates a new User in a given project, location, and cluster.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.users.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single User.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users/{usersId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.clusters.users.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the User.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single User.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users/{usersId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.users.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the User.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Users in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.users.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListUsersRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/users", + "response": { + "$ref": "ListUsersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single User.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users/{usersId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.clusters.users.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. Allow missing fields in the update mask.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. Name of the resource in the form of projects/{project}/locations/{location}/cluster/{cluster}/users/{user}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the User resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "alloydb.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "alloydb.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "supportedDatabaseFlags": { + "methods": { + "list": { + "description": "Lists SupportedDatabaseFlags for a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/supportedDatabaseFlags", + "httpMethod": "GET", + "id": "alloydb.projects.locations.supportedDatabaseFlags.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. The required format is: * projects/{project}/locations/{location} Regardless of the parent specified here, as long it is contains a valid project and location, the service will return a static list of supported flags resources. Note that we do not yet support region-specific flags.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/supportedDatabaseFlags", + "response": { + "$ref": "ListSupportedDatabaseFlagsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20230821", + "rootUrl": "https://alloydb.googleapis.com/", + "schemas": { + "AutomatedBackupPolicy": { + "description": "Message describing the user-specified automated backup policy. All fields in the automated backup policy are optional. Defaults for each field are provided if they are not set.", + "id": "AutomatedBackupPolicy", + "properties": { + "backupWindow": { + "description": "The length of the time window during which a backup can be taken. If a backup does not succeed within this time window, it will be canceled and considered failed. The backup window must be at least 5 minutes long. There is no upper bound on the window. If not set, it defaults to 1 hour.", + "format": "google-duration", + "type": "string" + }, + "enabled": { + "description": "Whether automated automated backups are enabled. If not set, defaults to true.", + "type": "boolean" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to backups created using this configuration.", + "type": "object" + }, + "location": { + "description": "The location where the backup will be stored. Currently, the only supported option is to store the backup in the same region as the cluster. If empty, defaults to the region of the cluster.", + "type": "string" + }, + "quantityBasedRetention": { + "$ref": "QuantityBasedRetention", + "description": "Quantity-based Backup retention policy to retain recent backups." + }, + "timeBasedRetention": { + "$ref": "TimeBasedRetention", + "description": "Time-based Backup retention policy." + }, + "weeklySchedule": { + "$ref": "WeeklySchedule", + "description": "Weekly schedule for the Backup." + } + }, + "type": "object" + }, + "Backup": { + "description": "Message describing Backup object", + "id": "Backup", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128", + "type": "object" + }, + "clusterName": { + "description": "Required. The full resource name of the backup source cluster (e.g., projects/{project}/locations/{region}/clusters/{cluster_id}).", + "type": "string" + }, + "clusterUid": { + "description": "Output only. The system-generated UID of the cluster which was used to create this resource.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "databaseVersion": { + "description": "Output only. The database engine major version of the cluster this backup was created from. Any restored cluster created from this backup will have the same database version.", + "enum": [ + "DATABASE_VERSION_UNSPECIFIED", + "POSTGRES_13", + "POSTGRES_14" + ], + "enumDeprecated": [ + false, + true, + false + ], + "enumDescriptions": [ + "This is an unknown database version.", + "DEPRECATED - The database version is Postgres 13.", + "The database version is Postgres 14." + ], + "readOnly": true, + "type": "string" + }, + "deleteTime": { + "description": "Output only. Delete time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "User-provided description of the backup.", + "type": "string" + }, + "displayName": { + "description": "User-settable and human-readable display name for the Backup.", + "type": "string" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config can be specified to encrypt the backup with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data." + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Output only. The encryption information for the backup.", + "readOnly": true + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "expiryQuantity": { + "$ref": "QuantityBasedExpiry", + "description": "Output only. The QuantityBasedExpiry of the backup, specified by the backup's retention policy. Once the expiry quantity is over retention, the backup is eligible to be garbage collected.", + "readOnly": true + }, + "expiryTime": { + "description": "Output only. The time at which after the backup is eligible to be garbage collected. It is the duration specified by the backup's retention policy, added to the backup's create_time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels as key value pairs", + "type": "object" + }, + "name": { + "description": "Output only. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "readOnly": true, + "type": "string" + }, + "reconciling": { + "description": "Output only. Reconciling (https://google.aip.dev/128#reconciliation), if true, indicates that the service is actively updating the resource. This can happen due to user-triggered updates or system actions like failover or maintenance.", + "readOnly": true, + "type": "boolean" + }, + "sizeBytes": { + "description": "Output only. The size of the backup in bytes.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The current state of the backup.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "CREATING", + "FAILED", + "DELETING" + ], + "enumDescriptions": [ + "The state of the backup is unknown.", + "The backup is ready.", + "The backup is creating.", + "The backup failed.", + "The backup is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "type": { + "description": "The backup type, which suggests the trigger for the backup.", + "enum": [ + "TYPE_UNSPECIFIED", + "ON_DEMAND", + "AUTOMATED", + "CONTINUOUS" + ], + "enumDescriptions": [ + "Backup Type is unknown.", + "ON_DEMAND backups that were triggered by the customer (e.g., not AUTOMATED).", + "AUTOMATED backups triggered by the automated backups scheduler pursuant to an automated backup policy.", + "CONTINUOUS backups triggered by the automated backups scheduler due to a continuous backup policy." + ], + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BackupSource": { + "description": "Message describing a BackupSource.", + "id": "BackupSource", + "properties": { + "backupName": { + "description": "Required. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id}", + "type": "string" + }, + "backupUid": { + "description": "Output only. The system-generated UID of the backup which was used to create this resource. The UID is generated when the backup is created, and it is retained until the backup is deleted.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "ClientConnectionConfig": { + "description": "Client connection configuration", + "id": "ClientConnectionConfig", + "properties": { + "requireConnectors": { + "description": "Optional. Configuration to enforce connectors only (ex: AuthProxy) connections to the database.", + "type": "boolean" + }, + "sslConfig": { + "$ref": "SslConfig", + "description": "Optional. SSL config option for this instance." + } + }, + "type": "object" + }, + "CloudControl2SharedOperationsReconciliationOperationMetadata": { + "description": "Operation metadata returned by the CLH during resource state reconciliation.", + "id": "CloudControl2SharedOperationsReconciliationOperationMetadata", + "properties": { + "deleteResource": { + "deprecated": true, + "description": "DEPRECATED. Use exclusive_action instead.", + "type": "boolean" + }, + "exclusiveAction": { + "description": "Excluisive action returned by the CLH.", + "enum": [ + "UNKNOWN_REPAIR_ACTION", + "DELETE", + "RETRY" + ], + "enumDeprecated": [ + false, + true, + false + ], + "enumDescriptions": [ + "Unknown repair action.", + "The resource has to be deleted. When using this bit, the CLH should fail the operation. DEPRECATED. Instead use DELETE_RESOURCE OperationSignal in SideChannel.", + "This resource could not be repaired but the repair should be tried again at a later time. This can happen if there is a dependency that needs to be resolved first- e.g. if a parent resource must be repaired before a child resource." + ], + "type": "string" + } + }, + "type": "object" + }, + "Cluster": { + "description": "A cluster is a collection of regional AlloyDB resources. It can include a primary instance and one or more read pool instances. All cluster resources share a storage layer, which scales as needed.", + "id": "Cluster", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128", + "type": "object" + }, + "automatedBackupPolicy": { + "$ref": "AutomatedBackupPolicy", + "description": "The automated backup policy for this cluster. If no policy is provided then the default policy will be used. If backups are supported for the cluster, the default policy takes one backup a day, has a backup window of 1 hour, and retains backups for 14 days. For more information on the defaults, consult the documentation for the message type." + }, + "backupSource": { + "$ref": "BackupSource", + "description": "Output only. Cluster created from backup.", + "readOnly": true + }, + "clusterType": { + "description": "Output only. The type of the cluster. This is an output-only field and it's populated at the Cluster creation time or the Cluster promotion time. The cluster type is determined by which RPC was used to create the cluster (i.e. `CreateCluster` vs. `CreateSecondaryCluster`", + "enum": [ + "CLUSTER_TYPE_UNSPECIFIED", + "PRIMARY", + "SECONDARY" + ], + "enumDescriptions": [ + "The type of the cluster is unknown.", + "Primary cluster that support read and write operations.", + "Secondary cluster that is replicating from another region. This only supports read." + ], + "readOnly": true, + "type": "string" + }, + "continuousBackupConfig": { + "$ref": "ContinuousBackupConfig", + "description": "Optional. Continuous backup configuration for this cluster." + }, + "continuousBackupInfo": { + "$ref": "ContinuousBackupInfo", + "description": "Output only. Continuous backup properties for this cluster.", + "readOnly": true + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "databaseVersion": { + "description": "Optional. The database engine major version. This is an optional field and it is populated at the Cluster creation time. If a database version is not supplied at cluster creation time, then a default database version will be used.", + "enum": [ + "DATABASE_VERSION_UNSPECIFIED", + "POSTGRES_13", + "POSTGRES_14" + ], + "enumDeprecated": [ + false, + true, + false + ], + "enumDescriptions": [ + "This is an unknown database version.", + "DEPRECATED - The database version is Postgres 13.", + "The database version is Postgres 14." + ], + "type": "string" + }, + "deleteTime": { + "description": "Output only. Delete time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "User-settable and human-readable display name for the Cluster.", + "type": "string" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config can be specified to encrypt the data disks and other persistent data resources of a cluster with a customer-managed encryption key (CMEK). When this field is not specified, the cluster will then use default encryption scheme to protect the user data." + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Output only. The encryption information for the cluster.", + "readOnly": true + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "initialUser": { + "$ref": "UserPassword", + "description": "Input only. Initial user to setup during cluster creation. Required. If used in `RestoreCluster` this is ignored." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels as key value pairs", + "type": "object" + }, + "migrationSource": { + "$ref": "MigrationSource", + "description": "Output only. Cluster created via DMS migration.", + "readOnly": true + }, + "name": { + "description": "Output only. The name of the cluster resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "readOnly": true, + "type": "string" + }, + "network": { + "deprecated": true, + "description": "Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: \"projects/{project}/global/networks/{network_id}\". This is required to create a cluster. It can be updated, but it cannot be removed. Deprecated, use network_config.network instead.", + "type": "string" + }, + "networkConfig": { + "$ref": "NetworkConfig" + }, + "primaryConfig": { + "$ref": "PrimaryConfig", + "description": "Output only. Cross Region replication config specific to PRIMARY cluster.", + "readOnly": true + }, + "reconciling": { + "description": "Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Cluster does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance.", + "readOnly": true, + "type": "boolean" + }, + "secondaryConfig": { + "$ref": "SecondaryConfig", + "description": "Cross Region replication config specific to SECONDARY cluster." + }, + "sslConfig": { + "$ref": "SslConfig", + "deprecated": true, + "description": "SSL configuration for this AlloyDB cluster." + }, + "state": { + "description": "Output only. The current serving state of the cluster.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "STOPPED", + "EMPTY", + "CREATING", + "DELETING", + "FAILED", + "BOOTSTRAPPING", + "MAINTENANCE", + "PROMOTING" + ], + "enumDescriptions": [ + "The state of the cluster is unknown.", + "The cluster is active and running.", + "The cluster is stopped. All instances in the cluster are stopped. Customers can start a stopped cluster at any point and all their instances will come back to life with same names and IP resources. In this state, customer pays for storage. Associated backups could also be present in a stopped cluster.", + "The cluster is empty and has no associated resources. All instances, associated storage and backups have been deleted.", + "The cluster is being created.", + "The cluster is being deleted.", + "The creation of the cluster failed.", + "The cluster is bootstrapping with data from some other source. Direct mutations to the cluster (e.g. adding read pool) are not allowed.", + "The cluster is under maintenance. AlloyDB regularly performs maintenance and upgrades on customer clusters. Updates on the cluster are not allowed while the cluster is in this state.", + "The cluster is being promoted." + ], + "readOnly": true, + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ContinuousBackupConfig": { + "description": "ContinuousBackupConfig describes the continuous backups recovery configurations of a cluster.", + "id": "ContinuousBackupConfig", + "properties": { + "enabled": { + "description": "Whether ContinuousBackup is enabled.", + "type": "boolean" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data." + }, + "recoveryWindowDays": { + "description": "The number of days that are eligible to restore from using PITR. To support the entire recovery window, backups and logs are retained for one day more than the recovery window. If not set, defaults to 14 days.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ContinuousBackupInfo": { + "description": "ContinuousBackupInfo describes the continuous backup properties of a cluster.", + "id": "ContinuousBackupInfo", + "properties": { + "earliestRestorableTime": { + "description": "Output only. The earliest restorable time that can be restored to. Output only field.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "enabledTime": { + "description": "Output only. When ContinuousBackup was most recently enabled. Set to null if ContinuousBackup is not enabled.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Output only. The encryption information for the WALs and backups required for ContinuousBackup.", + "readOnly": true + }, + "schedule": { + "description": "Output only. Days of the week on which a continuous backup is taken. Output only field. Ignored if passed into the request.", + "items": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The day of the week is unspecified.", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "ContinuousBackupSource": { + "description": "Message describing a ContinuousBackupSource.", + "id": "ContinuousBackupSource", + "properties": { + "cluster": { + "description": "Required. The source cluster from which to restore. This cluster must have continuous backup enabled for this operation to succeed. For the required format, see the comment on the Cluster.name field.", + "type": "string" + }, + "pointInTime": { + "description": "Required. The point in time to restore to.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Empty": { + "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); }", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "EncryptionConfig": { + "description": "EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key).", + "id": "EncryptionConfig", + "properties": { + "kmsKeyName": { + "description": "The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]", + "type": "string" + } + }, + "type": "object" + }, + "EncryptionInfo": { + "description": "EncryptionInfo describes the encryption information of a cluster or a backup.", + "id": "EncryptionInfo", + "properties": { + "encryptionType": { + "description": "Output only. Type of encryption.", + "enum": [ + "TYPE_UNSPECIFIED", + "GOOGLE_DEFAULT_ENCRYPTION", + "CUSTOMER_MANAGED_ENCRYPTION" + ], + "enumDescriptions": [ + "Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.", + "The data is encrypted at rest with a key that is fully managed by Google. No key version will be populated. This is the default state.", + "The data is encrypted at rest with a key that is managed by the customer. KMS key versions will be populated." + ], + "readOnly": true, + "type": "string" + }, + "kmsKeyVersions": { + "description": "Output only. Cloud KMS key versions that are being used to protect the database or the backup.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "FailoverInstanceRequest": { + "description": "Message for triggering failover on an Instance", + "id": "FailoverInstanceRequest", + "properties": { + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the failover.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudLocationListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "GoogleCloudLocationListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "GoogleCloudLocationLocation" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudLocationLocation": { + "description": "A resource that represents a Google Cloud location.", + "id": "GoogleCloudLocationLocation", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeTimeOfDay": { + "description": "Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.", + "id": "GoogleTypeTimeOfDay", + "properties": { + "hours": { + "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InjectFaultRequest": { + "description": "Message for triggering fault injection on an instance", + "id": "InjectFaultRequest", + "properties": { + "faultType": { + "description": "Required. The type of fault to be injected in an instance.", + "enum": [ + "FAULT_TYPE_UNSPECIFIED", + "STOP_VM" + ], + "enumDescriptions": [ + "The fault type is unknown.", + "Stop the VM" + ], + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the fault injection.", + "type": "boolean" + } + }, + "type": "object" + }, + "Instance": { + "description": "An Instance is a computing unit that an end customer can connect to. It's the main unit of computing resources in AlloyDB.", + "id": "Instance", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128", + "type": "object" + }, + "availabilityType": { + "description": "Availability type of an Instance. If empty, defaults to REGIONAL for primary instances. For read pools, availability_type is always UNSPECIFIED. Instances in the read pools are evenly distributed across available zones within the region (i.e. read pools with more than one node will have a node in at least two zones).", + "enum": [ + "AVAILABILITY_TYPE_UNSPECIFIED", + "ZONAL", + "REGIONAL" + ], + "enumDescriptions": [ + "This is an unknown Availability type.", + "Zonal available instance.", + "Regional (or Highly) available instance." + ], + "type": "string" + }, + "clientConnectionConfig": { + "$ref": "ClientConnectionConfig", + "description": "Optional. Client connection specific configurations" + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "databaseFlags": { + "additionalProperties": { + "type": "string" + }, + "description": "Database flags. Set at instance level. * They are copied from primary instance on read instance creation. * Read instances can set new or override existing flags that are relevant for reads, e.g. for enabling columnar cache on a read instance. Flags set on read instance may or may not be present on primary. This is a list of \"key\": \"value\" pairs. \"key\": The name of the flag. These flags are passed at instance setup time, so include both server options and system variables for Postgres. Flags are specified with underscores, not hyphens. \"value\": The value of the flag. Booleans 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" + }, + "deleteTime": { + "description": "Output only. Delete time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "User-settable and human-readable display name for the Instance.", + "type": "string" + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "gceZone": { + "description": "The Compute Engine zone that the instance should serve from, per https://cloud.google.com/compute/docs/regions-zones This can ONLY be specified for ZONAL instances. If present for a REGIONAL instance, an error will be thrown. If this is absent for a ZONAL instance, instance is created in a random zone with available capacity.", + "type": "string" + }, + "instanceType": { + "description": "Required. The type of the instance. Specified at creation time.", + "enum": [ + "INSTANCE_TYPE_UNSPECIFIED", + "PRIMARY", + "READ_POOL", + "SECONDARY" + ], + "enumDescriptions": [ + "The type of the instance is unknown.", + "PRIMARY instances support read and write operations.", + "READ POOL instances support read operations only. Each read pool instance consists of one or more homogeneous nodes. * Read pool of size 1 can only have zonal availability. * Read pools with node count of 2 or more can have regional availability (nodes are present in 2 or more zones in a region).", + "SECONDARY instances support read operations only. SECONDARY instance is a cross-region read replica" + ], + "type": "string" + }, + "ipAddress": { + "description": "Output only. The IP address for the Instance. This is the connection endpoint for an end-user application.", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels as key value pairs", + "type": "object" + }, + "machineConfig": { + "$ref": "MachineConfig", + "description": "Configurations for the machines that host the underlying database engine." + }, + "name": { + "description": "Output only. The name of the instance resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}/instances/{instance_id} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project}/locations/{region}/clusters/{cluster_id}", + "readOnly": true, + "type": "string" + }, + "nodes": { + "description": "Output only. List of available read-only VMs in this instance, including the standby for a PRIMARY instance.", + "items": { + "$ref": "Node" + }, + "readOnly": true, + "type": "array" + }, + "queryInsightsConfig": { + "$ref": "QueryInsightsInstanceConfig", + "description": "Configuration for query insights." + }, + "readPoolConfig": { + "$ref": "ReadPoolConfig", + "description": "Read pool specific config." + }, + "reconciling": { + "description": "Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Instance does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance.", + "readOnly": true, + "type": "boolean" + }, + "state": { + "description": "Output only. The current serving state of the instance.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "STOPPED", + "CREATING", + "DELETING", + "MAINTENANCE", + "FAILED", + "BOOTSTRAPPING", + "PROMOTING" + ], + "enumDescriptions": [ + "The state of the instance is unknown.", + "The instance is active and running.", + "The instance is stopped. Instance name and IP resources are preserved.", + "The instance is being created.", + "The instance is being deleted.", + "The instance is down for maintenance.", + "The creation of the instance failed or a fatal error occurred during an operation on the instance. Note: Instances in this state would tried to be auto-repaired. And Customers should be able to restart, update or delete these instances.", + "Index 7 is used in the producer apis for ROLLED_BACK state. Keeping that index unused in case that state also needs to exposed via consumer apis in future. The instance has been configured to sync data from some other source.", + "The instance is being promoted." + ], + "readOnly": true, + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "writableNode": { + "$ref": "Node", + "description": "Output only. This is set for the read-write VM of the PRIMARY instance only.", + "readOnly": true + } + }, + "type": "object" + }, + "IntegerRestrictions": { + "description": "Restrictions on INTEGER type values.", + "id": "IntegerRestrictions", + "properties": { + "maxValue": { + "description": "The maximum value that can be specified, if applicable.", + "format": "int64", + "type": "string" + }, + "minValue": { + "description": "The minimum value that can be specified, if applicable.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ListBackupsResponse": { + "description": "Message for response to listing Backups", + "id": "ListBackupsResponse", + "properties": { + "backups": { + "description": "The list of Backup", + "items": { + "$ref": "Backup" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListClustersResponse": { + "description": "Message for response to listing Clusters", + "id": "ListClustersResponse", + "properties": { + "clusters": { + "description": "The list of Cluster", + "items": { + "$ref": "Cluster" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListInstancesResponse": { + "description": "Message for response to listing Instances", + "id": "ListInstancesResponse", + "properties": { + "instances": { + "description": "The list of Instance", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListSupportedDatabaseFlagsResponse": { + "description": "Message for response to listing SupportedDatabaseFlags.", + "id": "ListSupportedDatabaseFlagsResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "supportedDatabaseFlags": { + "description": "The list of SupportedDatabaseFlags.", + "items": { + "$ref": "SupportedDatabaseFlag" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUsersResponse": { + "description": "Message for response to listing Users", + "id": "ListUsersResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + }, + "users": { + "description": "The list of User", + "items": { + "$ref": "User" + }, + "type": "array" + } + }, + "type": "object" + }, + "MachineConfig": { + "description": "MachineConfig describes the configuration of a machine.", + "id": "MachineConfig", + "properties": { + "cpuCount": { + "description": "The number of CPU's in the VM instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "MigrationSource": { + "description": "Subset of the source instance configuration that is available when reading the cluster resource.", + "id": "MigrationSource", + "properties": { + "hostPort": { + "description": "Output only. The host and port of the on-premises instance in host:port format", + "readOnly": true, + "type": "string" + }, + "referenceId": { + "description": "Output only. Place holder for the external source identifier(e.g DMS job name) that created the cluster.", + "readOnly": true, + "type": "string" + }, + "sourceType": { + "description": "Output only. Type of migration source.", + "enum": [ + "MIGRATION_SOURCE_TYPE_UNSPECIFIED", + "DMS" + ], + "enumDescriptions": [ + "Migration source is unknown.", + "DMS source means the cluster was created via DMS migration job." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfig": { + "description": "Metadata related to network configuration.", + "id": "NetworkConfig", + "properties": { + "allocatedIpRange": { + "description": "Optional. Name of the allocated IP range for the private IP AlloyDB cluster, for example: \"google-managed-services-default\". If set, the instance IPs for this cluster will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. Field name is intended to be consistent with CloudSQL.", + "type": "string" + }, + "network": { + "description": "Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: \"projects/{project_number}/global/networks/{network_id}\". This is required to create a cluster. It can be updated, but it cannot be removed.", + "type": "string" + } + }, + "type": "object" + }, + "Node": { + "description": "Details of a single node in the instance. Nodes in an AlloyDB instance are ephemereal, they can change during update, failover, autohealing and resize operations.", + "id": "Node", + "properties": { + "id": { + "description": "The identifier of the VM e.g. \"test-read-0601-407e52be-ms3l\".", + "type": "string" + }, + "ip": { + "description": "The private IP address of the VM e.g. \"10.57.0.34\".", + "type": "string" + }, + "state": { + "description": "Determined by state of the compute VM and postgres-service health. Compute VM state can have values listed in https://cloud.google.com/compute/docs/instances/instance-life-cycle and postgres-service health can have values: HEALTHY and UNHEALTHY.", + "type": "string" + }, + "zoneId": { + "description": "The Compute Engine zone of the VM e.g. \"us-central1-b\".", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "OperationMetadata", + "properties": { + "apiVersion": { + "description": "Output only. API version used to start the operation.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "requestedCancellation": { + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "readOnly": true, + "type": "boolean" + }, + "statusMessage": { + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, + "type": "string" + }, + "verb": { + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "PrimaryConfig": { + "description": "Configuration for the primary cluster. It has the list of clusters that are replicating from this cluster. This should be set if and only if the cluster is of type PRIMARY.", + "id": "PrimaryConfig", + "properties": { + "secondaryClusterNames": { + "description": "Output only. Names of the clusters that are replicating from this cluster.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "PromoteClusterRequest": { + "description": "Message for promoting a Cluster", + "id": "PromoteClusterRequest", + "properties": { + "etag": { + "description": "Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned.", + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete.", + "type": "boolean" + } + }, + "type": "object" + }, + "QuantityBasedExpiry": { + "description": "A backup's position in a quantity-based retention queue, of backups with the same source cluster and type, with length, retention, specified by the backup's retention policy. Once the position is greater than the retention, the backup is eligible to be garbage collected. Example: 5 backups from the same source cluster and type with a quantity-based retention of 3 and denoted by backup_id (position, retention). Safe: backup_5 (1, 3), backup_4, (2, 3), backup_3 (3, 3). Awaiting garbage collection: backup_2 (4, 3), backup_1 (5, 3)", + "id": "QuantityBasedExpiry", + "properties": { + "retentionCount": { + "description": "Output only. The backup's position among its backups with the same source cluster and type, by descending chronological order create time(i.e. newest first).", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "totalRetentionCount": { + "description": "Output only. The length of the quantity-based queue, specified by the backup's retention policy.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "QuantityBasedRetention": { + "description": "A quantity based policy specifies that a certain number of the most recent successful backups should be retained.", + "id": "QuantityBasedRetention", + "properties": { + "count": { + "description": "The number of backups to retain.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "QueryInsightsInstanceConfig": { + "description": "QueryInsights Instance specific configuration.", + "id": "QueryInsightsInstanceConfig", + "properties": { + "queryPlansPerMinute": { + "description": "Number of query execution plans captured by Insights per minute for all queries combined. The default value is 5. Any integer between 0 and 20 is considered valid.", + "format": "uint32", + "type": "integer" + }, + "queryStringLength": { + "description": "Query string length. The default value is 1024. Any integer between 256 and 4500 is considered valid.", + "format": "uint32", + "type": "integer" + }, + "recordApplicationTags": { + "description": "Record application tags for an instance. This flag is turned \"on\" by default.", + "type": "boolean" + }, + "recordClientAddress": { + "description": "Record client address for an instance. Client address is PII information. This flag is turned \"on\" by default.", + "type": "boolean" + } + }, + "type": "object" + }, + "ReadPoolConfig": { + "description": "Configuration for a read pool instance.", + "id": "ReadPoolConfig", + "properties": { + "nodeCount": { + "description": "Read capacity, i.e. number of nodes in a read pool instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RestartInstanceRequest": { + "id": "RestartInstanceRequest", + "properties": { + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the restart.", + "type": "boolean" + } + }, + "type": "object" + }, + "RestoreClusterRequest": { + "description": "Message for restoring a Cluster from a backup or another cluster at a given point in time.", + "id": "RestoreClusterRequest", + "properties": { + "backupSource": { + "$ref": "BackupSource", + "description": "Backup source." + }, + "cluster": { + "$ref": "Cluster", + "description": "Required. The resource being created" + }, + "clusterId": { + "description": "Required. ID of the requesting object.", + "type": "string" + }, + "continuousBackupSource": { + "$ref": "ContinuousBackupSource", + "description": "ContinuousBackup source. Continuous backup needs to be enabled in the source cluster for this operation to succeed." + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the import request.", + "type": "boolean" + } + }, + "type": "object" + }, + "SecondaryConfig": { + "description": "Configuration information for the secondary cluster. This should be set if and only if the cluster is of type SECONDARY.", + "id": "SecondaryConfig", + "properties": { + "primaryClusterName": { + "description": "The name of the primary cluster name with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}", + "type": "string" + } + }, + "type": "object" + }, + "SslConfig": { + "description": "SSL configuration.", + "id": "SslConfig", + "properties": { + "caSource": { + "description": "Optional. Certificate Authority (CA) source. Only CA_SOURCE_MANAGED is supported currently, and is the default value.", + "enum": [ + "CA_SOURCE_UNSPECIFIED", + "CA_SOURCE_MANAGED" + ], + "enumDescriptions": [ + "Certificate Authority (CA) source not specified. Defaults to CA_SOURCE_MANAGED.", + "Certificate Authority (CA) managed by the AlloyDB Cluster." + ], + "type": "string" + }, + "sslMode": { + "description": "Optional. SSL mode. Specifies client-server SSL/TLS connection behavior.", + "enum": [ + "SSL_MODE_UNSPECIFIED", + "SSL_MODE_ALLOW", + "SSL_MODE_REQUIRE", + "SSL_MODE_VERIFY_CA", + "ALLOW_UNENCRYPTED_AND_ENCRYPTED", + "ENCRYPTED_ONLY" + ], + "enumDeprecated": [ + false, + true, + true, + true, + false, + false + ], + "enumDescriptions": [ + "SSL mode not specified. Defaults to ENCRYPTED_ONLY.", + "SSL connections are optional. CA verification not enforced.", + "SSL connections are required. CA verification not enforced. Clients may use locally self-signed certificates (default psql client behavior).", + "SSL connections are required. CA verification enforced. Clients must have certificates signed by a Cluster CA, e.g. via GenerateClientCertificate.", + "SSL connections are optional. CA verification not enforced.", + "SSL connections are required. CA verification not enforced." + ], + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "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": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "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" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration": { + "description": "Configuration for availability of database instance", + "id": "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration", + "properties": { + "availabilityType": { + "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).", + "enum": [ + "AVAILABILITY_TYPE_UNSPECIFIED", + "ZONAL", + "REGIONAL", + "MULTI_REGIONAL", + "AVAILABILITY_TYPE_OTHER" + ], + "enumDescriptions": [ + "", + "Zonal available instance.", + "Regional available instance.", + "Multi regional instance", + "For rest of the other category" + ], + "type": "string" + }, + "externalReplicaConfigured": { + "type": "boolean" + }, + "promotableReplicaConfigured": { + "type": "boolean" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainBackupConfiguration": { + "description": "Configuration for automatic backups", + "id": "StorageDatabasecenterPartnerapiV1mainBackupConfiguration", + "properties": { + "automatedBackupEnabled": { + "description": "Whether customer visible automated backups are enabled on the instance.", + "type": "boolean" + }, + "backupRetentionSettings": { + "$ref": "StorageDatabasecenterPartnerapiV1mainRetentionSettings", + "description": "Backup retention settings." + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainBackupRun": { + "description": "A backup run.", + "id": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "properties": { + "endTime": { + "description": "The time the backup operation completed. REQUIRED", + "format": "google-datetime", + "type": "string" + }, + "error": { + "$ref": "StorageDatabasecenterPartnerapiV1mainOperationError", + "description": "Information about why the backup operation failed. This is only present if the run has the FAILED status. OPTIONAL" + }, + "startTime": { + "description": "The time the backup operation started. REQUIRED", + "format": "google-datetime", + "type": "string" + }, + "status": { + "description": "The status of this run. REQUIRED", + "enum": [ + "STATUS_UNSPECIFIED", + "SUCCESSFUL", + "FAILED" + ], + "enumDescriptions": [ + "", + "The backup was successful.", + "The backup was unsuccessful." + ], + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainDatabaseResourceFeed": { + "description": "DatabaseResourceFeed is the top level proto to be used to ingest different database resource level events into Condor platform.", + "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceFeed", + "properties": { + "feedTimestamp": { + "description": "Required. Timestamp when feed is generated.", + "format": "google-datetime", + "type": "string" + }, + "feedType": { + "description": "Required. Type feed to be ingested into condor", + "enum": [ + "FEEDTYPE_UNSPECIFIED", + "RESOURCE_METADATA", + "OBSERVABILITY_DATA", + "COMPLIANCE_DATA" + ], + "enumDescriptions": [ + "", + "Database resource metadata feed from control plane", + "Database resource monitoring data", + "Database resource compliance feed" + ], + "type": "string" + }, + "resourceId": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "description": "Required. Primary key associated with the Resource" + }, + "resourceMetadata": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", + "description": "More feed data would be added in subsequent CLs" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId": { + "description": "DatabaseResourceId will serve as primary key for any resource ingestion event.", + "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "properties": { + "provider": { + "description": "Required. Cloud provider name. Ex: GCP/AWS/Azure/OnPrem/SelfManaged", + "enum": [ + "PROVIDER_UNSPECIFIED", + "GCP", + "AWS", + "AZURE", + "ONPREM", + "SELFMANAGED", + "PROVIDER_OTHER" + ], + "enumDescriptions": [ + "", + "Google cloud platform provider", + "Amazon web service", + "Azure web service", + "On-prem database provider", + "Self-managed database provider", + "For rest of the other category" + ], + "type": "string" + }, + "resourceType": { + "description": "Required. The type of resource this ID is identifying. Ex google.sqladmin.Instance, google.alloydb.cluster, google.sqladmin.Backup REQUIRED", + "type": "string" + }, + "uniqueId": { + "description": "Required. A service-local token that distinguishes this resource from other resources within the same service.", + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata": { + "description": "Common model for database resource instance metadata.", + "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", + "properties": { + "availabilityConfiguration": { + "$ref": "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration", + "description": "Availability configuration for this instance" + }, + "backupConfiguration": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupConfiguration", + "description": "Backup configuration for this instance" + }, + "backupRun": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "description": "Latest backup run information for this instance" + }, + "creationTime": { + "description": "The creation time of the resource, i.e. the time when resource is created and recorded in partner service.", + "format": "google-datetime", + "type": "string" + }, + "currentState": { + "description": "Current state of the instance.", + "enum": [ + "STATE_UNSPECIFIED", + "HEALTHY", + "UNHEALTHY", + "STATE_OTHER" + ], + "enumDescriptions": [ + "", + "The instance is running.", + "Instance being created, updated, deleted or under maintenance", + "For rest of the other category" + ], + "type": "string" + }, + "expectedState": { + "description": "The actual instance state.", + "enum": [ + "STATE_UNSPECIFIED", + "HEALTHY", + "UNHEALTHY", + "STATE_OTHER" + ], + "enumDescriptions": [ + "", + "The instance is running.", + "Instance being created, updated, deleted or under maintenance", + "For rest of the other category" + ], + "type": "string" + }, + "id": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "description": "Required. Unique identifier for a Database resource" + }, + "instanceType": { + "description": "The type of the instance. Specified at creation time.", + "enum": [ + "INSTANCE_TYPE_UNSPECIFIED", + "PRIMARY", + "READ_REPLICA", + "OTHER" + ], + "enumDescriptions": [ + "", + "A regular primary database instance.", + "An instance acting as a read-replica.", + "For rest of the other categories." + ], + "type": "string" + }, + "location": { + "description": "The resource location. REQUIRED", + "type": "string" + }, + "primaryResourceId": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "description": "Unique identifier for this resource's immediate parent resource. This parent resource id would be used to build resource hierarchy in condor platform." + }, + "product": { + "$ref": "StorageDatabasecenterProtoCommonProduct", + "description": "The product this resource represents." + }, + "resourceContainer": { + "description": "Closest parent Cloud Resource Manager container of this resource. It must either be resource name of a Cloud Resource Manager project, for ex: \"projects/123\".", + "type": "string" + }, + "resourceName": { + "description": "Required. Different from unique_id, a resource name can be reused over time. That is after a resource named \"ABC\" is deleted, the name \"ABC\" can be used to to create a new resource within the same source.", + "type": "string" + }, + "updationTime": { + "description": "The time at which the resource was updated and recorded at partner service.", + "format": "google-datetime", + "type": "string" + }, + "userLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "User-provided labels, represented as a dictionary where each label is a single key value pair.", + "type": "object" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainOperationError": { + "description": "An error that occurred during a backup creation operation.", + "id": "StorageDatabasecenterPartnerapiV1mainOperationError", + "properties": { + "code": { + "description": "Identifies the specific error that occurred. REQUIRED", + "type": "string" + }, + "message": { + "description": "Additional information about the error encountered. REQUIRED", + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainRetentionSettings": { + "id": "StorageDatabasecenterPartnerapiV1mainRetentionSettings", + "properties": { + "quantityBasedRetention": { + "format": "int32", + "type": "integer" + }, + "retentionUnit": { + "description": "The unit that 'retained_backups' represents.", + "enum": [ + "RETENTION_UNIT_UNSPECIFIED", + "COUNT", + "TIME", + "RETENTION_UNIT_OTHER" + ], + "enumDescriptions": [ + "Backup retention unit is unspecified, will be treated as COUNT.", + "Retention will be by count, eg. \"retain the most recent 7 backups\".", + "Retention will be by Time, eg. \"retain the last 7 days backups\".", + "For rest of the other category" + ], + "type": "string" + }, + "timeBasedRetention": { + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterProtoCommonProduct": { + "description": "Product specification for Condor resources.", + "id": "StorageDatabasecenterProtoCommonProduct", + "properties": { + "engine": { + "description": "The specific engine that the underlying database is running.", + "enum": [ + "ENGINE_UNSPECIFIED", + "MYSQL", + "POSTGRES", + "SQL_SERVER", + "NATIVE", + "SPANGRES", + "ENGINE_OTHER" + ], + "enumDescriptions": [ + "UNSPECIFIED means engine type is not known or available.", + "MySQL binary running as engine in database instance.", + "Postgres binary running as engine in database instance.", + "SQLServer binary running as engine in database instance.", + "Native database binary running as engine in instance.", + "Cloud Spanner with Postgres dialect.", + "Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum." + ], + "type": "string" + }, + "type": { + "description": "Type of specific database product. It could be CloudSQL, AlloyDB etc..", + "enum": [ + "PRODUCT_TYPE_UNSPECIFIED", + "CLOUD_SQL", + "ALLOYDB", + "SPANNER", + "ON_PREM", + "PRODUCT_TYPE_OTHER" + ], + "enumDescriptions": [ + "UNSPECIFIED means product type is not known or available.", + "Cloud SQL product area in GCP", + "AlloyDB product area in GCP", + "Spanner product area in GCP", + "On premises database product.", + "Other refers to rest of other product type. This is to be when product type is known, but it is not present in this enum." + ], + "type": "string" + }, + "version": { + "description": "Version of the underlying database engine. Example values: For MySQL, it could be \"8.0\", \"5.7\" etc.. For Postgres, it could be \"14\", \"15\" etc..", + "type": "string" + } + }, + "type": "object" + }, + "StringRestrictions": { + "description": "Restrictions on STRING type values", + "id": "StringRestrictions", + "properties": { + "allowedValues": { + "description": "The list of allowed values, if bounded. This field will be empty if there is a unbounded number of allowed values.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SupportedDatabaseFlag": { + "description": "SupportedDatabaseFlag gives general information about a database flag, like type and allowed values. This is a static value that is defined on the server side, and it cannot be modified by callers. To set the Database flags on a particular Instance, a caller should modify the Instance.database_flags field.", + "id": "SupportedDatabaseFlag", + "properties": { + "acceptsMultipleValues": { + "description": "Whether the database flag accepts multiple values. If true, a comma-separated list of stringified values may be specified.", + "type": "boolean" + }, + "flagName": { + "description": "The name of the database flag, e.g. \"max_allowed_packets\". The is a possibly key for the Instance.database_flags map field.", + "type": "string" + }, + "integerRestrictions": { + "$ref": "IntegerRestrictions", + "description": "Restriction on INTEGER type value." + }, + "name": { + "description": "The name of the flag resource, following Google Cloud conventions, e.g.: * projects/{project}/locations/{location}/flags/{flag} This field currently has no semantic meaning.", + "type": "string" + }, + "requiresDbRestart": { + "description": "Whether setting or updating this flag on an Instance requires a database restart. If a flag that requires database restart is set, the backend will automatically restart the database (making sure to satisfy any availability SLO's).", + "type": "boolean" + }, + "stringRestrictions": { + "$ref": "StringRestrictions", + "description": "Restriction on STRING type value." + }, + "supportedDbVersions": { + "description": "Major database engine versions for which this flag is supported.", + "items": { + "enum": [ + "DATABASE_VERSION_UNSPECIFIED", + "POSTGRES_13", + "POSTGRES_14" + ], + "enumDeprecated": [ + false, + true, + false + ], + "enumDescriptions": [ + "This is an unknown database version.", + "DEPRECATED - The database version is Postgres 13.", + "The database version is Postgres 14." + ], + "type": "string" + }, + "type": "array" + }, + "valueType": { + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "STRING", + "INTEGER", + "FLOAT", + "NONE" + ], + "enumDescriptions": [ + "This is an unknown flag type.", + "String type flag.", + "Integer type flag.", + "Float type flag.", + "Denotes that the flag does not accept any values." + ], + "type": "string" + } + }, + "type": "object" + }, + "TimeBasedRetention": { + "description": "A time based retention policy specifies that all backups within a certain time period should be retained.", + "id": "TimeBasedRetention", + "properties": { + "retentionPeriod": { + "description": "The retention period.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "Message describing User object.", + "id": "User", + "properties": { + "databaseRoles": { + "description": "Optional. List of database roles this user has. The database role strings are subject to the PostgreSQL naming conventions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Output only. Name of the resource in the form of projects/{project}/locations/{location}/cluster/{cluster}/users/{user}.", + "readOnly": true, + "type": "string" + }, + "password": { + "description": "Input only. Password for the user.", + "type": "string" + }, + "userType": { + "description": "Optional. Type of this user.", + "enum": [ + "USER_TYPE_UNSPECIFIED", + "ALLOYDB_BUILT_IN", + "ALLOYDB_IAM_USER" + ], + "enumDescriptions": [ + "Unspecified user type.", + "The default user type that authenticates via password-based authentication.", + "Database user that can authenticate via IAM-Based authentication." + ], + "type": "string" + } + }, + "type": "object" + }, + "UserPassword": { + "description": "The username/password for a database user. Used for specifying initial users at cluster creation time.", + "id": "UserPassword", + "properties": { + "password": { + "description": "The initial password for the user.", + "type": "string" + }, + "user": { + "description": "The database username.", + "type": "string" + } + }, + "type": "object" + }, + "WeeklySchedule": { + "description": "A weekly schedule starts a backup at prescribed start times within a day, for the specified days of the week. The weekly schedule message is flexible and can be used to create many types of schedules. For example, to have a daily backup that starts at 22:00, configure the `start_times` field to have one element \"22:00\" and the `days_of_week` field to have all seven days of the week.", + "id": "WeeklySchedule", + "properties": { + "daysOfWeek": { + "description": "The days of the week to perform a backup. If this field is left empty, the default of every day of the week is used.", + "items": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The day of the week is unspecified.", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "type": "string" + }, + "type": "array" + }, + "startTimes": { + "description": "The times during the day to start a backup. The start times are assumed to be in UTC and to be an exact hour (e.g., 04:00:00). If no start times are provided, a single fixed start time is chosen arbitrarily.", + "items": { + "$ref": "GoogleTypeTimeOfDay" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "AlloyDB API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/discovery/alloydb-v1alpha.json b/discovery/alloydb-v1alpha.json new file mode 100644 index 0000000000..63ac9ce384 --- /dev/null +++ b/discovery/alloydb-v1alpha.json @@ -0,0 +1,3592 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "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." + } + } + } + }, + "basePath": "", + "baseUrl": "https://alloydb.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud AlloyDB Admin", + "description": "AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases. ", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/alloydb/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "alloydb:v1alpha", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://alloydb.mtls.googleapis.com/", + "name": "alloydb", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "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", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "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.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "locations": { + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "GoogleCloudLocationLocation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1alpha/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "alloydb.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If not set, the service selects a default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}/locations", + "response": { + "$ref": "GoogleCloudLocationListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "backups": { + "methods": { + "create": { + "description": "Creates a new Backup in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/backups", + "httpMethod": "POST", + "id": "alloydb.projects.locations.backups.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "backupId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+parent}/backups", + "request": { + "$ref": "Backup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Backup.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/backups/{backupsId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.backups.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Backup. If an etag is provided and does not match the current etag of the Backup, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. Name of the resource. For the required format, see the comment on the Backup.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Backup.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/backups/{backupsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.backups.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Backup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Backups in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/backups", + "httpMethod": "GET", + "id": "alloydb.projects.locations.backups.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListBackupsRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/backups", + "response": { + "$ref": "ListBackupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Backup.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/backups/{backupsId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.backups.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if instance is not found. In that case, a new backup is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Backup resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}", + "request": { + "$ref": "Backup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "clusters": { + "methods": { + "create": { + "description": "Creates a new Cluster in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "clusterId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+parent}/clusters", + "request": { + "$ref": "Cluster" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "createsecondary": { + "description": "Creates a cluster of type SECONDARY in the given location using the primary cluster as the source.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters:createsecondary", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.createsecondary", + "parameterOrder": [ + "parent" + ], + "parameters": { + "clusterId": { + "description": "Required. ID of the requesting object (the secondary cluster).", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+parent}/clusters:createsecondary", + "request": { + "$ref": "Cluster" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Cluster.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.clusters.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "force": { + "description": "Optional. Whether to cascade delete child instances for given cluster.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "generateClientCertificate": { + "description": "Generate a client certificate signed by a Cluster CA. The sole purpose of this endpoint is to support AlloyDB connectors and the Auth Proxy client. The endpoint's behavior is subject to change without notice, so do not rely on its behavior remaining constant. Future changes will not break AlloyDB connectors or the Auth Proxy client.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:generateClientCertificate", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.generateClientCertificate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the parent resource. The required format is: * projects/{project}/locations/{location}/clusters/{cluster}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}:generateClientCertificate", + "request": { + "$ref": "GenerateClientCertificateRequest" + }, + "response": { + "$ref": "GenerateClientCertificateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Cluster.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the cluster to return. Returns all default fields if not set.", + "enum": [ + "CLUSTER_VIEW_UNSPECIFIED", + "CLUSTER_VIEW_BASIC", + "CLUSTER_VIEW_CONTINUOUS_BACKUP" + ], + "enumDescriptions": [ + "CLUSTER_VIEW_UNSPECIFIED Not specified, equivalent to BASIC.", + "BASIC server responses include all the relevant cluster details, excluding Cluster.ContinuousBackupInfo.EarliestRestorableTime and other view-specific fields. The default value.", + "CONTINUOUS_BACKUP response returns all the fields from BASIC plus the earliest restorable time if continuous backups are enabled. May increase latency." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Cluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Clusters in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field. Additionally, you can perform an aggregated list operation by specifying a value with the following format: * projects/{project}/locations/-", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/clusters", + "response": { + "$ref": "ListClustersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Cluster.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.clusters.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if cluster is not found. In that case, a new cluster is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of the cluster resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Cluster resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}", + "request": { + "$ref": "Cluster" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "promote": { + "description": "Promotes a SECONDARY cluster. This turns down replication from the PRIMARY cluster and promotes a secondary cluster into its own standalone cluster. Imperative only.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:promote", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.promote", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Cluster.name field", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:promote", + "request": { + "$ref": "PromoteClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "restore": { + "description": "Creates a new Cluster in a given project and location, with a volume restored from the provided source, either a backup ID or a point-in-time and a source cluster.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters:restore", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.restore", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/clusters:restore", + "request": { + "$ref": "RestoreClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "instances": { + "methods": { + "create": { + "description": "Creates a new Instance in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "instanceId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+parent}/instances", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "createsecondary": { + "description": "Creates a new SECONDARY Instance in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances:createsecondary", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.createsecondary", + "parameterOrder": [ + "parent" + ], + "parameters": { + "instanceId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+parent}/instances:createsecondary", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Instance.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.clusters.instances.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Instance. If an etag is provided and does not match the current etag of the Instance, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "failover": { + "description": "Forces a Failover for a highly available instance. Failover promotes the HA standby instance as the new primary. Imperative only.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}:failover", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.failover", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:failover", + "request": { + "$ref": "FailoverInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Instance.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.instances.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "The view of the instance to return.", + "enum": [ + "INSTANCE_VIEW_UNSPECIFIED", + "INSTANCE_VIEW_BASIC", + "INSTANCE_VIEW_FULL" + ], + "enumDescriptions": [ + "INSTANCE_VIEW_UNSPECIFIED Not specified, equivalent to BASIC.", + "BASIC server responses for a primary or read instance include all the relevant instance details, excluding the details of each node in the instance. The default value.", + "FULL response is equivalent to BASIC for primary instance (for now). For read pool instance, this includes details of each node in the pool." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getConnectionInfo": { + "description": "Get instance metadata used for a connection.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}/connectionInfo", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.instances.getConnectionInfo", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the parent resource. The required format is: projects/{project}/locations/{location}/clusters/{cluster}/instances/{instance}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+parent}/connectionInfo", + "response": { + "$ref": "ConnectionInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "injectFault": { + "description": "Injects fault in an instance. Imperative only.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}:injectFault", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.injectFault", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:injectFault", + "request": { + "$ref": "InjectFaultRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Instances in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.instances.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. Additionally, you can perform an aggregated list operation by specifying a value with one of the following formats: * projects/{project}/locations/-/clusters/- * projects/{project}/locations/{region}/clusters/-", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/instances", + "response": { + "$ref": "ListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Instance.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.clusters.instances.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if instance is not found. In that case, a new instance is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of the instance resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}/instances/{instance_id} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project}/locations/{region}/clusters/{cluster_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Instance resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "restart": { + "description": "Restart an Instance in a cluster. Imperative only.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}:restart", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.restart", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:restart", + "request": { + "$ref": "RestartInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "users": { + "methods": { + "create": { + "description": "Creates a new User in a given project, location, and cluster.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.users.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+parent}/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single User.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users/{usersId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.clusters.users.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the User.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single User.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users/{usersId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.users.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the User.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Users in a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.users.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListUsersRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/users", + "response": { + "$ref": "ListUsersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single User.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users/{usersId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.clusters.users.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. Allow missing fields in the update mask.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. Name of the resource in the form of projects/{project}/locations/{location}/cluster/{cluster}/users/{user}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the User resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1alpha/{+name}", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "alloydb.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "alloydb.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "supportedDatabaseFlags": { + "methods": { + "list": { + "description": "Lists SupportedDatabaseFlags for a given project and location.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/supportedDatabaseFlags", + "httpMethod": "GET", + "id": "alloydb.projects.locations.supportedDatabaseFlags.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. The required format is: * projects/{project}/locations/{location} Regardless of the parent specified here, as long it is contains a valid project and location, the service will return a static list of supported flags resources. Note that we do not yet support region-specific flags.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+parent}/supportedDatabaseFlags", + "response": { + "$ref": "ListSupportedDatabaseFlagsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20230821", + "rootUrl": "https://alloydb.googleapis.com/", + "schemas": { + "AutomatedBackupPolicy": { + "description": "Message describing the user-specified automated backup policy. All fields in the automated backup policy are optional. Defaults for each field are provided if they are not set.", + "id": "AutomatedBackupPolicy", + "properties": { + "backupWindow": { + "description": "The length of the time window during which a backup can be taken. If a backup does not succeed within this time window, it will be canceled and considered failed. The backup window must be at least 5 minutes long. There is no upper bound on the window. If not set, it defaults to 1 hour.", + "format": "google-duration", + "type": "string" + }, + "enabled": { + "description": "Whether automated automated backups are enabled. If not set, defaults to true.", + "type": "boolean" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to backups created using this configuration.", + "type": "object" + }, + "location": { + "description": "The location where the backup will be stored. Currently, the only supported option is to store the backup in the same region as the cluster. If empty, defaults to the region of the cluster.", + "type": "string" + }, + "quantityBasedRetention": { + "$ref": "QuantityBasedRetention", + "description": "Quantity-based Backup retention policy to retain recent backups." + }, + "timeBasedRetention": { + "$ref": "TimeBasedRetention", + "description": "Time-based Backup retention policy." + }, + "weeklySchedule": { + "$ref": "WeeklySchedule", + "description": "Weekly schedule for the Backup." + } + }, + "type": "object" + }, + "Backup": { + "description": "Message describing Backup object", + "id": "Backup", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128", + "type": "object" + }, + "clusterName": { + "description": "Required. The full resource name of the backup source cluster (e.g., projects/{project}/locations/{region}/clusters/{cluster_id}).", + "type": "string" + }, + "clusterUid": { + "description": "Output only. The system-generated UID of the cluster which was used to create this resource.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "databaseVersion": { + "description": "Output only. The database engine major version of the cluster this backup was created from. Any restored cluster created from this backup will have the same database version.", + "enum": [ + "DATABASE_VERSION_UNSPECIFIED", + "POSTGRES_13", + "POSTGRES_14", + "POSTGRES_15" + ], + "enumDeprecated": [ + false, + true, + false, + false + ], + "enumDescriptions": [ + "This is an unknown database version.", + "DEPRECATED - The database version is Postgres 13.", + "The database version is Postgres 14.", + "The database version is Postgres 15." + ], + "readOnly": true, + "type": "string" + }, + "deleteTime": { + "description": "Output only. Delete time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "User-provided description of the backup.", + "type": "string" + }, + "displayName": { + "description": "User-settable and human-readable display name for the Backup.", + "type": "string" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config can be specified to encrypt the backup with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data." + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Output only. The encryption information for the backup.", + "readOnly": true + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "expiryQuantity": { + "$ref": "QuantityBasedExpiry", + "description": "Output only. The QuantityBasedExpiry of the backup, specified by the backup's retention policy. Once the expiry quantity is over retention, the backup is eligible to be garbage collected.", + "readOnly": true + }, + "expiryTime": { + "description": "Output only. The time at which after the backup is eligible to be garbage collected. It is the duration specified by the backup's retention policy, added to the backup's create_time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels as key value pairs", + "type": "object" + }, + "name": { + "description": "Output only. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "readOnly": true, + "type": "string" + }, + "reconciling": { + "description": "Output only. Reconciling (https://google.aip.dev/128#reconciliation), if true, indicates that the service is actively updating the resource. This can happen due to user-triggered updates or system actions like failover or maintenance.", + "readOnly": true, + "type": "boolean" + }, + "satisfiesPzs": { + "description": "Reserved for future use.", + "type": "boolean" + }, + "sizeBytes": { + "description": "Output only. The size of the backup in bytes.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The current state of the backup.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "CREATING", + "FAILED", + "DELETING" + ], + "enumDescriptions": [ + "The state of the backup is unknown.", + "The backup is ready.", + "The backup is creating.", + "The backup failed.", + "The backup is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "type": { + "description": "The backup type, which suggests the trigger for the backup.", + "enum": [ + "TYPE_UNSPECIFIED", + "ON_DEMAND", + "AUTOMATED", + "CONTINUOUS" + ], + "enumDescriptions": [ + "Backup Type is unknown.", + "ON_DEMAND backups that were triggered by the customer (e.g., not AUTOMATED).", + "AUTOMATED backups triggered by the automated backups scheduler pursuant to an automated backup policy.", + "CONTINUOUS backups triggered by the automated backups scheduler due to a continuous backup policy." + ], + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BackupSource": { + "description": "Message describing a BackupSource.", + "id": "BackupSource", + "properties": { + "backupName": { + "description": "Required. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id}", + "type": "string" + }, + "backupUid": { + "description": "Output only. The system-generated UID of the backup which was used to create this resource. The UID is generated when the backup is created, and it is retained until the backup is deleted.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "ClientConnectionConfig": { + "description": "Client connection configuration", + "id": "ClientConnectionConfig", + "properties": { + "requireConnectors": { + "description": "Optional. Configuration to enforce connectors only (ex: AuthProxy) connections to the database.", + "type": "boolean" + }, + "sslConfig": { + "$ref": "SslConfig", + "description": "Optional. SSL config option for this instance." + } + }, + "type": "object" + }, + "CloudControl2SharedOperationsReconciliationOperationMetadata": { + "description": "Operation metadata returned by the CLH during resource state reconciliation.", + "id": "CloudControl2SharedOperationsReconciliationOperationMetadata", + "properties": { + "deleteResource": { + "deprecated": true, + "description": "DEPRECATED. Use exclusive_action instead.", + "type": "boolean" + }, + "exclusiveAction": { + "description": "Excluisive action returned by the CLH.", + "enum": [ + "UNKNOWN_REPAIR_ACTION", + "DELETE", + "RETRY" + ], + "enumDeprecated": [ + false, + true, + false + ], + "enumDescriptions": [ + "Unknown repair action.", + "The resource has to be deleted. When using this bit, the CLH should fail the operation. DEPRECATED. Instead use DELETE_RESOURCE OperationSignal in SideChannel.", + "This resource could not be repaired but the repair should be tried again at a later time. This can happen if there is a dependency that needs to be resolved first- e.g. if a parent resource must be repaired before a child resource." + ], + "type": "string" + } + }, + "type": "object" + }, + "Cluster": { + "description": "A cluster is a collection of regional AlloyDB resources. It can include a primary instance and one or more read pool instances. All cluster resources share a storage layer, which scales as needed.", + "id": "Cluster", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128", + "type": "object" + }, + "automatedBackupPolicy": { + "$ref": "AutomatedBackupPolicy", + "description": "The automated backup policy for this cluster. If no policy is provided then the default policy will be used. If backups are supported for the cluster, the default policy takes one backup a day, has a backup window of 1 hour, and retains backups for 14 days. For more information on the defaults, consult the documentation for the message type." + }, + "backupSource": { + "$ref": "BackupSource", + "description": "Output only. Cluster created from backup.", + "readOnly": true + }, + "clusterType": { + "description": "Output only. The type of the cluster. This is an output-only field and it's populated at the Cluster creation time or the Cluster promotion time. The cluster type is determined by which RPC was used to create the cluster (i.e. `CreateCluster` vs. `CreateSecondaryCluster`", + "enum": [ + "CLUSTER_TYPE_UNSPECIFIED", + "PRIMARY", + "SECONDARY" + ], + "enumDescriptions": [ + "The type of the cluster is unknown.", + "Primary cluster that support read and write operations.", + "Secondary cluster that is replicating from another region. This only supports read." + ], + "readOnly": true, + "type": "string" + }, + "continuousBackupConfig": { + "$ref": "ContinuousBackupConfig", + "description": "Optional. Continuous backup configuration for this cluster." + }, + "continuousBackupInfo": { + "$ref": "ContinuousBackupInfo", + "description": "Output only. Continuous backup properties for this cluster.", + "readOnly": true + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "databaseVersion": { + "description": "Optional. The database engine major version. This is an optional field and it is populated at the Cluster creation time. If a database version is not supplied at cluster creation time, then a default database version will be used.", + "enum": [ + "DATABASE_VERSION_UNSPECIFIED", + "POSTGRES_13", + "POSTGRES_14", + "POSTGRES_15" + ], + "enumDeprecated": [ + false, + true, + false, + false + ], + "enumDescriptions": [ + "This is an unknown database version.", + "DEPRECATED - The database version is Postgres 13.", + "The database version is Postgres 14.", + "The database version is Postgres 15." + ], + "type": "string" + }, + "deleteTime": { + "description": "Output only. Delete time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "User-settable and human-readable display name for the Cluster.", + "type": "string" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config can be specified to encrypt the data disks and other persistent data resources of a cluster with a customer-managed encryption key (CMEK). When this field is not specified, the cluster will then use default encryption scheme to protect the user data." + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Output only. The encryption information for the cluster.", + "readOnly": true + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "initialUser": { + "$ref": "UserPassword", + "description": "Input only. Initial user to setup during cluster creation. Required. If used in `RestoreCluster` this is ignored." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels as key value pairs", + "type": "object" + }, + "migrationSource": { + "$ref": "MigrationSource", + "description": "Output only. Cluster created via DMS migration.", + "readOnly": true + }, + "name": { + "description": "Output only. The name of the cluster resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "readOnly": true, + "type": "string" + }, + "network": { + "deprecated": true, + "description": "Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: \"projects/{project}/global/networks/{network_id}\". This is required to create a cluster. It can be updated, but it cannot be removed. Deprecated, use network_config.network instead.", + "type": "string" + }, + "networkConfig": { + "$ref": "NetworkConfig" + }, + "primaryConfig": { + "$ref": "PrimaryConfig", + "description": "Output only. Cross Region replication config specific to PRIMARY cluster.", + "readOnly": true + }, + "reconciling": { + "description": "Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Cluster does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance.", + "readOnly": true, + "type": "boolean" + }, + "satisfiesPzs": { + "description": "Reserved for future use.", + "type": "boolean" + }, + "secondaryConfig": { + "$ref": "SecondaryConfig", + "description": "Cross Region replication config specific to SECONDARY cluster." + }, + "sslConfig": { + "$ref": "SslConfig", + "deprecated": true, + "description": "SSL configuration for this AlloyDB cluster." + }, + "state": { + "description": "Output only. The current serving state of the cluster.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "STOPPED", + "EMPTY", + "CREATING", + "DELETING", + "FAILED", + "BOOTSTRAPPING", + "MAINTENANCE", + "PROMOTING" + ], + "enumDescriptions": [ + "The state of the cluster is unknown.", + "The cluster is active and running.", + "The cluster is stopped. All instances in the cluster are stopped. Customers can start a stopped cluster at any point and all their instances will come back to life with same names and IP resources. In this state, customer pays for storage. Associated backups could also be present in a stopped cluster.", + "The cluster is empty and has no associated resources. All instances, associated storage and backups have been deleted.", + "The cluster is being created.", + "The cluster is being deleted.", + "The creation of the cluster failed.", + "The cluster is bootstrapping with data from some other source. Direct mutations to the cluster (e.g. adding read pool) are not allowed.", + "The cluster is under maintenance. AlloyDB regularly performs maintenance and upgrades on customer clusters. Updates on the cluster are not allowed while the cluster is in this state.", + "The cluster is being promoted." + ], + "readOnly": true, + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ConnectionInfo": { + "description": "ConnectionInfo singleton resource. https://google.aip.dev/156", + "id": "ConnectionInfo", + "properties": { + "instanceUid": { + "description": "Output only. The unique ID of the Instance.", + "readOnly": true, + "type": "string" + }, + "ipAddress": { + "description": "Output only. The private network IP address for the Instance. This is the default IP for the instance and is always created (even if enable_public_ip is set). This is the connection endpoint for an end-user application.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the ConnectionInfo singleton resource, e.g.: projects/{project}/locations/{location}/clusters/*/instances/*/connectionInfo This field currently has no semantic meaning.", + "type": "string" + }, + "pemCertificateChain": { + "deprecated": true, + "description": "Output only. The pem-encoded chain that may be used to verify the X.509 certificate. Expected to be in issuer-to-root order according to RFC 5246.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "ContinuousBackupConfig": { + "description": "ContinuousBackupConfig describes the continuous backups recovery configurations of a cluster.", + "id": "ContinuousBackupConfig", + "properties": { + "enabled": { + "description": "Whether ContinuousBackup is enabled.", + "type": "boolean" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data." + }, + "recoveryWindowDays": { + "description": "The number of days that are eligible to restore from using PITR. To support the entire recovery window, backups and logs are retained for one day more than the recovery window. If not set, defaults to 14 days.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ContinuousBackupInfo": { + "description": "ContinuousBackupInfo describes the continuous backup properties of a cluster.", + "id": "ContinuousBackupInfo", + "properties": { + "earliestRestorableTime": { + "description": "Output only. The earliest restorable time that can be restored to. Output only field.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "enabledTime": { + "description": "Output only. When ContinuousBackup was most recently enabled. Set to null if ContinuousBackup is not enabled.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Output only. The encryption information for the WALs and backups required for ContinuousBackup.", + "readOnly": true + }, + "schedule": { + "description": "Output only. Days of the week on which a continuous backup is taken. Output only field. Ignored if passed into the request.", + "items": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The day of the week is unspecified.", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "ContinuousBackupSource": { + "description": "Message describing a ContinuousBackupSource.", + "id": "ContinuousBackupSource", + "properties": { + "cluster": { + "description": "Required. The source cluster from which to restore. This cluster must have continuous backup enabled for this operation to succeed. For the required format, see the comment on the Cluster.name field.", + "type": "string" + }, + "pointInTime": { + "description": "Required. The point in time to restore to.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Empty": { + "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); }", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "EncryptionConfig": { + "description": "EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key).", + "id": "EncryptionConfig", + "properties": { + "kmsKeyName": { + "description": "The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]", + "type": "string" + } + }, + "type": "object" + }, + "EncryptionInfo": { + "description": "EncryptionInfo describes the encryption information of a cluster or a backup.", + "id": "EncryptionInfo", + "properties": { + "encryptionType": { + "description": "Output only. Type of encryption.", + "enum": [ + "TYPE_UNSPECIFIED", + "GOOGLE_DEFAULT_ENCRYPTION", + "CUSTOMER_MANAGED_ENCRYPTION" + ], + "enumDescriptions": [ + "Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.", + "The data is encrypted at rest with a key that is fully managed by Google. No key version will be populated. This is the default state.", + "The data is encrypted at rest with a key that is managed by the customer. KMS key versions will be populated." + ], + "readOnly": true, + "type": "string" + }, + "kmsKeyVersions": { + "description": "Output only. Cloud KMS key versions that are being used to protect the database or the backup.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "FailoverInstanceRequest": { + "description": "Message for triggering failover on an Instance", + "id": "FailoverInstanceRequest", + "properties": { + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the failover.", + "type": "boolean" + } + }, + "type": "object" + }, + "GenerateClientCertificateRequest": { + "description": "Message for requests to generate a client certificate signed by the Cluster CA.", + "id": "GenerateClientCertificateRequest", + "properties": { + "certDuration": { + "description": "Optional. An optional hint to the endpoint to generate the client certificate with the requested duration. The duration can be from 1 hour to 24 hours. The endpoint may or may not honor the hint. If the hint is left unspecified or is not honored, then the endpoint will pick an appropriate default duration.", + "format": "google-duration", + "type": "string" + }, + "pemCsr": { + "deprecated": true, + "description": "Optional. A pem-encoded X.509 certificate signing request (CSR).", + "type": "string" + }, + "publicKey": { + "description": "Optional. The public key from the client.", + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "useMetadataExchange": { + "description": "Optional. An optional hint to the endpoint to generate a client ceritificate that can be used by AlloyDB connectors to exchange additional metadata with the server after TLS handshake.", + "type": "boolean" + } + }, + "type": "object" + }, + "GenerateClientCertificateResponse": { + "description": "Message returned by a GenerateClientCertificate operation.", + "id": "GenerateClientCertificateResponse", + "properties": { + "caCert": { + "description": "Optional. The pem-encoded cluster ca X.509 certificate.", + "type": "string" + }, + "pemCertificate": { + "description": "Output only. The pem-encoded, signed X.509 certificate.", + "readOnly": true, + "type": "string" + }, + "pemCertificateChain": { + "description": "Output only. The pem-encoded chain that may be used to verify the X.509 certificate. Expected to be in issuer-to-root order according to RFC 5246.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudLocationListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "GoogleCloudLocationListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "GoogleCloudLocationLocation" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudLocationLocation": { + "description": "A resource that represents a Google Cloud location.", + "id": "GoogleCloudLocationLocation", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeTimeOfDay": { + "description": "Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.", + "id": "GoogleTypeTimeOfDay", + "properties": { + "hours": { + "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InjectFaultRequest": { + "description": "Message for triggering fault injection on an instance", + "id": "InjectFaultRequest", + "properties": { + "faultType": { + "description": "Required. The type of fault to be injected in an instance.", + "enum": [ + "FAULT_TYPE_UNSPECIFIED", + "STOP_VM" + ], + "enumDescriptions": [ + "The fault type is unknown.", + "Stop the VM" + ], + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the fault injection.", + "type": "boolean" + } + }, + "type": "object" + }, + "Instance": { + "description": "An Instance is a computing unit that an end customer can connect to. It's the main unit of computing resources in AlloyDB.", + "id": "Instance", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128", + "type": "object" + }, + "availabilityType": { + "description": "Availability type of an Instance. If empty, defaults to REGIONAL for primary instances. For read pools, availability_type is always UNSPECIFIED. Instances in the read pools are evenly distributed across available zones within the region (i.e. read pools with more than one node will have a node in at least two zones).", + "enum": [ + "AVAILABILITY_TYPE_UNSPECIFIED", + "ZONAL", + "REGIONAL" + ], + "enumDescriptions": [ + "This is an unknown Availability type.", + "Zonal available instance.", + "Regional (or Highly) available instance." + ], + "type": "string" + }, + "clientConnectionConfig": { + "$ref": "ClientConnectionConfig", + "description": "Optional. Client connection specific configurations" + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "databaseFlags": { + "additionalProperties": { + "type": "string" + }, + "description": "Database flags. Set at instance level. * They are copied from primary instance on read instance creation. * Read instances can set new or override existing flags that are relevant for reads, e.g. for enabling columnar cache on a read instance. Flags set on read instance may or may not be present on primary. This is a list of \"key\": \"value\" pairs. \"key\": The name of the flag. These flags are passed at instance setup time, so include both server options and system variables for Postgres. Flags are specified with underscores, not hyphens. \"value\": The value of the flag. Booleans 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" + }, + "deleteTime": { + "description": "Output only. Delete time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "User-settable and human-readable display name for the Instance.", + "type": "string" + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "gceZone": { + "description": "The Compute Engine zone that the instance should serve from, per https://cloud.google.com/compute/docs/regions-zones This can ONLY be specified for ZONAL instances. If present for a REGIONAL instance, an error will be thrown. If this is absent for a ZONAL instance, instance is created in a random zone with available capacity.", + "type": "string" + }, + "instanceType": { + "description": "Required. The type of the instance. Specified at creation time.", + "enum": [ + "INSTANCE_TYPE_UNSPECIFIED", + "PRIMARY", + "READ_POOL", + "SECONDARY" + ], + "enumDescriptions": [ + "The type of the instance is unknown.", + "PRIMARY instances support read and write operations.", + "READ POOL instances support read operations only. Each read pool instance consists of one or more homogeneous nodes. * Read pool of size 1 can only have zonal availability. * Read pools with node count of 2 or more can have regional availability (nodes are present in 2 or more zones in a region).", + "SECONDARY instances support read operations only. SECONDARY instance is a cross-region read replica" + ], + "type": "string" + }, + "ipAddress": { + "description": "Output only. The IP address for the Instance. This is the connection endpoint for an end-user application.", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels as key value pairs", + "type": "object" + }, + "machineConfig": { + "$ref": "MachineConfig", + "description": "Configurations for the machines that host the underlying database engine." + }, + "name": { + "description": "Output only. The name of the instance resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}/instances/{instance_id} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project}/locations/{region}/clusters/{cluster_id}", + "readOnly": true, + "type": "string" + }, + "nodes": { + "description": "Output only. List of available read-only VMs in this instance, including the standby for a PRIMARY instance.", + "items": { + "$ref": "Node" + }, + "readOnly": true, + "type": "array" + }, + "queryInsightsConfig": { + "$ref": "QueryInsightsInstanceConfig", + "description": "Configuration for query insights." + }, + "readPoolConfig": { + "$ref": "ReadPoolConfig", + "description": "Read pool specific config." + }, + "reconciling": { + "description": "Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Instance does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance.", + "readOnly": true, + "type": "boolean" + }, + "satisfiesPzs": { + "description": "Reserved for future use.", + "type": "boolean" + }, + "state": { + "description": "Output only. The current serving state of the instance.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "STOPPED", + "CREATING", + "DELETING", + "MAINTENANCE", + "FAILED", + "BOOTSTRAPPING", + "PROMOTING" + ], + "enumDescriptions": [ + "The state of the instance is unknown.", + "The instance is active and running.", + "The instance is stopped. Instance name and IP resources are preserved.", + "The instance is being created.", + "The instance is being deleted.", + "The instance is down for maintenance.", + "The creation of the instance failed or a fatal error occurred during an operation on the instance. Note: Instances in this state would tried to be auto-repaired. And Customers should be able to restart, update or delete these instances.", + "Index 7 is used in the producer apis for ROLLED_BACK state. Keeping that index unused in case that state also needs to exposed via consumer apis in future. The instance has been configured to sync data from some other source.", + "The instance is being promoted." + ], + "readOnly": true, + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted.", + "readOnly": true, + "type": "string" + }, + "updatePolicy": { + "$ref": "UpdatePolicy", + "description": "Update policy that will be applied during instance update. This field is not persisted when you update the instance. To use a non-default update policy, you must specify explicitly specify the value in each update request." + }, + "updateTime": { + "description": "Output only. Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "writableNode": { + "$ref": "Node", + "description": "Output only. This is set for the read-write VM of the PRIMARY instance only.", + "readOnly": true + } + }, + "type": "object" + }, + "IntegerRestrictions": { + "description": "Restrictions on INTEGER type values.", + "id": "IntegerRestrictions", + "properties": { + "maxValue": { + "description": "The maximum value that can be specified, if applicable.", + "format": "int64", + "type": "string" + }, + "minValue": { + "description": "The minimum value that can be specified, if applicable.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ListBackupsResponse": { + "description": "Message for response to listing Backups", + "id": "ListBackupsResponse", + "properties": { + "backups": { + "description": "The list of Backup", + "items": { + "$ref": "Backup" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListClustersResponse": { + "description": "Message for response to listing Clusters", + "id": "ListClustersResponse", + "properties": { + "clusters": { + "description": "The list of Cluster", + "items": { + "$ref": "Cluster" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListInstancesResponse": { + "description": "Message for response to listing Instances", + "id": "ListInstancesResponse", + "properties": { + "instances": { + "description": "The list of Instance", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListSupportedDatabaseFlagsResponse": { + "description": "Message for response to listing SupportedDatabaseFlags.", + "id": "ListSupportedDatabaseFlagsResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "supportedDatabaseFlags": { + "description": "The list of SupportedDatabaseFlags.", + "items": { + "$ref": "SupportedDatabaseFlag" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUsersResponse": { + "description": "Message for response to listing Users", + "id": "ListUsersResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + }, + "users": { + "description": "The list of User", + "items": { + "$ref": "User" + }, + "type": "array" + } + }, + "type": "object" + }, + "MachineConfig": { + "description": "MachineConfig describes the configuration of a machine.", + "id": "MachineConfig", + "properties": { + "cpuCount": { + "description": "The number of CPU's in the VM instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "MigrationSource": { + "description": "Subset of the source instance configuration that is available when reading the cluster resource.", + "id": "MigrationSource", + "properties": { + "hostPort": { + "description": "Output only. The host and port of the on-premises instance in host:port format", + "readOnly": true, + "type": "string" + }, + "referenceId": { + "description": "Output only. Place holder for the external source identifier(e.g DMS job name) that created the cluster.", + "readOnly": true, + "type": "string" + }, + "sourceType": { + "description": "Output only. Type of migration source.", + "enum": [ + "MIGRATION_SOURCE_TYPE_UNSPECIFIED", + "DMS" + ], + "enumDescriptions": [ + "Migration source is unknown.", + "DMS source means the cluster was created via DMS migration job." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfig": { + "description": "Metadata related to network configuration.", + "id": "NetworkConfig", + "properties": { + "allocatedIpRange": { + "description": "Optional. Name of the allocated IP range for the private IP AlloyDB cluster, for example: \"google-managed-services-default\". If set, the instance IPs for this cluster will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. Field name is intended to be consistent with CloudSQL.", + "type": "string" + }, + "network": { + "description": "Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: \"projects/{project_number}/global/networks/{network_id}\". This is required to create a cluster. It can be updated, but it cannot be removed.", + "type": "string" + } + }, + "type": "object" + }, + "Node": { + "description": "Details of a single node in the instance. Nodes in an AlloyDB instance are ephemereal, they can change during update, failover, autohealing and resize operations.", + "id": "Node", + "properties": { + "id": { + "description": "The identifier of the VM e.g. \"test-read-0601-407e52be-ms3l\".", + "type": "string" + }, + "ip": { + "description": "The private IP address of the VM e.g. \"10.57.0.34\".", + "type": "string" + }, + "state": { + "description": "Determined by state of the compute VM and postgres-service health. Compute VM state can have values listed in https://cloud.google.com/compute/docs/instances/instance-life-cycle and postgres-service health can have values: HEALTHY and UNHEALTHY.", + "type": "string" + }, + "zoneId": { + "description": "The Compute Engine zone of the VM e.g. \"us-central1-b\".", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "OperationMetadata", + "properties": { + "apiVersion": { + "description": "Output only. API version used to start the operation.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "requestedCancellation": { + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "readOnly": true, + "type": "boolean" + }, + "statusMessage": { + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, + "type": "string" + }, + "verb": { + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "PrimaryConfig": { + "description": "Configuration for the primary cluster. It has the list of clusters that are replicating from this cluster. This should be set if and only if the cluster is of type PRIMARY.", + "id": "PrimaryConfig", + "properties": { + "secondaryClusterNames": { + "description": "Output only. Names of the clusters that are replicating from this cluster.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "PromoteClusterRequest": { + "description": "Message for promoting a Cluster", + "id": "PromoteClusterRequest", + "properties": { + "etag": { + "description": "Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned.", + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete.", + "type": "boolean" + } + }, + "type": "object" + }, + "QuantityBasedExpiry": { + "description": "A backup's position in a quantity-based retention queue, of backups with the same source cluster and type, with length, retention, specified by the backup's retention policy. Once the position is greater than the retention, the backup is eligible to be garbage collected. Example: 5 backups from the same source cluster and type with a quantity-based retention of 3 and denoted by backup_id (position, retention). Safe: backup_5 (1, 3), backup_4, (2, 3), backup_3 (3, 3). Awaiting garbage collection: backup_2 (4, 3), backup_1 (5, 3)", + "id": "QuantityBasedExpiry", + "properties": { + "retentionCount": { + "description": "Output only. The backup's position among its backups with the same source cluster and type, by descending chronological order create time(i.e. newest first).", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "totalRetentionCount": { + "description": "Output only. The length of the quantity-based queue, specified by the backup's retention policy.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "QuantityBasedRetention": { + "description": "A quantity based policy specifies that a certain number of the most recent successful backups should be retained.", + "id": "QuantityBasedRetention", + "properties": { + "count": { + "description": "The number of backups to retain.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "QueryInsightsInstanceConfig": { + "description": "QueryInsights Instance specific configuration.", + "id": "QueryInsightsInstanceConfig", + "properties": { + "queryPlansPerMinute": { + "description": "Number of query execution plans captured by Insights per minute for all queries combined. The default value is 5. Any integer between 0 and 20 is considered valid.", + "format": "uint32", + "type": "integer" + }, + "queryStringLength": { + "description": "Query string length. The default value is 1024. Any integer between 256 and 4500 is considered valid.", + "format": "uint32", + "type": "integer" + }, + "recordApplicationTags": { + "description": "Record application tags for an instance. This flag is turned \"on\" by default.", + "type": "boolean" + }, + "recordClientAddress": { + "description": "Record client address for an instance. Client address is PII information. This flag is turned \"on\" by default.", + "type": "boolean" + } + }, + "type": "object" + }, + "ReadPoolConfig": { + "description": "Configuration for a read pool instance.", + "id": "ReadPoolConfig", + "properties": { + "nodeCount": { + "description": "Read capacity, i.e. number of nodes in a read pool instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RestartInstanceRequest": { + "id": "RestartInstanceRequest", + "properties": { + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the restart.", + "type": "boolean" + } + }, + "type": "object" + }, + "RestoreClusterRequest": { + "description": "Message for restoring a Cluster from a backup or another cluster at a given point in time.", + "id": "RestoreClusterRequest", + "properties": { + "backupSource": { + "$ref": "BackupSource", + "description": "Backup source." + }, + "cluster": { + "$ref": "Cluster", + "description": "Required. The resource being created" + }, + "clusterId": { + "description": "Required. ID of the requesting object.", + "type": "string" + }, + "continuousBackupSource": { + "$ref": "ContinuousBackupSource", + "description": "ContinuousBackup source. Continuous backup needs to be enabled in the source cluster for this operation to succeed." + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the import request.", + "type": "boolean" + } + }, + "type": "object" + }, + "SecondaryConfig": { + "description": "Configuration information for the secondary cluster. This should be set if and only if the cluster is of type SECONDARY.", + "id": "SecondaryConfig", + "properties": { + "primaryClusterName": { + "description": "The name of the primary cluster name with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}", + "type": "string" + } + }, + "type": "object" + }, + "SslConfig": { + "description": "SSL configuration.", + "id": "SslConfig", + "properties": { + "caSource": { + "description": "Optional. Certificate Authority (CA) source. Only CA_SOURCE_MANAGED is supported currently, and is the default value.", + "enum": [ + "CA_SOURCE_UNSPECIFIED", + "CA_SOURCE_MANAGED" + ], + "enumDescriptions": [ + "Certificate Authority (CA) source not specified. Defaults to CA_SOURCE_MANAGED.", + "Certificate Authority (CA) managed by the AlloyDB Cluster." + ], + "type": "string" + }, + "sslMode": { + "description": "Optional. SSL mode. Specifies client-server SSL/TLS connection behavior.", + "enum": [ + "SSL_MODE_UNSPECIFIED", + "SSL_MODE_ALLOW", + "SSL_MODE_REQUIRE", + "SSL_MODE_VERIFY_CA", + "ALLOW_UNENCRYPTED_AND_ENCRYPTED", + "ENCRYPTED_ONLY" + ], + "enumDeprecated": [ + false, + true, + true, + true, + false, + false + ], + "enumDescriptions": [ + "SSL mode not specified. Defaults to ENCRYPTED_ONLY.", + "SSL connections are optional. CA verification not enforced.", + "SSL connections are required. CA verification not enforced. Clients may use locally self-signed certificates (default psql client behavior).", + "SSL connections are required. CA verification enforced. Clients must have certificates signed by a Cluster CA, e.g. via GenerateClientCertificate.", + "SSL connections are optional. CA verification not enforced.", + "SSL connections are required. CA verification not enforced." + ], + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "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": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "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" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration": { + "description": "Configuration for availability of database instance", + "id": "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration", + "properties": { + "availabilityType": { + "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).", + "enum": [ + "AVAILABILITY_TYPE_UNSPECIFIED", + "ZONAL", + "REGIONAL", + "MULTI_REGIONAL", + "AVAILABILITY_TYPE_OTHER" + ], + "enumDescriptions": [ + "", + "Zonal available instance.", + "Regional available instance.", + "Multi regional instance", + "For rest of the other category" + ], + "type": "string" + }, + "externalReplicaConfigured": { + "type": "boolean" + }, + "promotableReplicaConfigured": { + "type": "boolean" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainBackupConfiguration": { + "description": "Configuration for automatic backups", + "id": "StorageDatabasecenterPartnerapiV1mainBackupConfiguration", + "properties": { + "automatedBackupEnabled": { + "description": "Whether customer visible automated backups are enabled on the instance.", + "type": "boolean" + }, + "backupRetentionSettings": { + "$ref": "StorageDatabasecenterPartnerapiV1mainRetentionSettings", + "description": "Backup retention settings." + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainBackupRun": { + "description": "A backup run.", + "id": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "properties": { + "endTime": { + "description": "The time the backup operation completed. REQUIRED", + "format": "google-datetime", + "type": "string" + }, + "error": { + "$ref": "StorageDatabasecenterPartnerapiV1mainOperationError", + "description": "Information about why the backup operation failed. This is only present if the run has the FAILED status. OPTIONAL" + }, + "startTime": { + "description": "The time the backup operation started. REQUIRED", + "format": "google-datetime", + "type": "string" + }, + "status": { + "description": "The status of this run. REQUIRED", + "enum": [ + "STATUS_UNSPECIFIED", + "SUCCESSFUL", + "FAILED" + ], + "enumDescriptions": [ + "", + "The backup was successful.", + "The backup was unsuccessful." + ], + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainDatabaseResourceFeed": { + "description": "DatabaseResourceFeed is the top level proto to be used to ingest different database resource level events into Condor platform.", + "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceFeed", + "properties": { + "feedTimestamp": { + "description": "Required. Timestamp when feed is generated.", + "format": "google-datetime", + "type": "string" + }, + "feedType": { + "description": "Required. Type feed to be ingested into condor", + "enum": [ + "FEEDTYPE_UNSPECIFIED", + "RESOURCE_METADATA", + "OBSERVABILITY_DATA", + "COMPLIANCE_DATA" + ], + "enumDescriptions": [ + "", + "Database resource metadata feed from control plane", + "Database resource monitoring data", + "Database resource compliance feed" + ], + "type": "string" + }, + "resourceId": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "description": "Required. Primary key associated with the Resource" + }, + "resourceMetadata": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", + "description": "More feed data would be added in subsequent CLs" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId": { + "description": "DatabaseResourceId will serve as primary key for any resource ingestion event.", + "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "properties": { + "provider": { + "description": "Required. Cloud provider name. Ex: GCP/AWS/Azure/OnPrem/SelfManaged", + "enum": [ + "PROVIDER_UNSPECIFIED", + "GCP", + "AWS", + "AZURE", + "ONPREM", + "SELFMANAGED", + "PROVIDER_OTHER" + ], + "enumDescriptions": [ + "", + "Google cloud platform provider", + "Amazon web service", + "Azure web service", + "On-prem database provider", + "Self-managed database provider", + "For rest of the other category" + ], + "type": "string" + }, + "resourceType": { + "description": "Required. The type of resource this ID is identifying. Ex google.sqladmin.Instance, google.alloydb.cluster, google.sqladmin.Backup REQUIRED", + "type": "string" + }, + "uniqueId": { + "description": "Required. A service-local token that distinguishes this resource from other resources within the same service.", + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata": { + "description": "Common model for database resource instance metadata.", + "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", + "properties": { + "availabilityConfiguration": { + "$ref": "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration", + "description": "Availability configuration for this instance" + }, + "backupConfiguration": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupConfiguration", + "description": "Backup configuration for this instance" + }, + "backupRun": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "description": "Latest backup run information for this instance" + }, + "creationTime": { + "description": "The creation time of the resource, i.e. the time when resource is created and recorded in partner service.", + "format": "google-datetime", + "type": "string" + }, + "currentState": { + "description": "Current state of the instance.", + "enum": [ + "STATE_UNSPECIFIED", + "HEALTHY", + "UNHEALTHY", + "STATE_OTHER" + ], + "enumDescriptions": [ + "", + "The instance is running.", + "Instance being created, updated, deleted or under maintenance", + "For rest of the other category" + ], + "type": "string" + }, + "expectedState": { + "description": "The actual instance state.", + "enum": [ + "STATE_UNSPECIFIED", + "HEALTHY", + "UNHEALTHY", + "STATE_OTHER" + ], + "enumDescriptions": [ + "", + "The instance is running.", + "Instance being created, updated, deleted or under maintenance", + "For rest of the other category" + ], + "type": "string" + }, + "id": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "description": "Required. Unique identifier for a Database resource" + }, + "instanceType": { + "description": "The type of the instance. Specified at creation time.", + "enum": [ + "INSTANCE_TYPE_UNSPECIFIED", + "PRIMARY", + "READ_REPLICA", + "OTHER" + ], + "enumDescriptions": [ + "", + "A regular primary database instance.", + "An instance acting as a read-replica.", + "For rest of the other categories." + ], + "type": "string" + }, + "location": { + "description": "The resource location. REQUIRED", + "type": "string" + }, + "primaryResourceId": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "description": "Unique identifier for this resource's immediate parent resource. This parent resource id would be used to build resource hierarchy in condor platform." + }, + "product": { + "$ref": "StorageDatabasecenterProtoCommonProduct", + "description": "The product this resource represents." + }, + "resourceContainer": { + "description": "Closest parent Cloud Resource Manager container of this resource. It must either be resource name of a Cloud Resource Manager project, for ex: \"projects/123\".", + "type": "string" + }, + "resourceName": { + "description": "Required. Different from unique_id, a resource name can be reused over time. That is after a resource named \"ABC\" is deleted, the name \"ABC\" can be used to to create a new resource within the same source.", + "type": "string" + }, + "updationTime": { + "description": "The time at which the resource was updated and recorded at partner service.", + "format": "google-datetime", + "type": "string" + }, + "userLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "User-provided labels, represented as a dictionary where each label is a single key value pair.", + "type": "object" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainOperationError": { + "description": "An error that occurred during a backup creation operation.", + "id": "StorageDatabasecenterPartnerapiV1mainOperationError", + "properties": { + "code": { + "description": "Identifies the specific error that occurred. REQUIRED", + "type": "string" + }, + "message": { + "description": "Additional information about the error encountered. REQUIRED", + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainRetentionSettings": { + "id": "StorageDatabasecenterPartnerapiV1mainRetentionSettings", + "properties": { + "quantityBasedRetention": { + "format": "int32", + "type": "integer" + }, + "retentionUnit": { + "description": "The unit that 'retained_backups' represents.", + "enum": [ + "RETENTION_UNIT_UNSPECIFIED", + "COUNT", + "TIME", + "RETENTION_UNIT_OTHER" + ], + "enumDescriptions": [ + "Backup retention unit is unspecified, will be treated as COUNT.", + "Retention will be by count, eg. \"retain the most recent 7 backups\".", + "Retention will be by Time, eg. \"retain the last 7 days backups\".", + "For rest of the other category" + ], + "type": "string" + }, + "timeBasedRetention": { + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterProtoCommonProduct": { + "description": "Product specification for Condor resources.", + "id": "StorageDatabasecenterProtoCommonProduct", + "properties": { + "engine": { + "description": "The specific engine that the underlying database is running.", + "enum": [ + "ENGINE_UNSPECIFIED", + "MYSQL", + "POSTGRES", + "SQL_SERVER", + "NATIVE", + "SPANGRES", + "ENGINE_OTHER" + ], + "enumDescriptions": [ + "UNSPECIFIED means engine type is not known or available.", + "MySQL binary running as engine in database instance.", + "Postgres binary running as engine in database instance.", + "SQLServer binary running as engine in database instance.", + "Native database binary running as engine in instance.", + "Cloud Spanner with Postgres dialect.", + "Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum." + ], + "type": "string" + }, + "type": { + "description": "Type of specific database product. It could be CloudSQL, AlloyDB etc..", + "enum": [ + "PRODUCT_TYPE_UNSPECIFIED", + "CLOUD_SQL", + "ALLOYDB", + "SPANNER", + "ON_PREM", + "PRODUCT_TYPE_OTHER" + ], + "enumDescriptions": [ + "UNSPECIFIED means product type is not known or available.", + "Cloud SQL product area in GCP", + "AlloyDB product area in GCP", + "Spanner product area in GCP", + "On premises database product.", + "Other refers to rest of other product type. This is to be when product type is known, but it is not present in this enum." + ], + "type": "string" + }, + "version": { + "description": "Version of the underlying database engine. Example values: For MySQL, it could be \"8.0\", \"5.7\" etc.. For Postgres, it could be \"14\", \"15\" etc..", + "type": "string" + } + }, + "type": "object" + }, + "StringRestrictions": { + "description": "Restrictions on STRING type values", + "id": "StringRestrictions", + "properties": { + "allowedValues": { + "description": "The list of allowed values, if bounded. This field will be empty if there is a unbounded number of allowed values.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SupportedDatabaseFlag": { + "description": "SupportedDatabaseFlag gives general information about a database flag, like type and allowed values. This is a static value that is defined on the server side, and it cannot be modified by callers. To set the Database flags on a particular Instance, a caller should modify the Instance.database_flags field.", + "id": "SupportedDatabaseFlag", + "properties": { + "acceptsMultipleValues": { + "description": "Whether the database flag accepts multiple values. If true, a comma-separated list of stringified values may be specified.", + "type": "boolean" + }, + "flagName": { + "description": "The name of the database flag, e.g. \"max_allowed_packets\". The is a possibly key for the Instance.database_flags map field.", + "type": "string" + }, + "integerRestrictions": { + "$ref": "IntegerRestrictions", + "description": "Restriction on INTEGER type value." + }, + "name": { + "description": "The name of the flag resource, following Google Cloud conventions, e.g.: * projects/{project}/locations/{location}/flags/{flag} This field currently has no semantic meaning.", + "type": "string" + }, + "requiresDbRestart": { + "description": "Whether setting or updating this flag on an Instance requires a database restart. If a flag that requires database restart is set, the backend will automatically restart the database (making sure to satisfy any availability SLO's).", + "type": "boolean" + }, + "stringRestrictions": { + "$ref": "StringRestrictions", + "description": "Restriction on STRING type value." + }, + "supportedDbVersions": { + "description": "Major database engine versions for which this flag is supported.", + "items": { + "enum": [ + "DATABASE_VERSION_UNSPECIFIED", + "POSTGRES_13", + "POSTGRES_14", + "POSTGRES_15" + ], + "enumDeprecated": [ + false, + true, + false, + false + ], + "enumDescriptions": [ + "This is an unknown database version.", + "DEPRECATED - The database version is Postgres 13.", + "The database version is Postgres 14.", + "The database version is Postgres 15." + ], + "type": "string" + }, + "type": "array" + }, + "valueType": { + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "STRING", + "INTEGER", + "FLOAT", + "NONE" + ], + "enumDescriptions": [ + "This is an unknown flag type.", + "String type flag.", + "Integer type flag.", + "Float type flag.", + "Denotes that the flag does not accept any values." + ], + "type": "string" + } + }, + "type": "object" + }, + "TimeBasedRetention": { + "description": "A time based retention policy specifies that all backups within a certain time period should be retained.", + "id": "TimeBasedRetention", + "properties": { + "retentionPeriod": { + "description": "The retention period.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "UpdatePolicy": { + "description": "Policy to be used while updating the instance.", + "id": "UpdatePolicy", + "properties": { + "mode": { + "description": "Mode for updating the instance.", + "enum": [ + "MODE_UNSPECIFIED", + "DEFAULT", + "FORCE_APPLY" + ], + "enumDescriptions": [ + "Mode is unknown.", + "Least disruptive way to apply the update.", + "Performs a forced update when applicable. This will be fast but may incur a downtime." + ], + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "Message describing User object.", + "id": "User", + "properties": { + "databaseRoles": { + "description": "Optional. List of database roles this user has. The database role strings are subject to the PostgreSQL naming conventions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Output only. Name of the resource in the form of projects/{project}/locations/{location}/cluster/{cluster}/users/{user}.", + "readOnly": true, + "type": "string" + }, + "password": { + "description": "Input only. Password for the user.", + "type": "string" + }, + "userType": { + "description": "Optional. Type of this user.", + "enum": [ + "USER_TYPE_UNSPECIFIED", + "ALLOYDB_BUILT_IN", + "ALLOYDB_IAM_USER" + ], + "enumDescriptions": [ + "Unspecified user type.", + "The default user type that authenticates via password-based authentication.", + "Database user that can authenticate via IAM-Based authentication." + ], + "type": "string" + } + }, + "type": "object" + }, + "UserPassword": { + "description": "The username/password for a database user. Used for specifying initial users at cluster creation time.", + "id": "UserPassword", + "properties": { + "password": { + "description": "The initial password for the user.", + "type": "string" + }, + "user": { + "description": "The database username.", + "type": "string" + } + }, + "type": "object" + }, + "WeeklySchedule": { + "description": "A weekly schedule starts a backup at prescribed start times within a day, for the specified days of the week. The weekly schedule message is flexible and can be used to create many types of schedules. For example, to have a daily backup that starts at 22:00, configure the `start_times` field to have one element \"22:00\" and the `days_of_week` field to have all seven days of the week.", + "id": "WeeklySchedule", + "properties": { + "daysOfWeek": { + "description": "The days of the week to perform a backup. If this field is left empty, the default of every day of the week is used.", + "items": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The day of the week is unspecified.", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "type": "string" + }, + "type": "array" + }, + "startTimes": { + "description": "The times during the day to start a backup. The start times are assumed to be in UTC and to be an exact hour (e.g., 04:00:00). If no start times are provided, a single fixed start time is chosen arbitrarily.", + "items": { + "$ref": "GoogleTypeTimeOfDay" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "AlloyDB API", + "version": "v1alpha", + "version_module": true +} \ No newline at end of file diff --git a/discovery/alloydb-v1beta.json b/discovery/alloydb-v1beta.json new file mode 100644 index 0000000000..31af0ce468 --- /dev/null +++ b/discovery/alloydb-v1beta.json @@ -0,0 +1,3571 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "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." + } + } + } + }, + "basePath": "", + "baseUrl": "https://alloydb.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud AlloyDB Admin", + "description": "AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases. ", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/alloydb/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "alloydb:v1beta", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://alloydb.mtls.googleapis.com/", + "name": "alloydb", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "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", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "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.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "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.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "locations": { + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "GoogleCloudLocationLocation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1beta/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "alloydb.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If not set, the service selects a default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}/locations", + "response": { + "$ref": "GoogleCloudLocationListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "backups": { + "methods": { + "create": { + "description": "Creates a new Backup in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/backups", + "httpMethod": "POST", + "id": "alloydb.projects.locations.backups.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "backupId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+parent}/backups", + "request": { + "$ref": "Backup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Backup.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/backups/{backupsId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.backups.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Backup. If an etag is provided and does not match the current etag of the Backup, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. Name of the resource. For the required format, see the comment on the Backup.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Backup.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/backups/{backupsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.backups.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the resource", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Backup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Backups in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/backups", + "httpMethod": "GET", + "id": "alloydb.projects.locations.backups.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListBackupsRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/backups", + "response": { + "$ref": "ListBackupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Backup.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/backups/{backupsId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.backups.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if instance is not found. In that case, a new backup is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Backup resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "Backup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "clusters": { + "methods": { + "create": { + "description": "Creates a new Cluster in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "clusterId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+parent}/clusters", + "request": { + "$ref": "Cluster" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "createsecondary": { + "description": "Creates a cluster of type SECONDARY in the given location using the primary cluster as the source.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters:createsecondary", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.createsecondary", + "parameterOrder": [ + "parent" + ], + "parameters": { + "clusterId": { + "description": "Required. ID of the requesting object (the secondary cluster).", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+parent}/clusters:createsecondary", + "request": { + "$ref": "Cluster" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Cluster.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.clusters.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "force": { + "description": "Optional. Whether to cascade delete child instances for given cluster.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "generateClientCertificate": { + "description": "Generate a client certificate signed by a Cluster CA. The sole purpose of this endpoint is to support AlloyDB connectors and the Auth Proxy client. The endpoint's behavior is subject to change without notice, so do not rely on its behavior remaining constant. Future changes will not break AlloyDB connectors or the Auth Proxy client.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:generateClientCertificate", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.generateClientCertificate", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the parent resource. The required format is: * projects/{project}/locations/{location}/clusters/{cluster}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}:generateClientCertificate", + "request": { + "$ref": "GenerateClientCertificateRequest" + }, + "response": { + "$ref": "GenerateClientCertificateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Cluster.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Optional. The view of the cluster to return. Returns all default fields if not set.", + "enum": [ + "CLUSTER_VIEW_UNSPECIFIED", + "CLUSTER_VIEW_BASIC", + "CLUSTER_VIEW_CONTINUOUS_BACKUP" + ], + "enumDescriptions": [ + "CLUSTER_VIEW_UNSPECIFIED Not specified, equivalent to BASIC.", + "BASIC server responses include all the relevant cluster details, excluding Cluster.ContinuousBackupInfo.EarliestRestorableTime and other view-specific fields. The default value.", + "CONTINUOUS_BACKUP response returns all the fields from BASIC plus the earliest restorable time if continuous backups are enabled. May increase latency." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Cluster" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Clusters in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field. Additionally, you can perform an aggregated list operation by specifying a value with the following format: * projects/{project}/locations/-", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/clusters", + "response": { + "$ref": "ListClustersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Cluster.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.clusters.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if cluster is not found. In that case, a new cluster is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of the cluster resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Cluster resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "Cluster" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "promote": { + "description": "Promotes a SECONDARY cluster. This turns down replication from the PRIMARY cluster and promotes a secondary cluster into its own standalone cluster. Imperative only.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:promote", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.promote", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Cluster.name field", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}:promote", + "request": { + "$ref": "PromoteClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "restore": { + "description": "Creates a new Cluster in a given project and location, with a volume restored from the provided source, either a backup ID or a point-in-time and a source cluster.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters:restore", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.restore", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/clusters:restore", + "request": { + "$ref": "RestoreClusterRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "instances": { + "methods": { + "create": { + "description": "Creates a new Instance in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "instanceId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+parent}/instances", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "createsecondary": { + "description": "Creates a new SECONDARY Instance in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances:createsecondary", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.createsecondary", + "parameterOrder": [ + "parent" + ], + "parameters": { + "instanceId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+parent}/instances:createsecondary", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single Instance.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.clusters.instances.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The current etag of the Instance. If an etag is provided and does not match the current etag of the Instance, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "failover": { + "description": "Forces a Failover for a highly available instance. Failover promotes the HA standby instance as the new primary. Imperative only.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}:failover", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.failover", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}:failover", + "request": { + "$ref": "FailoverInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single Instance.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.instances.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "The view of the instance to return.", + "enum": [ + "INSTANCE_VIEW_UNSPECIFIED", + "INSTANCE_VIEW_BASIC", + "INSTANCE_VIEW_FULL" + ], + "enumDescriptions": [ + "INSTANCE_VIEW_UNSPECIFIED Not specified, equivalent to BASIC.", + "BASIC server responses for a primary or read instance include all the relevant instance details, excluding the details of each node in the instance. The default value.", + "FULL response is equivalent to BASIC for primary instance (for now). For read pool instance, this includes details of each node in the pool." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getConnectionInfo": { + "description": "Get instance metadata used for a connection.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}/connectionInfo", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.instances.getConnectionInfo", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the parent resource. The required format is: projects/{project}/locations/{location}/clusters/{cluster}/instances/{instance}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+parent}/connectionInfo", + "response": { + "$ref": "ConnectionInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "injectFault": { + "description": "Injects fault in an instance. Imperative only.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}:injectFault", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.injectFault", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}:injectFault", + "request": { + "$ref": "InjectFaultRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Instances in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.instances.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. Additionally, you can perform an aggregated list operation by specifying a value with one of the following formats: * projects/{project}/locations/-/clusters/- * projects/{project}/locations/{region}/clusters/-", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/instances", + "response": { + "$ref": "ListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single Instance.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.clusters.instances.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. If set to true, update succeeds even if instance is not found. In that case, a new instance is created and `update_mask` is ignored.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of the instance resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}/instances/{instance_id} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project}/locations/{region}/clusters/{cluster_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Instance resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "restart": { + "description": "Restart an Instance in a cluster. Imperative only.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/instances/{instancesId}:restart", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.instances.restart", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the Instance.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/instances/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}:restart", + "request": { + "$ref": "RestartInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "users": { + "methods": { + "create": { + "description": "Creates a new User in a given project, location, and cluster.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users", + "httpMethod": "POST", + "id": "alloydb.projects.locations.clusters.users.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "userId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+parent}/users", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single User.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users/{usersId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.clusters.users.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the User.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single User.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users/{usersId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.users.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource. For the required format, see the comment on the User.name field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Users in a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users", + "httpMethod": "GET", + "id": "alloydb.projects.locations.clusters.users.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filtering results", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Hint for how to order the results", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListUsersRequest", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/users", + "response": { + "$ref": "ListUsersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single User.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/users/{usersId}", + "httpMethod": "PATCH", + "id": "alloydb.projects.locations.clusters.users.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "allowMissing": { + "description": "Optional. Allow missing fields in the update mask.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Output only. Name of the resource in the form of projects/{project}/locations/{location}/cluster/{cluster}/users/{user}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/users/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the User resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, the backend validates the request, but doesn't actually execute it.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1beta/{+name}", + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "alloydb.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}:cancel", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "alloydb.projects.locations.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "alloydb.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "alloydb.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "supportedDatabaseFlags": { + "methods": { + "list": { + "description": "Lists SupportedDatabaseFlags for a given project and location.", + "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/supportedDatabaseFlags", + "httpMethod": "GET", + "id": "alloydb.projects.locations.supportedDatabaseFlags.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource. The required format is: * projects/{project}/locations/{location} Regardless of the parent specified here, as long it is contains a valid project and location, the service will return a static list of supported flags resources. Note that we do not yet support region-specific flags.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta/{+parent}/supportedDatabaseFlags", + "response": { + "$ref": "ListSupportedDatabaseFlagsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20230821", + "rootUrl": "https://alloydb.googleapis.com/", + "schemas": { + "AutomatedBackupPolicy": { + "description": "Message describing the user-specified automated backup policy. All fields in the automated backup policy are optional. Defaults for each field are provided if they are not set.", + "id": "AutomatedBackupPolicy", + "properties": { + "backupWindow": { + "description": "The length of the time window during which a backup can be taken. If a backup does not succeed within this time window, it will be canceled and considered failed. The backup window must be at least 5 minutes long. There is no upper bound on the window. If not set, it defaults to 1 hour.", + "format": "google-duration", + "type": "string" + }, + "enabled": { + "description": "Whether automated automated backups are enabled. If not set, defaults to true.", + "type": "boolean" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to backups created using this configuration.", + "type": "object" + }, + "location": { + "description": "The location where the backup will be stored. Currently, the only supported option is to store the backup in the same region as the cluster. If empty, defaults to the region of the cluster.", + "type": "string" + }, + "quantityBasedRetention": { + "$ref": "QuantityBasedRetention", + "description": "Quantity-based Backup retention policy to retain recent backups." + }, + "timeBasedRetention": { + "$ref": "TimeBasedRetention", + "description": "Time-based Backup retention policy." + }, + "weeklySchedule": { + "$ref": "WeeklySchedule", + "description": "Weekly schedule for the Backup." + } + }, + "type": "object" + }, + "Backup": { + "description": "Message describing Backup object", + "id": "Backup", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128", + "type": "object" + }, + "clusterName": { + "description": "Required. The full resource name of the backup source cluster (e.g., projects/{project}/locations/{region}/clusters/{cluster_id}).", + "type": "string" + }, + "clusterUid": { + "description": "Output only. The system-generated UID of the cluster which was used to create this resource.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "databaseVersion": { + "description": "Output only. The database engine major version of the cluster this backup was created from. Any restored cluster created from this backup will have the same database version.", + "enum": [ + "DATABASE_VERSION_UNSPECIFIED", + "POSTGRES_13", + "POSTGRES_14", + "POSTGRES_15" + ], + "enumDeprecated": [ + false, + true, + false, + false + ], + "enumDescriptions": [ + "This is an unknown database version.", + "DEPRECATED - The database version is Postgres 13.", + "The database version is Postgres 14.", + "The database version is Postgres 15." + ], + "readOnly": true, + "type": "string" + }, + "deleteTime": { + "description": "Output only. Delete time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "User-provided description of the backup.", + "type": "string" + }, + "displayName": { + "description": "User-settable and human-readable display name for the Backup.", + "type": "string" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config can be specified to encrypt the backup with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data." + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Output only. The encryption information for the backup.", + "readOnly": true + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "expiryQuantity": { + "$ref": "QuantityBasedExpiry", + "description": "Output only. The QuantityBasedExpiry of the backup, specified by the backup's retention policy. Once the expiry quantity is over retention, the backup is eligible to be garbage collected.", + "readOnly": true + }, + "expiryTime": { + "description": "Output only. The time at which after the backup is eligible to be garbage collected. It is the duration specified by the backup's retention policy, added to the backup's create_time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels as key value pairs", + "type": "object" + }, + "name": { + "description": "Output only. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "readOnly": true, + "type": "string" + }, + "reconciling": { + "description": "Output only. Reconciling (https://google.aip.dev/128#reconciliation), if true, indicates that the service is actively updating the resource. This can happen due to user-triggered updates or system actions like failover or maintenance.", + "readOnly": true, + "type": "boolean" + }, + "sizeBytes": { + "description": "Output only. The size of the backup in bytes.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The current state of the backup.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "CREATING", + "FAILED", + "DELETING" + ], + "enumDescriptions": [ + "The state of the backup is unknown.", + "The backup is ready.", + "The backup is creating.", + "The backup failed.", + "The backup is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "type": { + "description": "The backup type, which suggests the trigger for the backup.", + "enum": [ + "TYPE_UNSPECIFIED", + "ON_DEMAND", + "AUTOMATED", + "CONTINUOUS" + ], + "enumDescriptions": [ + "Backup Type is unknown.", + "ON_DEMAND backups that were triggered by the customer (e.g., not AUTOMATED).", + "AUTOMATED backups triggered by the automated backups scheduler pursuant to an automated backup policy.", + "CONTINUOUS backups triggered by the automated backups scheduler due to a continuous backup policy." + ], + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BackupSource": { + "description": "Message describing a BackupSource.", + "id": "BackupSource", + "properties": { + "backupName": { + "description": "Required. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id}", + "type": "string" + }, + "backupUid": { + "description": "Output only. The system-generated UID of the backup which was used to create this resource. The UID is generated when the backup is created, and it is retained until the backup is deleted.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ClientConnectionConfig": { + "description": "Client connection configuration", + "id": "ClientConnectionConfig", + "properties": { + "requireConnectors": { + "description": "Optional. Configuration to enforce connectors only (ex: AuthProxy) connections to the database.", + "type": "boolean" + }, + "sslConfig": { + "$ref": "SslConfig", + "description": "Optional. SSL config option for this instance." + } + }, + "type": "object" + }, + "CloudControl2SharedOperationsReconciliationOperationMetadata": { + "description": "Operation metadata returned by the CLH during resource state reconciliation.", + "id": "CloudControl2SharedOperationsReconciliationOperationMetadata", + "properties": { + "deleteResource": { + "deprecated": true, + "description": "DEPRECATED. Use exclusive_action instead.", + "type": "boolean" + }, + "exclusiveAction": { + "description": "Excluisive action returned by the CLH.", + "enum": [ + "UNKNOWN_REPAIR_ACTION", + "DELETE", + "RETRY" + ], + "enumDeprecated": [ + false, + true, + false + ], + "enumDescriptions": [ + "Unknown repair action.", + "The resource has to be deleted. When using this bit, the CLH should fail the operation. DEPRECATED. Instead use DELETE_RESOURCE OperationSignal in SideChannel.", + "This resource could not be repaired but the repair should be tried again at a later time. This can happen if there is a dependency that needs to be resolved first- e.g. if a parent resource must be repaired before a child resource." + ], + "type": "string" + } + }, + "type": "object" + }, + "Cluster": { + "description": "A cluster is a collection of regional AlloyDB resources. It can include a primary instance and one or more read pool instances. All cluster resources share a storage layer, which scales as needed.", + "id": "Cluster", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128", + "type": "object" + }, + "automatedBackupPolicy": { + "$ref": "AutomatedBackupPolicy", + "description": "The automated backup policy for this cluster. If no policy is provided then the default policy will be used. If backups are supported for the cluster, the default policy takes one backup a day, has a backup window of 1 hour, and retains backups for 14 days. For more information on the defaults, consult the documentation for the message type." + }, + "backupSource": { + "$ref": "BackupSource", + "description": "Output only. Cluster created from backup.", + "readOnly": true + }, + "clusterType": { + "description": "Output only. The type of the cluster. This is an output-only field and it's populated at the Cluster creation time or the Cluster promotion time. The cluster type is determined by which RPC was used to create the cluster (i.e. `CreateCluster` vs. `CreateSecondaryCluster`", + "enum": [ + "CLUSTER_TYPE_UNSPECIFIED", + "PRIMARY", + "SECONDARY" + ], + "enumDescriptions": [ + "The type of the cluster is unknown.", + "Primary cluster that support read and write operations.", + "Secondary cluster that is replicating from another region. This only supports read." + ], + "readOnly": true, + "type": "string" + }, + "continuousBackupConfig": { + "$ref": "ContinuousBackupConfig", + "description": "Optional. Continuous backup configuration for this cluster." + }, + "continuousBackupInfo": { + "$ref": "ContinuousBackupInfo", + "description": "Output only. Continuous backup properties for this cluster.", + "readOnly": true + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "databaseVersion": { + "description": "Optional. The database engine major version. This is an optional field and it is populated at the Cluster creation time. If a database version is not supplied at cluster creation time, then a default database version will be used.", + "enum": [ + "DATABASE_VERSION_UNSPECIFIED", + "POSTGRES_13", + "POSTGRES_14", + "POSTGRES_15" + ], + "enumDeprecated": [ + false, + true, + false, + false + ], + "enumDescriptions": [ + "This is an unknown database version.", + "DEPRECATED - The database version is Postgres 13.", + "The database version is Postgres 14.", + "The database version is Postgres 15." + ], + "type": "string" + }, + "deleteTime": { + "description": "Output only. Delete time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "User-settable and human-readable display name for the Cluster.", + "type": "string" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "Optional. The encryption config can be specified to encrypt the data disks and other persistent data resources of a cluster with a customer-managed encryption key (CMEK). When this field is not specified, the cluster will then use default encryption scheme to protect the user data." + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Output only. The encryption information for the cluster.", + "readOnly": true + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "initialUser": { + "$ref": "UserPassword", + "description": "Input only. Initial user to setup during cluster creation. Required. If used in `RestoreCluster` this is ignored." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels as key value pairs", + "type": "object" + }, + "migrationSource": { + "$ref": "MigrationSource", + "description": "Output only. Cluster created via DMS migration.", + "readOnly": true + }, + "name": { + "description": "Output only. The name of the cluster resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project}/locations/{region}", + "readOnly": true, + "type": "string" + }, + "network": { + "deprecated": true, + "description": "Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: \"projects/{project}/global/networks/{network_id}\". This is required to create a cluster. It can be updated, but it cannot be removed. Deprecated, use network_config.network instead.", + "type": "string" + }, + "networkConfig": { + "$ref": "NetworkConfig" + }, + "primaryConfig": { + "$ref": "PrimaryConfig", + "description": "Output only. Cross Region replication config specific to PRIMARY cluster.", + "readOnly": true + }, + "reconciling": { + "description": "Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Cluster does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance.", + "readOnly": true, + "type": "boolean" + }, + "secondaryConfig": { + "$ref": "SecondaryConfig", + "description": "Cross Region replication config specific to SECONDARY cluster." + }, + "sslConfig": { + "$ref": "SslConfig", + "deprecated": true, + "description": "SSL configuration for this AlloyDB cluster." + }, + "state": { + "description": "Output only. The current serving state of the cluster.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "STOPPED", + "EMPTY", + "CREATING", + "DELETING", + "FAILED", + "BOOTSTRAPPING", + "MAINTENANCE", + "PROMOTING" + ], + "enumDescriptions": [ + "The state of the cluster is unknown.", + "The cluster is active and running.", + "The cluster is stopped. All instances in the cluster are stopped. Customers can start a stopped cluster at any point and all their instances will come back to life with same names and IP resources. In this state, customer pays for storage. Associated backups could also be present in a stopped cluster.", + "The cluster is empty and has no associated resources. All instances, associated storage and backups have been deleted.", + "The cluster is being created.", + "The cluster is being deleted.", + "The creation of the cluster failed.", + "The cluster is bootstrapping with data from some other source. Direct mutations to the cluster (e.g. adding read pool) are not allowed.", + "The cluster is under maintenance. AlloyDB regularly performs maintenance and upgrades on customer clusters. Updates on the cluster are not allowed while the cluster is in this state.", + "The cluster is being promoted." + ], + "readOnly": true, + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ConnectionInfo": { + "description": "ConnectionInfo singleton resource. https://google.aip.dev/156", + "id": "ConnectionInfo", + "properties": { + "instanceUid": { + "description": "Output only. The unique ID of the Instance.", + "readOnly": true, + "type": "string" + }, + "ipAddress": { + "description": "Output only. The private network IP address for the Instance. This is the default IP for the instance and is always created (even if enable_public_ip is set). This is the connection endpoint for an end-user application.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the ConnectionInfo singleton resource, e.g.: projects/{project}/locations/{location}/clusters/*/instances/*/connectionInfo This field currently has no semantic meaning.", + "type": "string" + }, + "pemCertificateChain": { + "deprecated": true, + "description": "Output only. The pem-encoded chain that may be used to verify the X.509 certificate. Expected to be in issuer-to-root order according to RFC 5246.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "ContinuousBackupConfig": { + "description": "ContinuousBackupConfig describes the continuous backups recovery configurations of a cluster.", + "id": "ContinuousBackupConfig", + "properties": { + "enabled": { + "description": "Whether ContinuousBackup is enabled.", + "type": "boolean" + }, + "encryptionConfig": { + "$ref": "EncryptionConfig", + "description": "The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data." + }, + "recoveryWindowDays": { + "description": "The number of days that are eligible to restore from using PITR. To support the entire recovery window, backups and logs are retained for one day more than the recovery window. If not set, defaults to 14 days.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ContinuousBackupInfo": { + "description": "ContinuousBackupInfo describes the continuous backup properties of a cluster.", + "id": "ContinuousBackupInfo", + "properties": { + "earliestRestorableTime": { + "description": "Output only. The earliest restorable time that can be restored to. Output only field.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "enabledTime": { + "description": "Output only. When ContinuousBackup was most recently enabled. Set to null if ContinuousBackup is not enabled.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Output only. The encryption information for the WALs and backups required for ContinuousBackup.", + "readOnly": true + }, + "schedule": { + "description": "Output only. Days of the week on which a continuous backup is taken. Output only field. Ignored if passed into the request.", + "items": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The day of the week is unspecified.", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "ContinuousBackupSource": { + "description": "Message describing a ContinuousBackupSource.", + "id": "ContinuousBackupSource", + "properties": { + "cluster": { + "description": "Required. The source cluster from which to restore. This cluster must have continuous backup enabled for this operation to succeed. For the required format, see the comment on the Cluster.name field.", + "type": "string" + }, + "pointInTime": { + "description": "Required. The point in time to restore to.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "Empty": { + "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); }", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "EncryptionConfig": { + "description": "EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key).", + "id": "EncryptionConfig", + "properties": { + "kmsKeyName": { + "description": "The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]", + "type": "string" + } + }, + "type": "object" + }, + "EncryptionInfo": { + "description": "EncryptionInfo describes the encryption information of a cluster or a backup.", + "id": "EncryptionInfo", + "properties": { + "encryptionType": { + "description": "Output only. Type of encryption.", + "enum": [ + "TYPE_UNSPECIFIED", + "GOOGLE_DEFAULT_ENCRYPTION", + "CUSTOMER_MANAGED_ENCRYPTION" + ], + "enumDescriptions": [ + "Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.", + "The data is encrypted at rest with a key that is fully managed by Google. No key version will be populated. This is the default state.", + "The data is encrypted at rest with a key that is managed by the customer. KMS key versions will be populated." + ], + "readOnly": true, + "type": "string" + }, + "kmsKeyVersions": { + "description": "Output only. Cloud KMS key versions that are being used to protect the database or the backup.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "FailoverInstanceRequest": { + "description": "Message for triggering failover on an Instance", + "id": "FailoverInstanceRequest", + "properties": { + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the failover.", + "type": "boolean" + } + }, + "type": "object" + }, + "GenerateClientCertificateRequest": { + "description": "Message for requests to generate a client certificate signed by the Cluster CA.", + "id": "GenerateClientCertificateRequest", + "properties": { + "certDuration": { + "description": "Optional. An optional hint to the endpoint to generate the client certificate with the requested duration. The duration can be from 1 hour to 24 hours. The endpoint may or may not honor the hint. If the hint is left unspecified or is not honored, then the endpoint will pick an appropriate default duration.", + "format": "google-duration", + "type": "string" + }, + "pemCsr": { + "deprecated": true, + "description": "Optional. A pem-encoded X.509 certificate signing request (CSR).", + "type": "string" + }, + "publicKey": { + "description": "Optional. The public key from the client.", + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "useMetadataExchange": { + "description": "Optional. An optional hint to the endpoint to generate a client ceritificate that can be used by AlloyDB connectors to exchange additional metadata with the server after TLS handshake.", + "type": "boolean" + } + }, + "type": "object" + }, + "GenerateClientCertificateResponse": { + "description": "Message returned by a GenerateClientCertificate operation.", + "id": "GenerateClientCertificateResponse", + "properties": { + "caCert": { + "description": "Optional. The pem-encoded cluster ca X.509 certificate.", + "type": "string" + }, + "pemCertificate": { + "description": "Output only. The pem-encoded, signed X.509 certificate.", + "readOnly": true, + "type": "string" + }, + "pemCertificateChain": { + "description": "Output only. The pem-encoded chain that may be used to verify the X.509 certificate. Expected to be in issuer-to-root order according to RFC 5246.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudLocationListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "GoogleCloudLocationListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "GoogleCloudLocationLocation" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudLocationLocation": { + "description": "A resource that represents a Google Cloud location.", + "id": "GoogleCloudLocationLocation", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeTimeOfDay": { + "description": "Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.", + "id": "GoogleTypeTimeOfDay", + "properties": { + "hours": { + "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "InjectFaultRequest": { + "description": "Message for triggering fault injection on an instance", + "id": "InjectFaultRequest", + "properties": { + "faultType": { + "description": "Required. The type of fault to be injected in an instance.", + "enum": [ + "FAULT_TYPE_UNSPECIFIED", + "STOP_VM" + ], + "enumDescriptions": [ + "The fault type is unknown.", + "Stop the VM" + ], + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the fault injection.", + "type": "boolean" + } + }, + "type": "object" + }, + "Instance": { + "description": "An Instance is a computing unit that an end customer can connect to. It's the main unit of computing resources in AlloyDB.", + "id": "Instance", + "properties": { + "annotations": { + "additionalProperties": { + "type": "string" + }, + "description": "Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128", + "type": "object" + }, + "availabilityType": { + "description": "Availability type of an Instance. If empty, defaults to REGIONAL for primary instances. For read pools, availability_type is always UNSPECIFIED. Instances in the read pools are evenly distributed across available zones within the region (i.e. read pools with more than one node will have a node in at least two zones).", + "enum": [ + "AVAILABILITY_TYPE_UNSPECIFIED", + "ZONAL", + "REGIONAL" + ], + "enumDescriptions": [ + "This is an unknown Availability type.", + "Zonal available instance.", + "Regional (or Highly) available instance." + ], + "type": "string" + }, + "clientConnectionConfig": { + "$ref": "ClientConnectionConfig", + "description": "Optional. Client connection specific configurations" + }, + "createTime": { + "description": "Output only. Create time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "databaseFlags": { + "additionalProperties": { + "type": "string" + }, + "description": "Database flags. Set at instance level. * They are copied from primary instance on read instance creation. * Read instances can set new or override existing flags that are relevant for reads, e.g. for enabling columnar cache on a read instance. Flags set on read instance may or may not be present on primary. This is a list of \"key\": \"value\" pairs. \"key\": The name of the flag. These flags are passed at instance setup time, so include both server options and system variables for Postgres. Flags are specified with underscores, not hyphens. \"value\": The value of the flag. Booleans 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" + }, + "deleteTime": { + "description": "Output only. Delete time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "User-settable and human-readable display name for the Instance.", + "type": "string" + }, + "etag": { + "description": "For Resource freshness validation (https://google.aip.dev/154)", + "type": "string" + }, + "gceZone": { + "description": "The Compute Engine zone that the instance should serve from, per https://cloud.google.com/compute/docs/regions-zones This can ONLY be specified for ZONAL instances. If present for a REGIONAL instance, an error will be thrown. If this is absent for a ZONAL instance, instance is created in a random zone with available capacity.", + "type": "string" + }, + "instanceType": { + "description": "Required. The type of the instance. Specified at creation time.", + "enum": [ + "INSTANCE_TYPE_UNSPECIFIED", + "PRIMARY", + "READ_POOL", + "SECONDARY" + ], + "enumDescriptions": [ + "The type of the instance is unknown.", + "PRIMARY instances support read and write operations.", + "READ POOL instances support read operations only. Each read pool instance consists of one or more homogeneous nodes. * Read pool of size 1 can only have zonal availability. * Read pools with node count of 2 or more can have regional availability (nodes are present in 2 or more zones in a region).", + "SECONDARY instances support read operations only. SECONDARY instance is a cross-region read replica" + ], + "type": "string" + }, + "ipAddress": { + "description": "Output only. The IP address for the Instance. This is the connection endpoint for an end-user application.", + "readOnly": true, + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels as key value pairs", + "type": "object" + }, + "machineConfig": { + "$ref": "MachineConfig", + "description": "Configurations for the machines that host the underlying database engine." + }, + "name": { + "description": "Output only. The name of the instance resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}/instances/{instance_id} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project}/locations/{region}/clusters/{cluster_id}", + "readOnly": true, + "type": "string" + }, + "nodes": { + "description": "Output only. List of available read-only VMs in this instance, including the standby for a PRIMARY instance.", + "items": { + "$ref": "Node" + }, + "readOnly": true, + "type": "array" + }, + "queryInsightsConfig": { + "$ref": "QueryInsightsInstanceConfig", + "description": "Configuration for query insights." + }, + "readPoolConfig": { + "$ref": "ReadPoolConfig", + "description": "Read pool specific config." + }, + "reconciling": { + "description": "Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Instance does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance.", + "readOnly": true, + "type": "boolean" + }, + "state": { + "description": "Output only. The current serving state of the instance.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "STOPPED", + "CREATING", + "DELETING", + "MAINTENANCE", + "FAILED", + "BOOTSTRAPPING", + "PROMOTING" + ], + "enumDescriptions": [ + "The state of the instance is unknown.", + "The instance is active and running.", + "The instance is stopped. Instance name and IP resources are preserved.", + "The instance is being created.", + "The instance is being deleted.", + "The instance is down for maintenance.", + "The creation of the instance failed or a fatal error occurred during an operation on the instance. Note: Instances in this state would tried to be auto-repaired. And Customers should be able to restart, update or delete these instances.", + "Index 7 is used in the producer apis for ROLLED_BACK state. Keeping that index unused in case that state also needs to exposed via consumer apis in future. The instance has been configured to sync data from some other source.", + "The instance is being promoted." + ], + "readOnly": true, + "type": "string" + }, + "uid": { + "description": "Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted.", + "readOnly": true, + "type": "string" + }, + "updatePolicy": { + "$ref": "UpdatePolicy", + "description": "Update policy that will be applied during instance update. This field is not persisted when you update the instance. To use a non-default update policy, you must specify explicitly specify the value in each update request." + }, + "updateTime": { + "description": "Output only. Update time stamp", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "writableNode": { + "$ref": "Node", + "description": "Output only. This is set for the read-write VM of the PRIMARY instance only.", + "readOnly": true + } + }, + "type": "object" + }, + "IntegerRestrictions": { + "description": "Restrictions on INTEGER type values.", + "id": "IntegerRestrictions", + "properties": { + "maxValue": { + "description": "The maximum value that can be specified, if applicable.", + "format": "int64", + "type": "string" + }, + "minValue": { + "description": "The minimum value that can be specified, if applicable.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ListBackupsResponse": { + "description": "Message for response to listing Backups", + "id": "ListBackupsResponse", + "properties": { + "backups": { + "description": "The list of Backup", + "items": { + "$ref": "Backup" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListClustersResponse": { + "description": "Message for response to listing Clusters", + "id": "ListClustersResponse", + "properties": { + "clusters": { + "description": "The list of Cluster", + "items": { + "$ref": "Cluster" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListInstancesResponse": { + "description": "Message for response to listing Instances", + "id": "ListInstancesResponse", + "properties": { + "instances": { + "description": "The list of Instance", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListSupportedDatabaseFlagsResponse": { + "description": "Message for response to listing SupportedDatabaseFlags.", + "id": "ListSupportedDatabaseFlagsResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "supportedDatabaseFlags": { + "description": "The list of SupportedDatabaseFlags.", + "items": { + "$ref": "SupportedDatabaseFlag" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListUsersResponse": { + "description": "Message for response to listing Users", + "id": "ListUsersResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + }, + "users": { + "description": "The list of User", + "items": { + "$ref": "User" + }, + "type": "array" + } + }, + "type": "object" + }, + "MachineConfig": { + "description": "MachineConfig describes the configuration of a machine.", + "id": "MachineConfig", + "properties": { + "cpuCount": { + "description": "The number of CPU's in the VM instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "MigrationSource": { + "description": "Subset of the source instance configuration that is available when reading the cluster resource.", + "id": "MigrationSource", + "properties": { + "hostPort": { + "description": "Output only. The host and port of the on-premises instance in host:port format", + "readOnly": true, + "type": "string" + }, + "referenceId": { + "description": "Output only. Place holder for the external source identifier(e.g DMS job name) that created the cluster.", + "readOnly": true, + "type": "string" + }, + "sourceType": { + "description": "Output only. Type of migration source.", + "enum": [ + "MIGRATION_SOURCE_TYPE_UNSPECIFIED", + "DMS" + ], + "enumDescriptions": [ + "Migration source is unknown.", + "DMS source means the cluster was created via DMS migration job." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfig": { + "description": "Metadata related to network configuration.", + "id": "NetworkConfig", + "properties": { + "allocatedIpRange": { + "description": "Optional. Name of the allocated IP range for the private IP AlloyDB cluster, for example: \"google-managed-services-default\". If set, the instance IPs for this cluster will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. Field name is intended to be consistent with CloudSQL.", + "type": "string" + }, + "network": { + "description": "Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: \"projects/{project_number}/global/networks/{network_id}\". This is required to create a cluster. It can be updated, but it cannot be removed.", + "type": "string" + } + }, + "type": "object" + }, + "Node": { + "description": "Details of a single node in the instance. Nodes in an AlloyDB instance are ephemereal, they can change during update, failover, autohealing and resize operations.", + "id": "Node", + "properties": { + "id": { + "description": "The identifier of the VM e.g. \"test-read-0601-407e52be-ms3l\".", + "type": "string" + }, + "ip": { + "description": "The private IP address of the VM e.g. \"10.57.0.34\".", + "type": "string" + }, + "state": { + "description": "Determined by state of the compute VM and postgres-service health. Compute VM state can have values listed in https://cloud.google.com/compute/docs/instances/instance-life-cycle and postgres-service health can have values: HEALTHY and UNHEALTHY.", + "type": "string" + }, + "zoneId": { + "description": "The Compute Engine zone of the VM e.g. \"us-central1-b\".", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "OperationMetadata", + "properties": { + "apiVersion": { + "description": "Output only. API version used to start the operation.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "requestedCancellation": { + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "readOnly": true, + "type": "boolean" + }, + "statusMessage": { + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, + "type": "string" + }, + "verb": { + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "PrimaryConfig": { + "description": "Configuration for the primary cluster. It has the list of clusters that are replicating from this cluster. This should be set if and only if the cluster is of type PRIMARY.", + "id": "PrimaryConfig", + "properties": { + "secondaryClusterNames": { + "description": "Output only. Names of the clusters that are replicating from this cluster.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "PromoteClusterRequest": { + "description": "Message for promoting a Cluster", + "id": "PromoteClusterRequest", + "properties": { + "etag": { + "description": "Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned.", + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete.", + "type": "boolean" + } + }, + "type": "object" + }, + "QuantityBasedExpiry": { + "description": "A backup's position in a quantity-based retention queue, of backups with the same source cluster and type, with length, retention, specified by the backup's retention policy. Once the position is greater than the retention, the backup is eligible to be garbage collected. Example: 5 backups from the same source cluster and type with a quantity-based retention of 3 and denoted by backup_id (position, retention). Safe: backup_5 (1, 3), backup_4, (2, 3), backup_3 (3, 3). Awaiting garbage collection: backup_2 (4, 3), backup_1 (5, 3)", + "id": "QuantityBasedExpiry", + "properties": { + "retentionCount": { + "description": "Output only. The backup's position among its backups with the same source cluster and type, by descending chronological order create time(i.e. newest first).", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "totalRetentionCount": { + "description": "Output only. The length of the quantity-based queue, specified by the backup's retention policy.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "QuantityBasedRetention": { + "description": "A quantity based policy specifies that a certain number of the most recent successful backups should be retained.", + "id": "QuantityBasedRetention", + "properties": { + "count": { + "description": "The number of backups to retain.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "QueryInsightsInstanceConfig": { + "description": "QueryInsights Instance specific configuration.", + "id": "QueryInsightsInstanceConfig", + "properties": { + "queryPlansPerMinute": { + "description": "Number of query execution plans captured by Insights per minute for all queries combined. The default value is 5. Any integer between 0 and 20 is considered valid.", + "format": "uint32", + "type": "integer" + }, + "queryStringLength": { + "description": "Query string length. The default value is 1024. Any integer between 256 and 4500 is considered valid.", + "format": "uint32", + "type": "integer" + }, + "recordApplicationTags": { + "description": "Record application tags for an instance. This flag is turned \"on\" by default.", + "type": "boolean" + }, + "recordClientAddress": { + "description": "Record client address for an instance. Client address is PII information. This flag is turned \"on\" by default.", + "type": "boolean" + } + }, + "type": "object" + }, + "ReadPoolConfig": { + "description": "Configuration for a read pool instance.", + "id": "ReadPoolConfig", + "properties": { + "nodeCount": { + "description": "Read capacity, i.e. number of nodes in a read pool instance.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RestartInstanceRequest": { + "id": "RestartInstanceRequest", + "properties": { + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the restart.", + "type": "boolean" + } + }, + "type": "object" + }, + "RestoreClusterRequest": { + "description": "Message for restoring a Cluster from a backup or another cluster at a given point in time.", + "id": "RestoreClusterRequest", + "properties": { + "backupSource": { + "$ref": "BackupSource", + "description": "Backup source." + }, + "cluster": { + "$ref": "Cluster", + "description": "Required. The resource being created" + }, + "clusterId": { + "description": "Required. ID of the requesting object.", + "type": "string" + }, + "continuousBackupSource": { + "$ref": "ContinuousBackupSource", + "description": "ContinuousBackup source. Continuous backup needs to be enabled in the source cluster for this operation to succeed." + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "validateOnly": { + "description": "Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the import request.", + "type": "boolean" + } + }, + "type": "object" + }, + "SecondaryConfig": { + "description": "Configuration information for the secondary cluster. This should be set if and only if the cluster is of type SECONDARY.", + "id": "SecondaryConfig", + "properties": { + "primaryClusterName": { + "description": "The name of the primary cluster name with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}", + "type": "string" + } + }, + "type": "object" + }, + "SslConfig": { + "description": "SSL configuration.", + "id": "SslConfig", + "properties": { + "caSource": { + "description": "Optional. Certificate Authority (CA) source. Only CA_SOURCE_MANAGED is supported currently, and is the default value.", + "enum": [ + "CA_SOURCE_UNSPECIFIED", + "CA_SOURCE_MANAGED" + ], + "enumDescriptions": [ + "Certificate Authority (CA) source not specified. Defaults to CA_SOURCE_MANAGED.", + "Certificate Authority (CA) managed by the AlloyDB Cluster." + ], + "type": "string" + }, + "sslMode": { + "description": "Optional. SSL mode. Specifies client-server SSL/TLS connection behavior.", + "enum": [ + "SSL_MODE_UNSPECIFIED", + "SSL_MODE_ALLOW", + "SSL_MODE_REQUIRE", + "SSL_MODE_VERIFY_CA", + "ALLOW_UNENCRYPTED_AND_ENCRYPTED", + "ENCRYPTED_ONLY" + ], + "enumDeprecated": [ + false, + true, + true, + true, + false, + false + ], + "enumDescriptions": [ + "SSL mode not specified. Defaults to ENCRYPTED_ONLY.", + "SSL connections are optional. CA verification not enforced.", + "SSL connections are required. CA verification not enforced. Clients may use locally self-signed certificates (default psql client behavior).", + "SSL connections are required. CA verification enforced. Clients must have certificates signed by a Cluster CA, e.g. via GenerateClientCertificate.", + "SSL connections are optional. CA verification not enforced.", + "SSL connections are required. CA verification not enforced." + ], + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "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": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "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" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration": { + "description": "Configuration for availability of database instance", + "id": "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration", + "properties": { + "availabilityType": { + "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).", + "enum": [ + "AVAILABILITY_TYPE_UNSPECIFIED", + "ZONAL", + "REGIONAL", + "MULTI_REGIONAL", + "AVAILABILITY_TYPE_OTHER" + ], + "enumDescriptions": [ + "", + "Zonal available instance.", + "Regional available instance.", + "Multi regional instance", + "For rest of the other category" + ], + "type": "string" + }, + "externalReplicaConfigured": { + "type": "boolean" + }, + "promotableReplicaConfigured": { + "type": "boolean" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainBackupConfiguration": { + "description": "Configuration for automatic backups", + "id": "StorageDatabasecenterPartnerapiV1mainBackupConfiguration", + "properties": { + "automatedBackupEnabled": { + "description": "Whether customer visible automated backups are enabled on the instance.", + "type": "boolean" + }, + "backupRetentionSettings": { + "$ref": "StorageDatabasecenterPartnerapiV1mainRetentionSettings", + "description": "Backup retention settings." + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainBackupRun": { + "description": "A backup run.", + "id": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "properties": { + "endTime": { + "description": "The time the backup operation completed. REQUIRED", + "format": "google-datetime", + "type": "string" + }, + "error": { + "$ref": "StorageDatabasecenterPartnerapiV1mainOperationError", + "description": "Information about why the backup operation failed. This is only present if the run has the FAILED status. OPTIONAL" + }, + "startTime": { + "description": "The time the backup operation started. REQUIRED", + "format": "google-datetime", + "type": "string" + }, + "status": { + "description": "The status of this run. REQUIRED", + "enum": [ + "STATUS_UNSPECIFIED", + "SUCCESSFUL", + "FAILED" + ], + "enumDescriptions": [ + "", + "The backup was successful.", + "The backup was unsuccessful." + ], + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainDatabaseResourceFeed": { + "description": "DatabaseResourceFeed is the top level proto to be used to ingest different database resource level events into Condor platform.", + "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceFeed", + "properties": { + "feedTimestamp": { + "description": "Required. Timestamp when feed is generated.", + "format": "google-datetime", + "type": "string" + }, + "feedType": { + "description": "Required. Type feed to be ingested into condor", + "enum": [ + "FEEDTYPE_UNSPECIFIED", + "RESOURCE_METADATA", + "OBSERVABILITY_DATA", + "COMPLIANCE_DATA" + ], + "enumDescriptions": [ + "", + "Database resource metadata feed from control plane", + "Database resource monitoring data", + "Database resource compliance feed" + ], + "type": "string" + }, + "resourceId": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "description": "Required. Primary key associated with the Resource" + }, + "resourceMetadata": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", + "description": "More feed data would be added in subsequent CLs" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId": { + "description": "DatabaseResourceId will serve as primary key for any resource ingestion event.", + "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "properties": { + "provider": { + "description": "Required. Cloud provider name. Ex: GCP/AWS/Azure/OnPrem/SelfManaged", + "enum": [ + "PROVIDER_UNSPECIFIED", + "GCP", + "AWS", + "AZURE", + "ONPREM", + "SELFMANAGED", + "PROVIDER_OTHER" + ], + "enumDescriptions": [ + "", + "Google cloud platform provider", + "Amazon web service", + "Azure web service", + "On-prem database provider", + "Self-managed database provider", + "For rest of the other category" + ], + "type": "string" + }, + "resourceType": { + "description": "Required. The type of resource this ID is identifying. Ex google.sqladmin.Instance, google.alloydb.cluster, google.sqladmin.Backup REQUIRED", + "type": "string" + }, + "uniqueId": { + "description": "Required. A service-local token that distinguishes this resource from other resources within the same service.", + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata": { + "description": "Common model for database resource instance metadata.", + "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", + "properties": { + "availabilityConfiguration": { + "$ref": "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration", + "description": "Availability configuration for this instance" + }, + "backupConfiguration": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupConfiguration", + "description": "Backup configuration for this instance" + }, + "backupRun": { + "$ref": "StorageDatabasecenterPartnerapiV1mainBackupRun", + "description": "Latest backup run information for this instance" + }, + "creationTime": { + "description": "The creation time of the resource, i.e. the time when resource is created and recorded in partner service.", + "format": "google-datetime", + "type": "string" + }, + "currentState": { + "description": "Current state of the instance.", + "enum": [ + "STATE_UNSPECIFIED", + "HEALTHY", + "UNHEALTHY", + "STATE_OTHER" + ], + "enumDescriptions": [ + "", + "The instance is running.", + "Instance being created, updated, deleted or under maintenance", + "For rest of the other category" + ], + "type": "string" + }, + "expectedState": { + "description": "The actual instance state.", + "enum": [ + "STATE_UNSPECIFIED", + "HEALTHY", + "UNHEALTHY", + "STATE_OTHER" + ], + "enumDescriptions": [ + "", + "The instance is running.", + "Instance being created, updated, deleted or under maintenance", + "For rest of the other category" + ], + "type": "string" + }, + "id": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "description": "Required. Unique identifier for a Database resource" + }, + "instanceType": { + "description": "The type of the instance. Specified at creation time.", + "enum": [ + "INSTANCE_TYPE_UNSPECIFIED", + "PRIMARY", + "READ_REPLICA", + "OTHER" + ], + "enumDescriptions": [ + "", + "A regular primary database instance.", + "An instance acting as a read-replica.", + "For rest of the other categories." + ], + "type": "string" + }, + "location": { + "description": "The resource location. REQUIRED", + "type": "string" + }, + "primaryResourceId": { + "$ref": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceId", + "description": "Unique identifier for this resource's immediate parent resource. This parent resource id would be used to build resource hierarchy in condor platform." + }, + "product": { + "$ref": "StorageDatabasecenterProtoCommonProduct", + "description": "The product this resource represents." + }, + "resourceContainer": { + "description": "Closest parent Cloud Resource Manager container of this resource. It must either be resource name of a Cloud Resource Manager project, for ex: \"projects/123\".", + "type": "string" + }, + "resourceName": { + "description": "Required. Different from unique_id, a resource name can be reused over time. That is after a resource named \"ABC\" is deleted, the name \"ABC\" can be used to to create a new resource within the same source.", + "type": "string" + }, + "updationTime": { + "description": "The time at which the resource was updated and recorded at partner service.", + "format": "google-datetime", + "type": "string" + }, + "userLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "User-provided labels, represented as a dictionary where each label is a single key value pair.", + "type": "object" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainOperationError": { + "description": "An error that occurred during a backup creation operation.", + "id": "StorageDatabasecenterPartnerapiV1mainOperationError", + "properties": { + "code": { + "description": "Identifies the specific error that occurred. REQUIRED", + "type": "string" + }, + "message": { + "description": "Additional information about the error encountered. REQUIRED", + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterPartnerapiV1mainRetentionSettings": { + "id": "StorageDatabasecenterPartnerapiV1mainRetentionSettings", + "properties": { + "quantityBasedRetention": { + "format": "int32", + "type": "integer" + }, + "retentionUnit": { + "description": "The unit that 'retained_backups' represents.", + "enum": [ + "RETENTION_UNIT_UNSPECIFIED", + "COUNT", + "TIME", + "RETENTION_UNIT_OTHER" + ], + "enumDescriptions": [ + "Backup retention unit is unspecified, will be treated as COUNT.", + "Retention will be by count, eg. \"retain the most recent 7 backups\".", + "Retention will be by Time, eg. \"retain the last 7 days backups\".", + "For rest of the other category" + ], + "type": "string" + }, + "timeBasedRetention": { + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "StorageDatabasecenterProtoCommonProduct": { + "description": "Product specification for Condor resources.", + "id": "StorageDatabasecenterProtoCommonProduct", + "properties": { + "engine": { + "description": "The specific engine that the underlying database is running.", + "enum": [ + "ENGINE_UNSPECIFIED", + "MYSQL", + "POSTGRES", + "SQL_SERVER", + "NATIVE", + "SPANGRES", + "ENGINE_OTHER" + ], + "enumDescriptions": [ + "UNSPECIFIED means engine type is not known or available.", + "MySQL binary running as engine in database instance.", + "Postgres binary running as engine in database instance.", + "SQLServer binary running as engine in database instance.", + "Native database binary running as engine in instance.", + "Cloud Spanner with Postgres dialect.", + "Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum." + ], + "type": "string" + }, + "type": { + "description": "Type of specific database product. It could be CloudSQL, AlloyDB etc..", + "enum": [ + "PRODUCT_TYPE_UNSPECIFIED", + "CLOUD_SQL", + "ALLOYDB", + "SPANNER", + "ON_PREM", + "PRODUCT_TYPE_OTHER" + ], + "enumDescriptions": [ + "UNSPECIFIED means product type is not known or available.", + "Cloud SQL product area in GCP", + "AlloyDB product area in GCP", + "Spanner product area in GCP", + "On premises database product.", + "Other refers to rest of other product type. This is to be when product type is known, but it is not present in this enum." + ], + "type": "string" + }, + "version": { + "description": "Version of the underlying database engine. Example values: For MySQL, it could be \"8.0\", \"5.7\" etc.. For Postgres, it could be \"14\", \"15\" etc..", + "type": "string" + } + }, + "type": "object" + }, + "StringRestrictions": { + "description": "Restrictions on STRING type values", + "id": "StringRestrictions", + "properties": { + "allowedValues": { + "description": "The list of allowed values, if bounded. This field will be empty if there is a unbounded number of allowed values.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SupportedDatabaseFlag": { + "description": "SupportedDatabaseFlag gives general information about a database flag, like type and allowed values. This is a static value that is defined on the server side, and it cannot be modified by callers. To set the Database flags on a particular Instance, a caller should modify the Instance.database_flags field.", + "id": "SupportedDatabaseFlag", + "properties": { + "acceptsMultipleValues": { + "description": "Whether the database flag accepts multiple values. If true, a comma-separated list of stringified values may be specified.", + "type": "boolean" + }, + "flagName": { + "description": "The name of the database flag, e.g. \"max_allowed_packets\". The is a possibly key for the Instance.database_flags map field.", + "type": "string" + }, + "integerRestrictions": { + "$ref": "IntegerRestrictions", + "description": "Restriction on INTEGER type value." + }, + "name": { + "description": "The name of the flag resource, following Google Cloud conventions, e.g.: * projects/{project}/locations/{location}/flags/{flag} This field currently has no semantic meaning.", + "type": "string" + }, + "requiresDbRestart": { + "description": "Whether setting or updating this flag on an Instance requires a database restart. If a flag that requires database restart is set, the backend will automatically restart the database (making sure to satisfy any availability SLO's).", + "type": "boolean" + }, + "stringRestrictions": { + "$ref": "StringRestrictions", + "description": "Restriction on STRING type value." + }, + "supportedDbVersions": { + "description": "Major database engine versions for which this flag is supported.", + "items": { + "enum": [ + "DATABASE_VERSION_UNSPECIFIED", + "POSTGRES_13", + "POSTGRES_14", + "POSTGRES_15" + ], + "enumDeprecated": [ + false, + true, + false, + false + ], + "enumDescriptions": [ + "This is an unknown database version.", + "DEPRECATED - The database version is Postgres 13.", + "The database version is Postgres 14.", + "The database version is Postgres 15." + ], + "type": "string" + }, + "type": "array" + }, + "valueType": { + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "STRING", + "INTEGER", + "FLOAT", + "NONE" + ], + "enumDescriptions": [ + "This is an unknown flag type.", + "String type flag.", + "Integer type flag.", + "Float type flag.", + "Denotes that the flag does not accept any values." + ], + "type": "string" + } + }, + "type": "object" + }, + "TimeBasedRetention": { + "description": "A time based retention policy specifies that all backups within a certain time period should be retained.", + "id": "TimeBasedRetention", + "properties": { + "retentionPeriod": { + "description": "The retention period.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "UpdatePolicy": { + "description": "Policy to be used while updating the instance.", + "id": "UpdatePolicy", + "properties": { + "mode": { + "description": "Mode for updating the instance.", + "enum": [ + "MODE_UNSPECIFIED", + "DEFAULT", + "FORCE_APPLY" + ], + "enumDescriptions": [ + "Mode is unknown.", + "Least disruptive way to apply the update.", + "Performs a forced update when applicable. This will be fast but may incur a downtime." + ], + "type": "string" + } + }, + "type": "object" + }, + "User": { + "description": "Message describing User object.", + "id": "User", + "properties": { + "databaseRoles": { + "description": "Optional. List of database roles this user has. The database role strings are subject to the PostgreSQL naming conventions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Output only. Name of the resource in the form of projects/{project}/locations/{location}/cluster/{cluster}/users/{user}.", + "readOnly": true, + "type": "string" + }, + "password": { + "description": "Input only. Password for the user.", + "type": "string" + }, + "userType": { + "description": "Optional. Type of this user.", + "enum": [ + "USER_TYPE_UNSPECIFIED", + "ALLOYDB_BUILT_IN", + "ALLOYDB_IAM_USER" + ], + "enumDescriptions": [ + "Unspecified user type.", + "The default user type that authenticates via password-based authentication.", + "Database user that can authenticate via IAM-Based authentication." + ], + "type": "string" + } + }, + "type": "object" + }, + "UserPassword": { + "description": "The username/password for a database user. Used for specifying initial users at cluster creation time.", + "id": "UserPassword", + "properties": { + "password": { + "description": "The initial password for the user.", + "type": "string" + }, + "user": { + "description": "The database username.", + "type": "string" + } + }, + "type": "object" + }, + "WeeklySchedule": { + "description": "A weekly schedule starts a backup at prescribed start times within a day, for the specified days of the week. The weekly schedule message is flexible and can be used to create many types of schedules. For example, to have a daily backup that starts at 22:00, configure the `start_times` field to have one element \"22:00\" and the `days_of_week` field to have all seven days of the week.", + "id": "WeeklySchedule", + "properties": { + "daysOfWeek": { + "description": "The days of the week to perform a backup. If this field is left empty, the default of every day of the week is used.", + "items": { + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The day of the week is unspecified.", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "type": "string" + }, + "type": "array" + }, + "startTimes": { + "description": "The times during the day to start a backup. The start times are assumed to be in UTC and to be an exact hour (e.g., 04:00:00). If no start times are provided, a single fixed start time is chosen arbitrarily.", + "items": { + "$ref": "GoogleTypeTimeOfDay" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "AlloyDB API", + "version": "v1beta", + "version_module": true +} \ No newline at end of file diff --git a/src/apis/alloydb/README.md b/src/apis/alloydb/README.md new file mode 100644 index 0000000000..8ff8b7ecbe --- /dev/null +++ b/src/apis/alloydb/README.md @@ -0,0 +1,37 @@ +Google Inc. logo + +# alloydb + +> AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases. + +## Support status +**Note**: Google provides multiple libraries for this service. This library is in +maintenance mode, and will continue to be made available for users who have +existing applications. If you're building a new application, or modernizing a +legacy application, please use [@google-cloud/alloydb](https://www.npmjs.com/package/@google-cloud/alloydb) instead. +The [@google-cloud/alloydb](https://www.npmjs.com/package/@google-cloud/alloydb) library is faster, easier to use, and better maintained. + +To learn more, see [Client Libraries Explained](https://cloud.google.com/apis/docs/client-libraries-explained). + +## Installation + +```sh +$ npm install @googleapis/alloydb +``` + +## Usage +All documentation and usage information can be found on [GitHub](https://github.com/googleapis/google-api-nodejs-client). +Information on classes can be found in [Googleapis Documentation](https://googleapis.dev/nodejs/googleapis/latest/alloydb/classes/Alloydb.html). + +## License +This library is licensed under Apache 2.0. Full license text is available in [LICENSE](https://github.com/googleapis/google-api-nodejs-client/blob/main/LICENSE). + +## Contributing +We love contributions! Before submitting a Pull Request, it's always good to start with a new issue first. To learn more, see [CONTRIBUTING](https://github.com/google/google-api-nodejs-client/blob/main/.github/CONTRIBUTING.md). + +## Questions/problems? +* Ask your development related questions on [StackOverflow](http://stackoverflow.com/questions/tagged/google-api-nodejs-client). +* If you've found an bug/issue, please [file it on GitHub](https://github.com/googleapis/google-api-nodejs-client/issues). + + +*Crafted with ❤️ by the Google Node.js team* diff --git a/src/apis/alloydb/index.ts b/src/apis/alloydb/index.ts new file mode 100644 index 0000000000..b7fab3eade --- /dev/null +++ b/src/apis/alloydb/index.ts @@ -0,0 +1,66 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/*! THIS FILE IS AUTO-GENERATED */ + +import {AuthPlus, getAPI, GoogleConfigurable} from 'googleapis-common'; +import {alloydb_v1} from './v1'; +import {alloydb_v1alpha} from './v1alpha'; +import {alloydb_v1beta} from './v1beta'; + +export const VERSIONS = { + v1: alloydb_v1.Alloydb, + v1alpha: alloydb_v1alpha.Alloydb, + v1beta: alloydb_v1beta.Alloydb, +}; + +export function alloydb(version: 'v1'): alloydb_v1.Alloydb; +export function alloydb(options: alloydb_v1.Options): alloydb_v1.Alloydb; +export function alloydb(version: 'v1alpha'): alloydb_v1alpha.Alloydb; +export function alloydb( + options: alloydb_v1alpha.Options +): alloydb_v1alpha.Alloydb; +export function alloydb(version: 'v1beta'): alloydb_v1beta.Alloydb; +export function alloydb( + options: alloydb_v1beta.Options +): alloydb_v1beta.Alloydb; +export function alloydb< + T = alloydb_v1.Alloydb | alloydb_v1alpha.Alloydb | alloydb_v1beta.Alloydb, +>( + this: GoogleConfigurable, + versionOrOptions: + | 'v1' + | alloydb_v1.Options + | 'v1alpha' + | alloydb_v1alpha.Options + | 'v1beta' + | alloydb_v1beta.Options +) { + return getAPI('alloydb', versionOrOptions, VERSIONS, this); +} + +const auth = new AuthPlus(); +export {auth}; +export {alloydb_v1}; +export {alloydb_v1alpha}; +export {alloydb_v1beta}; +export { + AuthPlus, + GlobalOptions, + APIRequestContext, + GoogleConfigurable, + StreamMethodOptions, + GaxiosPromise, + MethodOptions, + BodyResponseCallback, +} from 'googleapis-common'; diff --git a/src/apis/alloydb/package.json b/src/apis/alloydb/package.json new file mode 100644 index 0000000000..e884c15b11 --- /dev/null +++ b/src/apis/alloydb/package.json @@ -0,0 +1,43 @@ +{ + "name": "@googleapis/alloydb", + "version": "0.1.0", + "description": "alloydb", + "main": "build/index.js", + "types": "build/index.d.ts", + "keywords": [ + "google" + ], + "author": "Google LLC", + "license": "Apache-2.0", + "homepage": "https://github.com/googleapis/google-api-nodejs-client", + "bugs": { + "url": "https://github.com/googleapis/google-api-nodejs-client/issues" + }, + "repository": { + "type": "git", + "url": "https://github.com/googleapis/google-api-nodejs-client.git" + }, + "engines": { + "node": ">=12.0.0" + }, + "scripts": { + "fix": "gts fix", + "lint": "gts check", + "compile": "tsc -p .", + "prepare": "npm run compile", + "webpack": "webpack" + }, + "dependencies": { + "googleapis-common": "^7.0.0" + }, + "devDependencies": { + "@microsoft/api-documenter": "^7.8.10", + "@microsoft/api-extractor": "^7.8.10", + "gts": "^5.0.0", + "null-loader": "^4.0.0", + "ts-loader": "^9.0.0", + "typescript": "~4.8.4", + "webpack": "^5.0.0", + "webpack-cli": "^5.0.0" + } +} diff --git a/src/apis/alloydb/tsconfig.json b/src/apis/alloydb/tsconfig.json new file mode 100644 index 0000000000..e081090496 --- /dev/null +++ b/src/apis/alloydb/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "./node_modules/gts/tsconfig-google.json", + "compilerOptions": { + "rootDir": ".", + "outDir": "build" + }, + "include": [ + "*.ts", + ] +} diff --git a/src/apis/alloydb/v1.ts b/src/apis/alloydb/v1.ts new file mode 100644 index 0000000000..a1a9ee9e24 --- /dev/null +++ b/src/apis/alloydb/v1.ts @@ -0,0 +1,4982 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/no-empty-interface */ +/* eslint-disable @typescript-eslint/no-namespace */ +/* eslint-disable no-irregular-whitespace */ + +import { + OAuth2Client, + JWT, + Compute, + UserRefreshClient, + BaseExternalAccountClient, + GaxiosPromise, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace alloydb_v1 { + export interface Options extends GlobalOptions { + version: 'v1'; + } + + interface StandardParameters { + /** + * Auth client or API Key for the request + */ + auth?: + | string + | OAuth2Client + | JWT + | Compute + | UserRefreshClient + | BaseExternalAccountClient + | GoogleAuth; + + /** + * V1 error format. + */ + '$.xgafv'?: string; + /** + * OAuth access token. + */ + access_token?: string; + /** + * Data format for response. + */ + alt?: string; + /** + * JSONP + */ + callback?: string; + /** + * Selector specifying which fields to include in a partial response. + */ + fields?: string; + /** + * 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. + */ + key?: string; + /** + * OAuth 2.0 token for the current user. + */ + oauth_token?: string; + /** + * Returns response with indentations and line breaks. + */ + prettyPrint?: boolean; + /** + * 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. + */ + quotaUser?: string; + /** + * Legacy upload protocol for media (e.g. "media", "multipart"). + */ + uploadType?: string; + /** + * Upload protocol for media (e.g. "raw", "multipart"). + */ + upload_protocol?: string; + } + + /** + * AlloyDB API + * + * AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases. + * + * @example + * ```js + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1'); + * ``` + */ + export class Alloydb { + context: APIRequestContext; + projects: Resource$Projects; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.projects = new Resource$Projects(this.context); + } + } + + /** + * Message describing the user-specified automated backup policy. All fields in the automated backup policy are optional. Defaults for each field are provided if they are not set. + */ + export interface Schema$AutomatedBackupPolicy { + /** + * The length of the time window during which a backup can be taken. If a backup does not succeed within this time window, it will be canceled and considered failed. The backup window must be at least 5 minutes long. There is no upper bound on the window. If not set, it defaults to 1 hour. + */ + backupWindow?: string | null; + /** + * Whether automated automated backups are enabled. If not set, defaults to true. + */ + enabled?: boolean | null; + /** + * Optional. The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * Labels to apply to backups created using this configuration. + */ + labels?: {[key: string]: string} | null; + /** + * The location where the backup will be stored. Currently, the only supported option is to store the backup in the same region as the cluster. If empty, defaults to the region of the cluster. + */ + location?: string | null; + /** + * Quantity-based Backup retention policy to retain recent backups. + */ + quantityBasedRetention?: Schema$QuantityBasedRetention; + /** + * Time-based Backup retention policy. + */ + timeBasedRetention?: Schema$TimeBasedRetention; + /** + * Weekly schedule for the Backup. + */ + weeklySchedule?: Schema$WeeklySchedule; + } + /** + * Message describing Backup object + */ + export interface Schema$Backup { + /** + * Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 + */ + annotations?: {[key: string]: string} | null; + /** + * Required. The full resource name of the backup source cluster (e.g., projects/{project\}/locations/{region\}/clusters/{cluster_id\}). + */ + clusterName?: string | null; + /** + * Output only. The system-generated UID of the cluster which was used to create this resource. + */ + clusterUid?: string | null; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Output only. The database engine major version of the cluster this backup was created from. Any restored cluster created from this backup will have the same database version. + */ + databaseVersion?: string | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-provided description of the backup. + */ + description?: string | null; + /** + * User-settable and human-readable display name for the Backup. + */ + displayName?: string | null; + /** + * Optional. The encryption config can be specified to encrypt the backup with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * Output only. The encryption information for the backup. + */ + encryptionInfo?: Schema$EncryptionInfo; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * Output only. The QuantityBasedExpiry of the backup, specified by the backup's retention policy. Once the expiry quantity is over retention, the backup is eligible to be garbage collected. + */ + expiryQuantity?: Schema$QuantityBasedExpiry; + /** + * Output only. The time at which after the backup is eligible to be garbage collected. It is the duration specified by the backup's retention policy, added to the backup's create_time. + */ + expiryTime?: string | null; + /** + * Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Output only. The name of the backup resource with the format: * projects/{project\}/locations/{region\}/backups/{backup_id\} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string | null; + /** + * Output only. Reconciling (https://google.aip.dev/128#reconciliation), if true, indicates that the service is actively updating the resource. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Output only. The size of the backup in bytes. + */ + sizeBytes?: string | null; + /** + * Output only. The current state of the backup. + */ + state?: string | null; + /** + * The backup type, which suggests the trigger for the backup. + */ + type?: string | null; + /** + * Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. + */ + uid?: string | null; + /** + * Output only. Update time stamp + */ + updateTime?: string | null; + } + /** + * Message describing a BackupSource. + */ + export interface Schema$BackupSource { + /** + * Required. The name of the backup resource with the format: * projects/{project\}/locations/{region\}/backups/{backup_id\} + */ + backupName?: string | null; + /** + * Output only. The system-generated UID of the backup which was used to create this resource. The UID is generated when the backup is created, and it is retained until the backup is deleted. + */ + backupUid?: string | null; + } + /** + * The request message for Operations.CancelOperation. + */ + export interface Schema$CancelOperationRequest {} + /** + * Client connection configuration + */ + export interface Schema$ClientConnectionConfig { + /** + * Optional. Configuration to enforce connectors only (ex: AuthProxy) connections to the database. + */ + requireConnectors?: boolean | null; + /** + * Optional. SSL config option for this instance. + */ + sslConfig?: Schema$SslConfig; + } + /** + * Operation metadata returned by the CLH during resource state reconciliation. + */ + export interface Schema$CloudControl2SharedOperationsReconciliationOperationMetadata { + /** + * DEPRECATED. Use exclusive_action instead. + */ + deleteResource?: boolean | null; + /** + * Excluisive action returned by the CLH. + */ + exclusiveAction?: string | null; + } + /** + * A cluster is a collection of regional AlloyDB resources. It can include a primary instance and one or more read pool instances. All cluster resources share a storage layer, which scales as needed. + */ + export interface Schema$Cluster { + /** + * Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 + */ + annotations?: {[key: string]: string} | null; + /** + * The automated backup policy for this cluster. If no policy is provided then the default policy will be used. If backups are supported for the cluster, the default policy takes one backup a day, has a backup window of 1 hour, and retains backups for 14 days. For more information on the defaults, consult the documentation for the message type. + */ + automatedBackupPolicy?: Schema$AutomatedBackupPolicy; + /** + * Output only. Cluster created from backup. + */ + backupSource?: Schema$BackupSource; + /** + * Output only. The type of the cluster. This is an output-only field and it's populated at the Cluster creation time or the Cluster promotion time. The cluster type is determined by which RPC was used to create the cluster (i.e. `CreateCluster` vs. `CreateSecondaryCluster` + */ + clusterType?: string | null; + /** + * Optional. Continuous backup configuration for this cluster. + */ + continuousBackupConfig?: Schema$ContinuousBackupConfig; + /** + * Output only. Continuous backup properties for this cluster. + */ + continuousBackupInfo?: Schema$ContinuousBackupInfo; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Optional. The database engine major version. This is an optional field and it is populated at the Cluster creation time. If a database version is not supplied at cluster creation time, then a default database version will be used. + */ + databaseVersion?: string | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-settable and human-readable display name for the Cluster. + */ + displayName?: string | null; + /** + * Optional. The encryption config can be specified to encrypt the data disks and other persistent data resources of a cluster with a customer-managed encryption key (CMEK). When this field is not specified, the cluster will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * Output only. The encryption information for the cluster. + */ + encryptionInfo?: Schema$EncryptionInfo; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * Input only. Initial user to setup during cluster creation. Required. If used in `RestoreCluster` this is ignored. + */ + initialUser?: Schema$UserPassword; + /** + * Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Output only. Cluster created via DMS migration. + */ + migrationSource?: Schema$MigrationSource; + /** + * Output only. The name of the cluster resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string | null; + /** + * Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: "projects/{project\}/global/networks/{network_id\}". This is required to create a cluster. It can be updated, but it cannot be removed. Deprecated, use network_config.network instead. + */ + network?: string | null; + networkConfig?: Schema$NetworkConfig; + /** + * Output only. Cross Region replication config specific to PRIMARY cluster. + */ + primaryConfig?: Schema$PrimaryConfig; + /** + * Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Cluster does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Cross Region replication config specific to SECONDARY cluster. + */ + secondaryConfig?: Schema$SecondaryConfig; + /** + * SSL configuration for this AlloyDB cluster. + */ + sslConfig?: Schema$SslConfig; + /** + * Output only. The current serving state of the cluster. + */ + state?: string | null; + /** + * Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. + */ + uid?: string | null; + /** + * Output only. Update time stamp + */ + updateTime?: string | null; + } + /** + * ContinuousBackupConfig describes the continuous backups recovery configurations of a cluster. + */ + export interface Schema$ContinuousBackupConfig { + /** + * Whether ContinuousBackup is enabled. + */ + enabled?: boolean | null; + /** + * The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * The number of days that are eligible to restore from using PITR. To support the entire recovery window, backups and logs are retained for one day more than the recovery window. If not set, defaults to 14 days. + */ + recoveryWindowDays?: number | null; + } + /** + * ContinuousBackupInfo describes the continuous backup properties of a cluster. + */ + export interface Schema$ContinuousBackupInfo { + /** + * Output only. The earliest restorable time that can be restored to. Output only field. + */ + earliestRestorableTime?: string | null; + /** + * Output only. When ContinuousBackup was most recently enabled. Set to null if ContinuousBackup is not enabled. + */ + enabledTime?: string | null; + /** + * Output only. The encryption information for the WALs and backups required for ContinuousBackup. + */ + encryptionInfo?: Schema$EncryptionInfo; + /** + * Output only. Days of the week on which a continuous backup is taken. Output only field. Ignored if passed into the request. + */ + schedule?: string[] | null; + } + /** + * Message describing a ContinuousBackupSource. + */ + export interface Schema$ContinuousBackupSource { + /** + * Required. The source cluster from which to restore. This cluster must have continuous backup enabled for this operation to succeed. For the required format, see the comment on the Cluster.name field. + */ + cluster?: string | null; + /** + * Required. The point in time to restore to. + */ + pointInTime?: string | null; + } + /** + * 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); \} + */ + export interface Schema$Empty {} + /** + * EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key). + */ + export interface Schema$EncryptionConfig { + /** + * The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME] + */ + kmsKeyName?: string | null; + } + /** + * EncryptionInfo describes the encryption information of a cluster or a backup. + */ + export interface Schema$EncryptionInfo { + /** + * Output only. Type of encryption. + */ + encryptionType?: string | null; + /** + * Output only. Cloud KMS key versions that are being used to protect the database or the backup. + */ + kmsKeyVersions?: string[] | null; + } + /** + * Message for triggering failover on an Instance + */ + export interface Schema$FailoverInstanceRequest { + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the failover. + */ + validateOnly?: boolean | null; + } + /** + * The response message for Locations.ListLocations. + */ + export interface Schema$GoogleCloudLocationListLocationsResponse { + /** + * A list of locations that matches the specified filter in the request. + */ + locations?: Schema$GoogleCloudLocationLocation[]; + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + } + /** + * A resource that represents a Google Cloud location. + */ + export interface Schema$GoogleCloudLocationLocation { + /** + * The friendly name for this location, typically a nearby city name. For example, "Tokyo". + */ + displayName?: string | null; + /** + * Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\} + */ + labels?: {[key: string]: string} | null; + /** + * The canonical id for this location. For example: `"us-east1"`. + */ + locationId?: string | null; + /** + * Service-specific metadata. For example the available capacity at the given location. + */ + metadata?: {[key: string]: any} | null; + /** + * Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` + */ + name?: string | null; + } + /** + * Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. + */ + export interface Schema$GoogleTypeTimeOfDay { + /** + * Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. + */ + hours?: number | null; + /** + * Minutes of hour of day. Must be from 0 to 59. + */ + minutes?: number | null; + /** + * Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + */ + nanos?: number | null; + /** + * Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds. + */ + seconds?: number | null; + } + /** + * Message for triggering fault injection on an instance + */ + export interface Schema$InjectFaultRequest { + /** + * Required. The type of fault to be injected in an instance. + */ + faultType?: string | null; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the fault injection. + */ + validateOnly?: boolean | null; + } + /** + * An Instance is a computing unit that an end customer can connect to. It's the main unit of computing resources in AlloyDB. + */ + export interface Schema$Instance { + /** + * Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 + */ + annotations?: {[key: string]: string} | null; + /** + * Availability type of an Instance. If empty, defaults to REGIONAL for primary instances. For read pools, availability_type is always UNSPECIFIED. Instances in the read pools are evenly distributed across available zones within the region (i.e. read pools with more than one node will have a node in at least two zones). + */ + availabilityType?: string | null; + /** + * Optional. Client connection specific configurations + */ + clientConnectionConfig?: Schema$ClientConnectionConfig; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Database flags. Set at instance level. * They are copied from primary instance on read instance creation. * Read instances can set new or override existing flags that are relevant for reads, e.g. for enabling columnar cache on a read instance. Flags set on read instance may or may not be present on primary. This is a list of "key": "value" pairs. "key": The name of the flag. These flags are passed at instance setup time, so include both server options and system variables for Postgres. Flags are specified with underscores, not hyphens. "value": The value of the flag. Booleans are set to **on** for true and **off** for false. This field must be omitted if the flag doesn't take a value. + */ + databaseFlags?: {[key: string]: string} | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-settable and human-readable display name for the Instance. + */ + displayName?: string | null; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * The Compute Engine zone that the instance should serve from, per https://cloud.google.com/compute/docs/regions-zones This can ONLY be specified for ZONAL instances. If present for a REGIONAL instance, an error will be thrown. If this is absent for a ZONAL instance, instance is created in a random zone with available capacity. + */ + gceZone?: string | null; + /** + * Required. The type of the instance. Specified at creation time. + */ + instanceType?: string | null; + /** + * Output only. The IP address for the Instance. This is the connection endpoint for an end-user application. + */ + ipAddress?: string | null; + /** + * Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Configurations for the machines that host the underlying database engine. + */ + machineConfig?: Schema$MachineConfig; + /** + * Output only. The name of the instance resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\}/instances/{instance_id\} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} + */ + name?: string | null; + /** + * Output only. List of available read-only VMs in this instance, including the standby for a PRIMARY instance. + */ + nodes?: Schema$Node[]; + /** + * Configuration for query insights. + */ + queryInsightsConfig?: Schema$QueryInsightsInstanceConfig; + /** + * Read pool specific config. + */ + readPoolConfig?: Schema$ReadPoolConfig; + /** + * Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Instance does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Output only. The current serving state of the instance. + */ + state?: string | null; + /** + * Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. + */ + uid?: string | null; + /** + * Output only. Update time stamp + */ + updateTime?: string | null; + /** + * Output only. This is set for the read-write VM of the PRIMARY instance only. + */ + writableNode?: Schema$Node; + } + /** + * Restrictions on INTEGER type values. + */ + export interface Schema$IntegerRestrictions { + /** + * The maximum value that can be specified, if applicable. + */ + maxValue?: string | null; + /** + * The minimum value that can be specified, if applicable. + */ + minValue?: string | null; + } + /** + * Message for response to listing Backups + */ + export interface Schema$ListBackupsResponse { + /** + * The list of Backup + */ + backups?: Schema$Backup[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Clusters + */ + export interface Schema$ListClustersResponse { + /** + * The list of Cluster + */ + clusters?: Schema$Cluster[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Instances + */ + export interface Schema$ListInstancesResponse { + /** + * The list of Instance + */ + instances?: Schema$Instance[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response message for Operations.ListOperations. + */ + export interface Schema$ListOperationsResponse { + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + /** + * A list of operations that matches the specified filter in the request. + */ + operations?: Schema$Operation[]; + } + /** + * Message for response to listing SupportedDatabaseFlags. + */ + export interface Schema$ListSupportedDatabaseFlagsResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The list of SupportedDatabaseFlags. + */ + supportedDatabaseFlags?: Schema$SupportedDatabaseFlag[]; + } + /** + * Message for response to listing Users + */ + export interface Schema$ListUsersResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + /** + * The list of User + */ + users?: Schema$User[]; + } + /** + * MachineConfig describes the configuration of a machine. + */ + export interface Schema$MachineConfig { + /** + * The number of CPU's in the VM instance. + */ + cpuCount?: number | null; + } + /** + * Subset of the source instance configuration that is available when reading the cluster resource. + */ + export interface Schema$MigrationSource { + /** + * Output only. The host and port of the on-premises instance in host:port format + */ + hostPort?: string | null; + /** + * Output only. Place holder for the external source identifier(e.g DMS job name) that created the cluster. + */ + referenceId?: string | null; + /** + * Output only. Type of migration source. + */ + sourceType?: string | null; + } + /** + * Metadata related to network configuration. + */ + export interface Schema$NetworkConfig { + /** + * Optional. Name of the allocated IP range for the private IP AlloyDB cluster, for example: "google-managed-services-default". If set, the instance IPs for this cluster will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. Field name is intended to be consistent with CloudSQL. + */ + allocatedIpRange?: string | null; + /** + * Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: "projects/{project_number\}/global/networks/{network_id\}". This is required to create a cluster. It can be updated, but it cannot be removed. + */ + network?: string | null; + } + /** + * Details of a single node in the instance. Nodes in an AlloyDB instance are ephemereal, they can change during update, failover, autohealing and resize operations. + */ + export interface Schema$Node { + /** + * The identifier of the VM e.g. "test-read-0601-407e52be-ms3l". + */ + id?: string | null; + /** + * The private IP address of the VM e.g. "10.57.0.34". + */ + ip?: string | null; + /** + * Determined by state of the compute VM and postgres-service health. Compute VM state can have values listed in https://cloud.google.com/compute/docs/instances/instance-life-cycle and postgres-service health can have values: HEALTHY and UNHEALTHY. + */ + state?: string | null; + /** + * The Compute Engine zone of the VM e.g. "us-central1-b". + */ + zoneId?: string | null; + } + /** + * This resource represents a long-running operation that is the result of a network API call. + */ + export interface Schema$Operation { + /** + * If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. + */ + done?: boolean | null; + /** + * The error result of the operation in case of failure or cancellation. + */ + error?: Schema$Status; + /** + * Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. + */ + metadata?: {[key: string]: any} | null; + /** + * The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id\}`. + */ + name?: string | null; + /** + * The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + */ + response?: {[key: string]: any} | null; + } + /** + * Represents the metadata of the long-running operation. + */ + export interface Schema$OperationMetadata { + /** + * Output only. API version used to start the operation. + */ + apiVersion?: string | null; + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + */ + requestedCancellation?: boolean | null; + /** + * Output only. Human-readable status of the operation, if any. + */ + statusMessage?: string | null; + /** + * Output only. Server-defined resource path for the target of the operation. + */ + target?: string | null; + /** + * Output only. Name of the verb executed by the operation. + */ + verb?: string | null; + } + /** + * Configuration for the primary cluster. It has the list of clusters that are replicating from this cluster. This should be set if and only if the cluster is of type PRIMARY. + */ + export interface Schema$PrimaryConfig { + /** + * Output only. Names of the clusters that are replicating from this cluster. + */ + secondaryClusterNames?: string[] | null; + } + /** + * Message for promoting a Cluster + */ + export interface Schema$PromoteClusterRequest { + /** + * Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string | null; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete. + */ + validateOnly?: boolean | null; + } + /** + * A backup's position in a quantity-based retention queue, of backups with the same source cluster and type, with length, retention, specified by the backup's retention policy. Once the position is greater than the retention, the backup is eligible to be garbage collected. Example: 5 backups from the same source cluster and type with a quantity-based retention of 3 and denoted by backup_id (position, retention). Safe: backup_5 (1, 3), backup_4, (2, 3), backup_3 (3, 3). Awaiting garbage collection: backup_2 (4, 3), backup_1 (5, 3) + */ + export interface Schema$QuantityBasedExpiry { + /** + * Output only. The backup's position among its backups with the same source cluster and type, by descending chronological order create time(i.e. newest first). + */ + retentionCount?: number | null; + /** + * Output only. The length of the quantity-based queue, specified by the backup's retention policy. + */ + totalRetentionCount?: number | null; + } + /** + * A quantity based policy specifies that a certain number of the most recent successful backups should be retained. + */ + export interface Schema$QuantityBasedRetention { + /** + * The number of backups to retain. + */ + count?: number | null; + } + /** + * QueryInsights Instance specific configuration. + */ + export interface Schema$QueryInsightsInstanceConfig { + /** + * Number of query execution plans captured by Insights per minute for all queries combined. The default value is 5. Any integer between 0 and 20 is considered valid. + */ + queryPlansPerMinute?: number | null; + /** + * Query string length. The default value is 1024. Any integer between 256 and 4500 is considered valid. + */ + queryStringLength?: number | null; + /** + * Record application tags for an instance. This flag is turned "on" by default. + */ + recordApplicationTags?: boolean | null; + /** + * Record client address for an instance. Client address is PII information. This flag is turned "on" by default. + */ + recordClientAddress?: boolean | null; + } + /** + * Configuration for a read pool instance. + */ + export interface Schema$ReadPoolConfig { + /** + * Read capacity, i.e. number of nodes in a read pool instance. + */ + nodeCount?: number | null; + } + export interface Schema$RestartInstanceRequest { + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the restart. + */ + validateOnly?: boolean | null; + } + /** + * Message for restoring a Cluster from a backup or another cluster at a given point in time. + */ + export interface Schema$RestoreClusterRequest { + /** + * Backup source. + */ + backupSource?: Schema$BackupSource; + /** + * Required. The resource being created + */ + cluster?: Schema$Cluster; + /** + * Required. ID of the requesting object. + */ + clusterId?: string | null; + /** + * ContinuousBackup source. Continuous backup needs to be enabled in the source cluster for this operation to succeed. + */ + continuousBackupSource?: Schema$ContinuousBackupSource; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the import request. + */ + validateOnly?: boolean | null; + } + /** + * Configuration information for the secondary cluster. This should be set if and only if the cluster is of type SECONDARY. + */ + export interface Schema$SecondaryConfig { + /** + * The name of the primary cluster name with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} + */ + primaryClusterName?: string | null; + } + /** + * SSL configuration. + */ + export interface Schema$SslConfig { + /** + * Optional. Certificate Authority (CA) source. Only CA_SOURCE_MANAGED is supported currently, and is the default value. + */ + caSource?: string | null; + /** + * Optional. SSL mode. Specifies client-server SSL/TLS connection behavior. + */ + sslMode?: string | null; + } + /** + * 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). + */ + export interface Schema$Status { + /** + * The status code, which should be an enum value of google.rpc.Code. + */ + code?: number | null; + /** + * A list of messages that carry the error details. There is a common set of message types for APIs to use. + */ + details?: Array<{[key: string]: any}> | null; + /** + * 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. + */ + message?: string | null; + } + /** + * Configuration for availability of database instance + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration { + /** + * 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). + */ + availabilityType?: string | null; + externalReplicaConfigured?: boolean | null; + promotableReplicaConfigured?: boolean | null; + } + /** + * Configuration for automatic backups + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainBackupConfiguration { + /** + * Whether customer visible automated backups are enabled on the instance. + */ + automatedBackupEnabled?: boolean | null; + /** + * Backup retention settings. + */ + backupRetentionSettings?: Schema$StorageDatabasecenterPartnerapiV1mainRetentionSettings; + } + /** + * A backup run. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainBackupRun { + /** + * The time the backup operation completed. REQUIRED + */ + endTime?: string | null; + /** + * Information about why the backup operation failed. This is only present if the run has the FAILED status. OPTIONAL + */ + error?: Schema$StorageDatabasecenterPartnerapiV1mainOperationError; + /** + * The time the backup operation started. REQUIRED + */ + startTime?: string | null; + /** + * The status of this run. REQUIRED + */ + status?: string | null; + } + /** + * DatabaseResourceFeed is the top level proto to be used to ingest different database resource level events into Condor platform. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceFeed { + /** + * Required. Timestamp when feed is generated. + */ + feedTimestamp?: string | null; + /** + * Required. Type feed to be ingested into condor + */ + feedType?: string | null; + /** + * Required. Primary key associated with the Resource + */ + resourceId?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; + /** + * More feed data would be added in subsequent CLs + */ + resourceMetadata?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata; + } + /** + * DatabaseResourceId will serve as primary key for any resource ingestion event. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId { + /** + * Required. Cloud provider name. Ex: GCP/AWS/Azure/OnPrem/SelfManaged + */ + provider?: string | null; + /** + * Required. The type of resource this ID is identifying. Ex google.sqladmin.Instance, google.alloydb.cluster, google.sqladmin.Backup REQUIRED + */ + resourceType?: string | null; + /** + * Required. A service-local token that distinguishes this resource from other resources within the same service. + */ + uniqueId?: string | null; + } + /** + * Common model for database resource instance metadata. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata { + /** + * Availability configuration for this instance + */ + availabilityConfiguration?: Schema$StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration; + /** + * Backup configuration for this instance + */ + backupConfiguration?: Schema$StorageDatabasecenterPartnerapiV1mainBackupConfiguration; + /** + * Latest backup run information for this instance + */ + backupRun?: Schema$StorageDatabasecenterPartnerapiV1mainBackupRun; + /** + * The creation time of the resource, i.e. the time when resource is created and recorded in partner service. + */ + creationTime?: string | null; + /** + * Current state of the instance. + */ + currentState?: string | null; + /** + * The actual instance state. + */ + expectedState?: string | null; + /** + * Required. Unique identifier for a Database resource + */ + id?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; + /** + * The type of the instance. Specified at creation time. + */ + instanceType?: string | null; + /** + * The resource location. REQUIRED + */ + location?: string | null; + /** + * Unique identifier for this resource's immediate parent resource. This parent resource id would be used to build resource hierarchy in condor platform. + */ + primaryResourceId?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; + /** + * The product this resource represents. + */ + product?: Schema$StorageDatabasecenterProtoCommonProduct; + /** + * Closest parent Cloud Resource Manager container of this resource. It must either be resource name of a Cloud Resource Manager project, for ex: "projects/123". + */ + resourceContainer?: string | null; + /** + * Required. Different from unique_id, a resource name can be reused over time. That is after a resource named "ABC" is deleted, the name "ABC" can be used to to create a new resource within the same source. + */ + resourceName?: string | null; + /** + * The time at which the resource was updated and recorded at partner service. + */ + updationTime?: string | null; + /** + * User-provided labels, represented as a dictionary where each label is a single key value pair. + */ + userLabels?: {[key: string]: string} | null; + } + /** + * An error that occurred during a backup creation operation. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainOperationError { + /** + * Identifies the specific error that occurred. REQUIRED + */ + code?: string | null; + /** + * Additional information about the error encountered. REQUIRED + */ + message?: string | null; + } + export interface Schema$StorageDatabasecenterPartnerapiV1mainRetentionSettings { + quantityBasedRetention?: number | null; + /** + * The unit that 'retained_backups' represents. + */ + retentionUnit?: string | null; + timeBasedRetention?: string | null; + } + /** + * Product specification for Condor resources. + */ + export interface Schema$StorageDatabasecenterProtoCommonProduct { + /** + * The specific engine that the underlying database is running. + */ + engine?: string | null; + /** + * Type of specific database product. It could be CloudSQL, AlloyDB etc.. + */ + type?: string | null; + /** + * Version of the underlying database engine. Example values: For MySQL, it could be "8.0", "5.7" etc.. For Postgres, it could be "14", "15" etc.. + */ + version?: string | null; + } + /** + * Restrictions on STRING type values + */ + export interface Schema$StringRestrictions { + /** + * The list of allowed values, if bounded. This field will be empty if there is a unbounded number of allowed values. + */ + allowedValues?: string[] | null; + } + /** + * SupportedDatabaseFlag gives general information about a database flag, like type and allowed values. This is a static value that is defined on the server side, and it cannot be modified by callers. To set the Database flags on a particular Instance, a caller should modify the Instance.database_flags field. + */ + export interface Schema$SupportedDatabaseFlag { + /** + * Whether the database flag accepts multiple values. If true, a comma-separated list of stringified values may be specified. + */ + acceptsMultipleValues?: boolean | null; + /** + * The name of the database flag, e.g. "max_allowed_packets". The is a possibly key for the Instance.database_flags map field. + */ + flagName?: string | null; + /** + * Restriction on INTEGER type value. + */ + integerRestrictions?: Schema$IntegerRestrictions; + /** + * The name of the flag resource, following Google Cloud conventions, e.g.: * projects/{project\}/locations/{location\}/flags/{flag\} This field currently has no semantic meaning. + */ + name?: string | null; + /** + * Whether setting or updating this flag on an Instance requires a database restart. If a flag that requires database restart is set, the backend will automatically restart the database (making sure to satisfy any availability SLO's). + */ + requiresDbRestart?: boolean | null; + /** + * Restriction on STRING type value. + */ + stringRestrictions?: Schema$StringRestrictions; + /** + * Major database engine versions for which this flag is supported. + */ + supportedDbVersions?: string[] | null; + valueType?: string | null; + } + /** + * A time based retention policy specifies that all backups within a certain time period should be retained. + */ + export interface Schema$TimeBasedRetention { + /** + * The retention period. + */ + retentionPeriod?: string | null; + } + /** + * Message describing User object. + */ + export interface Schema$User { + /** + * Optional. List of database roles this user has. The database role strings are subject to the PostgreSQL naming conventions. + */ + databaseRoles?: string[] | null; + /** + * Output only. Name of the resource in the form of projects/{project\}/locations/{location\}/cluster/{cluster\}/users/{user\}. + */ + name?: string | null; + /** + * Input only. Password for the user. + */ + password?: string | null; + /** + * Optional. Type of this user. + */ + userType?: string | null; + } + /** + * The username/password for a database user. Used for specifying initial users at cluster creation time. + */ + export interface Schema$UserPassword { + /** + * The initial password for the user. + */ + password?: string | null; + /** + * The database username. + */ + user?: string | null; + } + /** + * A weekly schedule starts a backup at prescribed start times within a day, for the specified days of the week. The weekly schedule message is flexible and can be used to create many types of schedules. For example, to have a daily backup that starts at 22:00, configure the `start_times` field to have one element "22:00" and the `days_of_week` field to have all seven days of the week. + */ + export interface Schema$WeeklySchedule { + /** + * The days of the week to perform a backup. If this field is left empty, the default of every day of the week is used. + */ + daysOfWeek?: string[] | null; + /** + * The times during the day to start a backup. The start times are assumed to be in UTC and to be an exact hour (e.g., 04:00:00). If no start times are provided, a single fixed start time is chosen arbitrarily. + */ + startTimes?: Schema$GoogleTypeTimeOfDay[]; + } + + export class Resource$Projects { + context: APIRequestContext; + locations: Resource$Projects$Locations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Projects$Locations(this.context); + } + } + + export class Resource$Projects$Locations { + context: APIRequestContext; + backups: Resource$Projects$Locations$Backups; + clusters: Resource$Projects$Locations$Clusters; + operations: Resource$Projects$Locations$Operations; + supportedDatabaseFlags: Resource$Projects$Locations$Supporteddatabaseflags; + constructor(context: APIRequestContext) { + this.context = context; + this.backups = new Resource$Projects$Locations$Backups(this.context); + this.clusters = new Resource$Projects$Locations$Clusters(this.context); + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.supportedDatabaseFlags = + new Resource$Projects$Locations$Supporteddatabaseflags(this.context); + } + + /** + * Gets information about a location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists information about the supported locations for this service. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/locations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Get + extends StandardParameters { + /** + * Resource name for the location. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$List + extends StandardParameters { + /** + * A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). + */ + filter?: string; + /** + * The resource that owns the locations collection, if applicable. + */ + name?: string; + /** + * The maximum number of results to return. If not set, the service selects a default. + */ + pageSize?: number; + /** + * A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Backups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Backup in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Backups$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Backups$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Backups$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Backups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Backups$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/backups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Backup. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Backups$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single Backup. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Backups$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Backups$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Backups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Backups in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Backups$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Backups$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Backups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backups$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backups$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/backups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Backup. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Backups$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Backups$Create + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + backupId?: string; + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Backup; + } + export interface Params$Resource$Projects$Locations$Backups$Delete + extends StandardParameters { + /** + * Optional. The current etag of the Backup. If an etag is provided and does not match the current etag of the Backup, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string; + /** + * Required. Name of the resource. For the required format, see the comment on the Backup.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Backups$Get + extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Backups$List + extends StandardParameters { + /** + * Filtering results + */ + filter?: string; + /** + * Hint for how to order the results + */ + orderBy?: string; + /** + * Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListBackupsRequest + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Backups$Patch + extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if instance is not found. In that case, a new backup is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. The name of the backup resource with the format: * projects/{project\}/locations/{region\}/backups/{backup_id\} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Backup resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Backup; + } + + export class Resource$Projects$Locations$Clusters { + context: APIRequestContext; + instances: Resource$Projects$Locations$Clusters$Instances; + users: Resource$Projects$Locations$Clusters$Users; + constructor(context: APIRequestContext) { + this.context = context; + this.instances = new Resource$Projects$Locations$Clusters$Instances( + this.context + ); + this.users = new Resource$Projects$Locations$Clusters$Users(this.context); + } + + /** + * Creates a new Cluster in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clusters$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a cluster of type SECONDARY in the given location using the primary cluster as the source. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options: StreamMethodOptions + ): GaxiosPromise; + createsecondary( + params?: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options?: MethodOptions + ): GaxiosPromise; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + callback: BodyResponseCallback + ): void; + createsecondary(callback: BodyResponseCallback): void; + createsecondary( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Createsecondary + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Createsecondary; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Createsecondary; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/clusters:createsecondary').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single Cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clusters$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Clusters in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clusters$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clusters$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clusters$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Promotes a SECONDARY cluster. This turns down replication from the PRIMARY cluster and promotes a secondary cluster into its own standalone cluster. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + options: StreamMethodOptions + ): GaxiosPromise; + promote( + params?: Params$Resource$Projects$Locations$Clusters$Promote, + options?: MethodOptions + ): GaxiosPromise; + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + callback: BodyResponseCallback + ): void; + promote(callback: BodyResponseCallback): void; + promote( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Promote + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Promote; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Promote; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:promote').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new Cluster in a given project and location, with a volume restored from the provided source, either a backup ID or a point-in-time and a source cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + options: StreamMethodOptions + ): GaxiosPromise; + restore( + params?: Params$Resource$Projects$Locations$Clusters$Restore, + options?: MethodOptions + ): GaxiosPromise; + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + callback: BodyResponseCallback + ): void; + restore(callback: BodyResponseCallback): void; + restore( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Restore + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Restore; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Restore; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/clusters:restore').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Clusters$Create + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + clusterId?: string; + /** + * Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Createsecondary + extends StandardParameters { + /** + * Required. ID of the requesting object (the secondary cluster). + */ + clusterId?: string; + /** + * Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Delete + extends StandardParameters { + /** + * Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string; + /** + * Optional. Whether to cascade delete child instances for given cluster. + */ + force?: boolean; + /** + * Required. The name of the resource. For the required format, see the comment on the Cluster.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Clusters$Get + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Cluster.name field. + */ + name?: string; + /** + * Optional. The view of the cluster to return. Returns all default fields if not set. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$List + extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field. Additionally, you can perform an aggregated list operation by specifying a value with the following format: * projects/{project\}/locations/- + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Patch + extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if cluster is not found. In that case, a new cluster is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. The name of the cluster resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Cluster resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Promote + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Cluster.name field + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$PromoteClusterRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Restore + extends StandardParameters { + /** + * Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RestoreClusterRequest; + } + + export class Resource$Projects$Locations$Clusters$Instances { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Instance in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/instances').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new SECONDARY Instance in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options: StreamMethodOptions + ): GaxiosPromise; + createsecondary( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options?: MethodOptions + ): GaxiosPromise; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + callback: BodyResponseCallback + ): void; + createsecondary(callback: BodyResponseCallback): void; + createsecondary( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/instances:createsecondary').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Instance. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Forces a Failover for a highly available instance. Failover promotes the HA standby instance as the new primary. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options: StreamMethodOptions + ): GaxiosPromise; + failover( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options?: MethodOptions + ): GaxiosPromise; + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + callback: BodyResponseCallback + ): void; + failover(callback: BodyResponseCallback): void; + failover( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Failover + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Failover; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Failover; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:failover').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single Instance. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Injects fault in an instance. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options: StreamMethodOptions + ): GaxiosPromise; + injectFault( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options?: MethodOptions + ): GaxiosPromise; + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + callback: BodyResponseCallback + ): void; + injectFault(callback: BodyResponseCallback): void; + injectFault( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Injectfault + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Injectfault; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Injectfault; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:injectFault').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Instances in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clusters$Instances$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/instances').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Instance. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Restart an Instance in a cluster. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options: StreamMethodOptions + ): GaxiosPromise; + restart( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options?: MethodOptions + ): GaxiosPromise; + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + callback: BodyResponseCallback + ): void; + restart(callback: BodyResponseCallback): void; + restart( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Restart + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Restart; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Restart; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:restart').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Clusters$Instances$Create + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + instanceId?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + instanceId?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Delete + extends StandardParameters { + /** + * Optional. The current etag of the Instance. If an etag is provided and does not match the current etag of the Instance, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string; + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Failover + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FailoverInstanceRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Get + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + /** + * The view of the instance to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Injectfault + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InjectFaultRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$List + extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. Additionally, you can perform an aggregated list operation by specifying a value with one of the following formats: * projects/{project\}/locations/-/clusters/- * projects/{project\}/locations/{region\}/clusters/- + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Patch + extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if instance is not found. In that case, a new instance is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. The name of the instance resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\}/instances/{instance_id\} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Instance resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Restart + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RestartInstanceRequest; + } + + export class Resource$Projects$Locations$Clusters$Users { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new User in a given project, location, and cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clusters$Users$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single User. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single User. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clusters$Users$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Users in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clusters$Users$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single User. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Clusters$Users$Create + extends StandardParameters { + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Required. ID of the requesting object. + */ + userId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$Delete + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the User.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$Get + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the User.name field. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$List + extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListUsersRequest + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$Patch + extends StandardParameters { + /** + * Optional. Allow missing fields in the update mask. + */ + allowMissing?: boolean; + /** + * Output only. Name of the resource in the form of projects/{project\}/locations/{location\}/cluster/{cluster\}/users/{user\}. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the User resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } + + export class Resource$Projects$Locations$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions + ): GaxiosPromise; + cancel( + params?: Params$Resource$Projects$Locations$Operations$Cancel, + options?: MethodOptions + ): GaxiosPromise; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:cancel').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Operations$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Operations$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Operations$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Operations$Cancel + extends StandardParameters { + /** + * The name of the operation resource to be cancelled. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CancelOperationRequest; + } + export interface Params$Resource$Projects$Locations$Operations$Delete + extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$Get + extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$List + extends StandardParameters { + /** + * The standard list filter. + */ + filter?: string; + /** + * The name of the operation's parent resource. + */ + name?: string; + /** + * The standard list page size. + */ + pageSize?: number; + /** + * The standard list page token. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Supporteddatabaseflags { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists SupportedDatabaseFlags for a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Supporteddatabaseflags$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Supporteddatabaseflags$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Supporteddatabaseflags$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/supportedDatabaseFlags').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Supporteddatabaseflags$List + extends StandardParameters { + /** + * Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. The required format is: * projects/{project\}/locations/{location\} Regardless of the parent specified here, as long it is contains a valid project and location, the service will return a static list of supported flags resources. Note that we do not yet support region-specific flags. + */ + parent?: string; + } +} diff --git a/src/apis/alloydb/v1alpha.ts b/src/apis/alloydb/v1alpha.ts new file mode 100644 index 0000000000..40ab821c97 --- /dev/null +++ b/src/apis/alloydb/v1alpha.ts @@ -0,0 +1,5279 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/no-empty-interface */ +/* eslint-disable @typescript-eslint/no-namespace */ +/* eslint-disable no-irregular-whitespace */ + +import { + OAuth2Client, + JWT, + Compute, + UserRefreshClient, + BaseExternalAccountClient, + GaxiosPromise, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace alloydb_v1alpha { + export interface Options extends GlobalOptions { + version: 'v1alpha'; + } + + interface StandardParameters { + /** + * Auth client or API Key for the request + */ + auth?: + | string + | OAuth2Client + | JWT + | Compute + | UserRefreshClient + | BaseExternalAccountClient + | GoogleAuth; + + /** + * V1 error format. + */ + '$.xgafv'?: string; + /** + * OAuth access token. + */ + access_token?: string; + /** + * Data format for response. + */ + alt?: string; + /** + * JSONP + */ + callback?: string; + /** + * Selector specifying which fields to include in a partial response. + */ + fields?: string; + /** + * 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. + */ + key?: string; + /** + * OAuth 2.0 token for the current user. + */ + oauth_token?: string; + /** + * Returns response with indentations and line breaks. + */ + prettyPrint?: boolean; + /** + * 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. + */ + quotaUser?: string; + /** + * Legacy upload protocol for media (e.g. "media", "multipart"). + */ + uploadType?: string; + /** + * Upload protocol for media (e.g. "raw", "multipart"). + */ + upload_protocol?: string; + } + + /** + * AlloyDB API + * + * AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases. + * + * @example + * ```js + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1alpha'); + * ``` + */ + export class Alloydb { + context: APIRequestContext; + projects: Resource$Projects; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.projects = new Resource$Projects(this.context); + } + } + + /** + * Message describing the user-specified automated backup policy. All fields in the automated backup policy are optional. Defaults for each field are provided if they are not set. + */ + export interface Schema$AutomatedBackupPolicy { + /** + * The length of the time window during which a backup can be taken. If a backup does not succeed within this time window, it will be canceled and considered failed. The backup window must be at least 5 minutes long. There is no upper bound on the window. If not set, it defaults to 1 hour. + */ + backupWindow?: string | null; + /** + * Whether automated automated backups are enabled. If not set, defaults to true. + */ + enabled?: boolean | null; + /** + * Optional. The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * Labels to apply to backups created using this configuration. + */ + labels?: {[key: string]: string} | null; + /** + * The location where the backup will be stored. Currently, the only supported option is to store the backup in the same region as the cluster. If empty, defaults to the region of the cluster. + */ + location?: string | null; + /** + * Quantity-based Backup retention policy to retain recent backups. + */ + quantityBasedRetention?: Schema$QuantityBasedRetention; + /** + * Time-based Backup retention policy. + */ + timeBasedRetention?: Schema$TimeBasedRetention; + /** + * Weekly schedule for the Backup. + */ + weeklySchedule?: Schema$WeeklySchedule; + } + /** + * Message describing Backup object + */ + export interface Schema$Backup { + /** + * Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 + */ + annotations?: {[key: string]: string} | null; + /** + * Required. The full resource name of the backup source cluster (e.g., projects/{project\}/locations/{region\}/clusters/{cluster_id\}). + */ + clusterName?: string | null; + /** + * Output only. The system-generated UID of the cluster which was used to create this resource. + */ + clusterUid?: string | null; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Output only. The database engine major version of the cluster this backup was created from. Any restored cluster created from this backup will have the same database version. + */ + databaseVersion?: string | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-provided description of the backup. + */ + description?: string | null; + /** + * User-settable and human-readable display name for the Backup. + */ + displayName?: string | null; + /** + * Optional. The encryption config can be specified to encrypt the backup with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * Output only. The encryption information for the backup. + */ + encryptionInfo?: Schema$EncryptionInfo; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * Output only. The QuantityBasedExpiry of the backup, specified by the backup's retention policy. Once the expiry quantity is over retention, the backup is eligible to be garbage collected. + */ + expiryQuantity?: Schema$QuantityBasedExpiry; + /** + * Output only. The time at which after the backup is eligible to be garbage collected. It is the duration specified by the backup's retention policy, added to the backup's create_time. + */ + expiryTime?: string | null; + /** + * Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Output only. The name of the backup resource with the format: * projects/{project\}/locations/{region\}/backups/{backup_id\} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string | null; + /** + * Output only. Reconciling (https://google.aip.dev/128#reconciliation), if true, indicates that the service is actively updating the resource. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Reserved for future use. + */ + satisfiesPzs?: boolean | null; + /** + * Output only. The size of the backup in bytes. + */ + sizeBytes?: string | null; + /** + * Output only. The current state of the backup. + */ + state?: string | null; + /** + * The backup type, which suggests the trigger for the backup. + */ + type?: string | null; + /** + * Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. + */ + uid?: string | null; + /** + * Output only. Update time stamp + */ + updateTime?: string | null; + } + /** + * Message describing a BackupSource. + */ + export interface Schema$BackupSource { + /** + * Required. The name of the backup resource with the format: * projects/{project\}/locations/{region\}/backups/{backup_id\} + */ + backupName?: string | null; + /** + * Output only. The system-generated UID of the backup which was used to create this resource. The UID is generated when the backup is created, and it is retained until the backup is deleted. + */ + backupUid?: string | null; + } + /** + * The request message for Operations.CancelOperation. + */ + export interface Schema$CancelOperationRequest {} + /** + * Client connection configuration + */ + export interface Schema$ClientConnectionConfig { + /** + * Optional. Configuration to enforce connectors only (ex: AuthProxy) connections to the database. + */ + requireConnectors?: boolean | null; + /** + * Optional. SSL config option for this instance. + */ + sslConfig?: Schema$SslConfig; + } + /** + * Operation metadata returned by the CLH during resource state reconciliation. + */ + export interface Schema$CloudControl2SharedOperationsReconciliationOperationMetadata { + /** + * DEPRECATED. Use exclusive_action instead. + */ + deleteResource?: boolean | null; + /** + * Excluisive action returned by the CLH. + */ + exclusiveAction?: string | null; + } + /** + * A cluster is a collection of regional AlloyDB resources. It can include a primary instance and one or more read pool instances. All cluster resources share a storage layer, which scales as needed. + */ + export interface Schema$Cluster { + /** + * Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 + */ + annotations?: {[key: string]: string} | null; + /** + * The automated backup policy for this cluster. If no policy is provided then the default policy will be used. If backups are supported for the cluster, the default policy takes one backup a day, has a backup window of 1 hour, and retains backups for 14 days. For more information on the defaults, consult the documentation for the message type. + */ + automatedBackupPolicy?: Schema$AutomatedBackupPolicy; + /** + * Output only. Cluster created from backup. + */ + backupSource?: Schema$BackupSource; + /** + * Output only. The type of the cluster. This is an output-only field and it's populated at the Cluster creation time or the Cluster promotion time. The cluster type is determined by which RPC was used to create the cluster (i.e. `CreateCluster` vs. `CreateSecondaryCluster` + */ + clusterType?: string | null; + /** + * Optional. Continuous backup configuration for this cluster. + */ + continuousBackupConfig?: Schema$ContinuousBackupConfig; + /** + * Output only. Continuous backup properties for this cluster. + */ + continuousBackupInfo?: Schema$ContinuousBackupInfo; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Optional. The database engine major version. This is an optional field and it is populated at the Cluster creation time. If a database version is not supplied at cluster creation time, then a default database version will be used. + */ + databaseVersion?: string | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-settable and human-readable display name for the Cluster. + */ + displayName?: string | null; + /** + * Optional. The encryption config can be specified to encrypt the data disks and other persistent data resources of a cluster with a customer-managed encryption key (CMEK). When this field is not specified, the cluster will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * Output only. The encryption information for the cluster. + */ + encryptionInfo?: Schema$EncryptionInfo; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * Input only. Initial user to setup during cluster creation. Required. If used in `RestoreCluster` this is ignored. + */ + initialUser?: Schema$UserPassword; + /** + * Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Output only. Cluster created via DMS migration. + */ + migrationSource?: Schema$MigrationSource; + /** + * Output only. The name of the cluster resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string | null; + /** + * Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: "projects/{project\}/global/networks/{network_id\}". This is required to create a cluster. It can be updated, but it cannot be removed. Deprecated, use network_config.network instead. + */ + network?: string | null; + networkConfig?: Schema$NetworkConfig; + /** + * Output only. Cross Region replication config specific to PRIMARY cluster. + */ + primaryConfig?: Schema$PrimaryConfig; + /** + * Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Cluster does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Reserved for future use. + */ + satisfiesPzs?: boolean | null; + /** + * Cross Region replication config specific to SECONDARY cluster. + */ + secondaryConfig?: Schema$SecondaryConfig; + /** + * SSL configuration for this AlloyDB cluster. + */ + sslConfig?: Schema$SslConfig; + /** + * Output only. The current serving state of the cluster. + */ + state?: string | null; + /** + * Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. + */ + uid?: string | null; + /** + * Output only. Update time stamp + */ + updateTime?: string | null; + } + /** + * ConnectionInfo singleton resource. https://google.aip.dev/156 + */ + export interface Schema$ConnectionInfo { + /** + * Output only. The unique ID of the Instance. + */ + instanceUid?: string | null; + /** + * Output only. The private network IP address for the Instance. This is the default IP for the instance and is always created (even if enable_public_ip is set). This is the connection endpoint for an end-user application. + */ + ipAddress?: string | null; + /** + * The name of the ConnectionInfo singleton resource, e.g.: projects/{project\}/locations/{location\}/clusters/x/instances/x/connectionInfo This field currently has no semantic meaning. + */ + name?: string | null; + /** + * Output only. The pem-encoded chain that may be used to verify the X.509 certificate. Expected to be in issuer-to-root order according to RFC 5246. + */ + pemCertificateChain?: string[] | null; + } + /** + * ContinuousBackupConfig describes the continuous backups recovery configurations of a cluster. + */ + export interface Schema$ContinuousBackupConfig { + /** + * Whether ContinuousBackup is enabled. + */ + enabled?: boolean | null; + /** + * The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * The number of days that are eligible to restore from using PITR. To support the entire recovery window, backups and logs are retained for one day more than the recovery window. If not set, defaults to 14 days. + */ + recoveryWindowDays?: number | null; + } + /** + * ContinuousBackupInfo describes the continuous backup properties of a cluster. + */ + export interface Schema$ContinuousBackupInfo { + /** + * Output only. The earliest restorable time that can be restored to. Output only field. + */ + earliestRestorableTime?: string | null; + /** + * Output only. When ContinuousBackup was most recently enabled. Set to null if ContinuousBackup is not enabled. + */ + enabledTime?: string | null; + /** + * Output only. The encryption information for the WALs and backups required for ContinuousBackup. + */ + encryptionInfo?: Schema$EncryptionInfo; + /** + * Output only. Days of the week on which a continuous backup is taken. Output only field. Ignored if passed into the request. + */ + schedule?: string[] | null; + } + /** + * Message describing a ContinuousBackupSource. + */ + export interface Schema$ContinuousBackupSource { + /** + * Required. The source cluster from which to restore. This cluster must have continuous backup enabled for this operation to succeed. For the required format, see the comment on the Cluster.name field. + */ + cluster?: string | null; + /** + * Required. The point in time to restore to. + */ + pointInTime?: string | null; + } + /** + * 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); \} + */ + export interface Schema$Empty {} + /** + * EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key). + */ + export interface Schema$EncryptionConfig { + /** + * The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME] + */ + kmsKeyName?: string | null; + } + /** + * EncryptionInfo describes the encryption information of a cluster or a backup. + */ + export interface Schema$EncryptionInfo { + /** + * Output only. Type of encryption. + */ + encryptionType?: string | null; + /** + * Output only. Cloud KMS key versions that are being used to protect the database or the backup. + */ + kmsKeyVersions?: string[] | null; + } + /** + * Message for triggering failover on an Instance + */ + export interface Schema$FailoverInstanceRequest { + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the failover. + */ + validateOnly?: boolean | null; + } + /** + * Message for requests to generate a client certificate signed by the Cluster CA. + */ + export interface Schema$GenerateClientCertificateRequest { + /** + * Optional. An optional hint to the endpoint to generate the client certificate with the requested duration. The duration can be from 1 hour to 24 hours. The endpoint may or may not honor the hint. If the hint is left unspecified or is not honored, then the endpoint will pick an appropriate default duration. + */ + certDuration?: string | null; + /** + * Optional. A pem-encoded X.509 certificate signing request (CSR). + */ + pemCsr?: string | null; + /** + * Optional. The public key from the client. + */ + publicKey?: string | null; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. An optional hint to the endpoint to generate a client ceritificate that can be used by AlloyDB connectors to exchange additional metadata with the server after TLS handshake. + */ + useMetadataExchange?: boolean | null; + } + /** + * Message returned by a GenerateClientCertificate operation. + */ + export interface Schema$GenerateClientCertificateResponse { + /** + * Optional. The pem-encoded cluster ca X.509 certificate. + */ + caCert?: string | null; + /** + * Output only. The pem-encoded, signed X.509 certificate. + */ + pemCertificate?: string | null; + /** + * Output only. The pem-encoded chain that may be used to verify the X.509 certificate. Expected to be in issuer-to-root order according to RFC 5246. + */ + pemCertificateChain?: string[] | null; + } + /** + * The response message for Locations.ListLocations. + */ + export interface Schema$GoogleCloudLocationListLocationsResponse { + /** + * A list of locations that matches the specified filter in the request. + */ + locations?: Schema$GoogleCloudLocationLocation[]; + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + } + /** + * A resource that represents a Google Cloud location. + */ + export interface Schema$GoogleCloudLocationLocation { + /** + * The friendly name for this location, typically a nearby city name. For example, "Tokyo". + */ + displayName?: string | null; + /** + * Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\} + */ + labels?: {[key: string]: string} | null; + /** + * The canonical id for this location. For example: `"us-east1"`. + */ + locationId?: string | null; + /** + * Service-specific metadata. For example the available capacity at the given location. + */ + metadata?: {[key: string]: any} | null; + /** + * Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` + */ + name?: string | null; + } + /** + * Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. + */ + export interface Schema$GoogleTypeTimeOfDay { + /** + * Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. + */ + hours?: number | null; + /** + * Minutes of hour of day. Must be from 0 to 59. + */ + minutes?: number | null; + /** + * Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + */ + nanos?: number | null; + /** + * Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds. + */ + seconds?: number | null; + } + /** + * Message for triggering fault injection on an instance + */ + export interface Schema$InjectFaultRequest { + /** + * Required. The type of fault to be injected in an instance. + */ + faultType?: string | null; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the fault injection. + */ + validateOnly?: boolean | null; + } + /** + * An Instance is a computing unit that an end customer can connect to. It's the main unit of computing resources in AlloyDB. + */ + export interface Schema$Instance { + /** + * Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 + */ + annotations?: {[key: string]: string} | null; + /** + * Availability type of an Instance. If empty, defaults to REGIONAL for primary instances. For read pools, availability_type is always UNSPECIFIED. Instances in the read pools are evenly distributed across available zones within the region (i.e. read pools with more than one node will have a node in at least two zones). + */ + availabilityType?: string | null; + /** + * Optional. Client connection specific configurations + */ + clientConnectionConfig?: Schema$ClientConnectionConfig; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Database flags. Set at instance level. * They are copied from primary instance on read instance creation. * Read instances can set new or override existing flags that are relevant for reads, e.g. for enabling columnar cache on a read instance. Flags set on read instance may or may not be present on primary. This is a list of "key": "value" pairs. "key": The name of the flag. These flags are passed at instance setup time, so include both server options and system variables for Postgres. Flags are specified with underscores, not hyphens. "value": The value of the flag. Booleans are set to **on** for true and **off** for false. This field must be omitted if the flag doesn't take a value. + */ + databaseFlags?: {[key: string]: string} | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-settable and human-readable display name for the Instance. + */ + displayName?: string | null; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * The Compute Engine zone that the instance should serve from, per https://cloud.google.com/compute/docs/regions-zones This can ONLY be specified for ZONAL instances. If present for a REGIONAL instance, an error will be thrown. If this is absent for a ZONAL instance, instance is created in a random zone with available capacity. + */ + gceZone?: string | null; + /** + * Required. The type of the instance. Specified at creation time. + */ + instanceType?: string | null; + /** + * Output only. The IP address for the Instance. This is the connection endpoint for an end-user application. + */ + ipAddress?: string | null; + /** + * Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Configurations for the machines that host the underlying database engine. + */ + machineConfig?: Schema$MachineConfig; + /** + * Output only. The name of the instance resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\}/instances/{instance_id\} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} + */ + name?: string | null; + /** + * Output only. List of available read-only VMs in this instance, including the standby for a PRIMARY instance. + */ + nodes?: Schema$Node[]; + /** + * Configuration for query insights. + */ + queryInsightsConfig?: Schema$QueryInsightsInstanceConfig; + /** + * Read pool specific config. + */ + readPoolConfig?: Schema$ReadPoolConfig; + /** + * Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Instance does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Reserved for future use. + */ + satisfiesPzs?: boolean | null; + /** + * Output only. The current serving state of the instance. + */ + state?: string | null; + /** + * Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. + */ + uid?: string | null; + /** + * Update policy that will be applied during instance update. This field is not persisted when you update the instance. To use a non-default update policy, you must specify explicitly specify the value in each update request. + */ + updatePolicy?: Schema$UpdatePolicy; + /** + * Output only. Update time stamp + */ + updateTime?: string | null; + /** + * Output only. This is set for the read-write VM of the PRIMARY instance only. + */ + writableNode?: Schema$Node; + } + /** + * Restrictions on INTEGER type values. + */ + export interface Schema$IntegerRestrictions { + /** + * The maximum value that can be specified, if applicable. + */ + maxValue?: string | null; + /** + * The minimum value that can be specified, if applicable. + */ + minValue?: string | null; + } + /** + * Message for response to listing Backups + */ + export interface Schema$ListBackupsResponse { + /** + * The list of Backup + */ + backups?: Schema$Backup[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Clusters + */ + export interface Schema$ListClustersResponse { + /** + * The list of Cluster + */ + clusters?: Schema$Cluster[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Instances + */ + export interface Schema$ListInstancesResponse { + /** + * The list of Instance + */ + instances?: Schema$Instance[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response message for Operations.ListOperations. + */ + export interface Schema$ListOperationsResponse { + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + /** + * A list of operations that matches the specified filter in the request. + */ + operations?: Schema$Operation[]; + } + /** + * Message for response to listing SupportedDatabaseFlags. + */ + export interface Schema$ListSupportedDatabaseFlagsResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The list of SupportedDatabaseFlags. + */ + supportedDatabaseFlags?: Schema$SupportedDatabaseFlag[]; + } + /** + * Message for response to listing Users + */ + export interface Schema$ListUsersResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + /** + * The list of User + */ + users?: Schema$User[]; + } + /** + * MachineConfig describes the configuration of a machine. + */ + export interface Schema$MachineConfig { + /** + * The number of CPU's in the VM instance. + */ + cpuCount?: number | null; + } + /** + * Subset of the source instance configuration that is available when reading the cluster resource. + */ + export interface Schema$MigrationSource { + /** + * Output only. The host and port of the on-premises instance in host:port format + */ + hostPort?: string | null; + /** + * Output only. Place holder for the external source identifier(e.g DMS job name) that created the cluster. + */ + referenceId?: string | null; + /** + * Output only. Type of migration source. + */ + sourceType?: string | null; + } + /** + * Metadata related to network configuration. + */ + export interface Schema$NetworkConfig { + /** + * Optional. Name of the allocated IP range for the private IP AlloyDB cluster, for example: "google-managed-services-default". If set, the instance IPs for this cluster will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. Field name is intended to be consistent with CloudSQL. + */ + allocatedIpRange?: string | null; + /** + * Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: "projects/{project_number\}/global/networks/{network_id\}". This is required to create a cluster. It can be updated, but it cannot be removed. + */ + network?: string | null; + } + /** + * Details of a single node in the instance. Nodes in an AlloyDB instance are ephemereal, they can change during update, failover, autohealing and resize operations. + */ + export interface Schema$Node { + /** + * The identifier of the VM e.g. "test-read-0601-407e52be-ms3l". + */ + id?: string | null; + /** + * The private IP address of the VM e.g. "10.57.0.34". + */ + ip?: string | null; + /** + * Determined by state of the compute VM and postgres-service health. Compute VM state can have values listed in https://cloud.google.com/compute/docs/instances/instance-life-cycle and postgres-service health can have values: HEALTHY and UNHEALTHY. + */ + state?: string | null; + /** + * The Compute Engine zone of the VM e.g. "us-central1-b". + */ + zoneId?: string | null; + } + /** + * This resource represents a long-running operation that is the result of a network API call. + */ + export interface Schema$Operation { + /** + * If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. + */ + done?: boolean | null; + /** + * The error result of the operation in case of failure or cancellation. + */ + error?: Schema$Status; + /** + * Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. + */ + metadata?: {[key: string]: any} | null; + /** + * The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id\}`. + */ + name?: string | null; + /** + * The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + */ + response?: {[key: string]: any} | null; + } + /** + * Represents the metadata of the long-running operation. + */ + export interface Schema$OperationMetadata { + /** + * Output only. API version used to start the operation. + */ + apiVersion?: string | null; + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + */ + requestedCancellation?: boolean | null; + /** + * Output only. Human-readable status of the operation, if any. + */ + statusMessage?: string | null; + /** + * Output only. Server-defined resource path for the target of the operation. + */ + target?: string | null; + /** + * Output only. Name of the verb executed by the operation. + */ + verb?: string | null; + } + /** + * Configuration for the primary cluster. It has the list of clusters that are replicating from this cluster. This should be set if and only if the cluster is of type PRIMARY. + */ + export interface Schema$PrimaryConfig { + /** + * Output only. Names of the clusters that are replicating from this cluster. + */ + secondaryClusterNames?: string[] | null; + } + /** + * Message for promoting a Cluster + */ + export interface Schema$PromoteClusterRequest { + /** + * Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string | null; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete. + */ + validateOnly?: boolean | null; + } + /** + * A backup's position in a quantity-based retention queue, of backups with the same source cluster and type, with length, retention, specified by the backup's retention policy. Once the position is greater than the retention, the backup is eligible to be garbage collected. Example: 5 backups from the same source cluster and type with a quantity-based retention of 3 and denoted by backup_id (position, retention). Safe: backup_5 (1, 3), backup_4, (2, 3), backup_3 (3, 3). Awaiting garbage collection: backup_2 (4, 3), backup_1 (5, 3) + */ + export interface Schema$QuantityBasedExpiry { + /** + * Output only. The backup's position among its backups with the same source cluster and type, by descending chronological order create time(i.e. newest first). + */ + retentionCount?: number | null; + /** + * Output only. The length of the quantity-based queue, specified by the backup's retention policy. + */ + totalRetentionCount?: number | null; + } + /** + * A quantity based policy specifies that a certain number of the most recent successful backups should be retained. + */ + export interface Schema$QuantityBasedRetention { + /** + * The number of backups to retain. + */ + count?: number | null; + } + /** + * QueryInsights Instance specific configuration. + */ + export interface Schema$QueryInsightsInstanceConfig { + /** + * Number of query execution plans captured by Insights per minute for all queries combined. The default value is 5. Any integer between 0 and 20 is considered valid. + */ + queryPlansPerMinute?: number | null; + /** + * Query string length. The default value is 1024. Any integer between 256 and 4500 is considered valid. + */ + queryStringLength?: number | null; + /** + * Record application tags for an instance. This flag is turned "on" by default. + */ + recordApplicationTags?: boolean | null; + /** + * Record client address for an instance. Client address is PII information. This flag is turned "on" by default. + */ + recordClientAddress?: boolean | null; + } + /** + * Configuration for a read pool instance. + */ + export interface Schema$ReadPoolConfig { + /** + * Read capacity, i.e. number of nodes in a read pool instance. + */ + nodeCount?: number | null; + } + export interface Schema$RestartInstanceRequest { + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the restart. + */ + validateOnly?: boolean | null; + } + /** + * Message for restoring a Cluster from a backup or another cluster at a given point in time. + */ + export interface Schema$RestoreClusterRequest { + /** + * Backup source. + */ + backupSource?: Schema$BackupSource; + /** + * Required. The resource being created + */ + cluster?: Schema$Cluster; + /** + * Required. ID of the requesting object. + */ + clusterId?: string | null; + /** + * ContinuousBackup source. Continuous backup needs to be enabled in the source cluster for this operation to succeed. + */ + continuousBackupSource?: Schema$ContinuousBackupSource; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the import request. + */ + validateOnly?: boolean | null; + } + /** + * Configuration information for the secondary cluster. This should be set if and only if the cluster is of type SECONDARY. + */ + export interface Schema$SecondaryConfig { + /** + * The name of the primary cluster name with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} + */ + primaryClusterName?: string | null; + } + /** + * SSL configuration. + */ + export interface Schema$SslConfig { + /** + * Optional. Certificate Authority (CA) source. Only CA_SOURCE_MANAGED is supported currently, and is the default value. + */ + caSource?: string | null; + /** + * Optional. SSL mode. Specifies client-server SSL/TLS connection behavior. + */ + sslMode?: string | null; + } + /** + * 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). + */ + export interface Schema$Status { + /** + * The status code, which should be an enum value of google.rpc.Code. + */ + code?: number | null; + /** + * A list of messages that carry the error details. There is a common set of message types for APIs to use. + */ + details?: Array<{[key: string]: any}> | null; + /** + * 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. + */ + message?: string | null; + } + /** + * Configuration for availability of database instance + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration { + /** + * 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). + */ + availabilityType?: string | null; + externalReplicaConfigured?: boolean | null; + promotableReplicaConfigured?: boolean | null; + } + /** + * Configuration for automatic backups + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainBackupConfiguration { + /** + * Whether customer visible automated backups are enabled on the instance. + */ + automatedBackupEnabled?: boolean | null; + /** + * Backup retention settings. + */ + backupRetentionSettings?: Schema$StorageDatabasecenterPartnerapiV1mainRetentionSettings; + } + /** + * A backup run. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainBackupRun { + /** + * The time the backup operation completed. REQUIRED + */ + endTime?: string | null; + /** + * Information about why the backup operation failed. This is only present if the run has the FAILED status. OPTIONAL + */ + error?: Schema$StorageDatabasecenterPartnerapiV1mainOperationError; + /** + * The time the backup operation started. REQUIRED + */ + startTime?: string | null; + /** + * The status of this run. REQUIRED + */ + status?: string | null; + } + /** + * DatabaseResourceFeed is the top level proto to be used to ingest different database resource level events into Condor platform. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceFeed { + /** + * Required. Timestamp when feed is generated. + */ + feedTimestamp?: string | null; + /** + * Required. Type feed to be ingested into condor + */ + feedType?: string | null; + /** + * Required. Primary key associated with the Resource + */ + resourceId?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; + /** + * More feed data would be added in subsequent CLs + */ + resourceMetadata?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata; + } + /** + * DatabaseResourceId will serve as primary key for any resource ingestion event. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId { + /** + * Required. Cloud provider name. Ex: GCP/AWS/Azure/OnPrem/SelfManaged + */ + provider?: string | null; + /** + * Required. The type of resource this ID is identifying. Ex google.sqladmin.Instance, google.alloydb.cluster, google.sqladmin.Backup REQUIRED + */ + resourceType?: string | null; + /** + * Required. A service-local token that distinguishes this resource from other resources within the same service. + */ + uniqueId?: string | null; + } + /** + * Common model for database resource instance metadata. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata { + /** + * Availability configuration for this instance + */ + availabilityConfiguration?: Schema$StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration; + /** + * Backup configuration for this instance + */ + backupConfiguration?: Schema$StorageDatabasecenterPartnerapiV1mainBackupConfiguration; + /** + * Latest backup run information for this instance + */ + backupRun?: Schema$StorageDatabasecenterPartnerapiV1mainBackupRun; + /** + * The creation time of the resource, i.e. the time when resource is created and recorded in partner service. + */ + creationTime?: string | null; + /** + * Current state of the instance. + */ + currentState?: string | null; + /** + * The actual instance state. + */ + expectedState?: string | null; + /** + * Required. Unique identifier for a Database resource + */ + id?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; + /** + * The type of the instance. Specified at creation time. + */ + instanceType?: string | null; + /** + * The resource location. REQUIRED + */ + location?: string | null; + /** + * Unique identifier for this resource's immediate parent resource. This parent resource id would be used to build resource hierarchy in condor platform. + */ + primaryResourceId?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; + /** + * The product this resource represents. + */ + product?: Schema$StorageDatabasecenterProtoCommonProduct; + /** + * Closest parent Cloud Resource Manager container of this resource. It must either be resource name of a Cloud Resource Manager project, for ex: "projects/123". + */ + resourceContainer?: string | null; + /** + * Required. Different from unique_id, a resource name can be reused over time. That is after a resource named "ABC" is deleted, the name "ABC" can be used to to create a new resource within the same source. + */ + resourceName?: string | null; + /** + * The time at which the resource was updated and recorded at partner service. + */ + updationTime?: string | null; + /** + * User-provided labels, represented as a dictionary where each label is a single key value pair. + */ + userLabels?: {[key: string]: string} | null; + } + /** + * An error that occurred during a backup creation operation. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainOperationError { + /** + * Identifies the specific error that occurred. REQUIRED + */ + code?: string | null; + /** + * Additional information about the error encountered. REQUIRED + */ + message?: string | null; + } + export interface Schema$StorageDatabasecenterPartnerapiV1mainRetentionSettings { + quantityBasedRetention?: number | null; + /** + * The unit that 'retained_backups' represents. + */ + retentionUnit?: string | null; + timeBasedRetention?: string | null; + } + /** + * Product specification for Condor resources. + */ + export interface Schema$StorageDatabasecenterProtoCommonProduct { + /** + * The specific engine that the underlying database is running. + */ + engine?: string | null; + /** + * Type of specific database product. It could be CloudSQL, AlloyDB etc.. + */ + type?: string | null; + /** + * Version of the underlying database engine. Example values: For MySQL, it could be "8.0", "5.7" etc.. For Postgres, it could be "14", "15" etc.. + */ + version?: string | null; + } + /** + * Restrictions on STRING type values + */ + export interface Schema$StringRestrictions { + /** + * The list of allowed values, if bounded. This field will be empty if there is a unbounded number of allowed values. + */ + allowedValues?: string[] | null; + } + /** + * SupportedDatabaseFlag gives general information about a database flag, like type and allowed values. This is a static value that is defined on the server side, and it cannot be modified by callers. To set the Database flags on a particular Instance, a caller should modify the Instance.database_flags field. + */ + export interface Schema$SupportedDatabaseFlag { + /** + * Whether the database flag accepts multiple values. If true, a comma-separated list of stringified values may be specified. + */ + acceptsMultipleValues?: boolean | null; + /** + * The name of the database flag, e.g. "max_allowed_packets". The is a possibly key for the Instance.database_flags map field. + */ + flagName?: string | null; + /** + * Restriction on INTEGER type value. + */ + integerRestrictions?: Schema$IntegerRestrictions; + /** + * The name of the flag resource, following Google Cloud conventions, e.g.: * projects/{project\}/locations/{location\}/flags/{flag\} This field currently has no semantic meaning. + */ + name?: string | null; + /** + * Whether setting or updating this flag on an Instance requires a database restart. If a flag that requires database restart is set, the backend will automatically restart the database (making sure to satisfy any availability SLO's). + */ + requiresDbRestart?: boolean | null; + /** + * Restriction on STRING type value. + */ + stringRestrictions?: Schema$StringRestrictions; + /** + * Major database engine versions for which this flag is supported. + */ + supportedDbVersions?: string[] | null; + valueType?: string | null; + } + /** + * A time based retention policy specifies that all backups within a certain time period should be retained. + */ + export interface Schema$TimeBasedRetention { + /** + * The retention period. + */ + retentionPeriod?: string | null; + } + /** + * Policy to be used while updating the instance. + */ + export interface Schema$UpdatePolicy { + /** + * Mode for updating the instance. + */ + mode?: string | null; + } + /** + * Message describing User object. + */ + export interface Schema$User { + /** + * Optional. List of database roles this user has. The database role strings are subject to the PostgreSQL naming conventions. + */ + databaseRoles?: string[] | null; + /** + * Output only. Name of the resource in the form of projects/{project\}/locations/{location\}/cluster/{cluster\}/users/{user\}. + */ + name?: string | null; + /** + * Input only. Password for the user. + */ + password?: string | null; + /** + * Optional. Type of this user. + */ + userType?: string | null; + } + /** + * The username/password for a database user. Used for specifying initial users at cluster creation time. + */ + export interface Schema$UserPassword { + /** + * The initial password for the user. + */ + password?: string | null; + /** + * The database username. + */ + user?: string | null; + } + /** + * A weekly schedule starts a backup at prescribed start times within a day, for the specified days of the week. The weekly schedule message is flexible and can be used to create many types of schedules. For example, to have a daily backup that starts at 22:00, configure the `start_times` field to have one element "22:00" and the `days_of_week` field to have all seven days of the week. + */ + export interface Schema$WeeklySchedule { + /** + * The days of the week to perform a backup. If this field is left empty, the default of every day of the week is used. + */ + daysOfWeek?: string[] | null; + /** + * The times during the day to start a backup. The start times are assumed to be in UTC and to be an exact hour (e.g., 04:00:00). If no start times are provided, a single fixed start time is chosen arbitrarily. + */ + startTimes?: Schema$GoogleTypeTimeOfDay[]; + } + + export class Resource$Projects { + context: APIRequestContext; + locations: Resource$Projects$Locations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Projects$Locations(this.context); + } + } + + export class Resource$Projects$Locations { + context: APIRequestContext; + backups: Resource$Projects$Locations$Backups; + clusters: Resource$Projects$Locations$Clusters; + operations: Resource$Projects$Locations$Operations; + supportedDatabaseFlags: Resource$Projects$Locations$Supporteddatabaseflags; + constructor(context: APIRequestContext) { + this.context = context; + this.backups = new Resource$Projects$Locations$Backups(this.context); + this.clusters = new Resource$Projects$Locations$Clusters(this.context); + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.supportedDatabaseFlags = + new Resource$Projects$Locations$Supporteddatabaseflags(this.context); + } + + /** + * Gets information about a location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists information about the supported locations for this service. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}/locations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Get + extends StandardParameters { + /** + * Resource name for the location. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$List + extends StandardParameters { + /** + * A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). + */ + filter?: string; + /** + * The resource that owns the locations collection, if applicable. + */ + name?: string; + /** + * The maximum number of results to return. If not set, the service selects a default. + */ + pageSize?: number; + /** + * A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Backups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Backup in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Backups$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Backups$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Backups$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Backups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Backups$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/backups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Backup. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Backups$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single Backup. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Backups$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Backups$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Backups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Backups in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Backups$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Backups$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Backups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backups$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backups$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/backups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Backup. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Backups$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Backups$Create + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + backupId?: string; + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Backup; + } + export interface Params$Resource$Projects$Locations$Backups$Delete + extends StandardParameters { + /** + * Optional. The current etag of the Backup. If an etag is provided and does not match the current etag of the Backup, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string; + /** + * Required. Name of the resource. For the required format, see the comment on the Backup.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Backups$Get + extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Backups$List + extends StandardParameters { + /** + * Filtering results + */ + filter?: string; + /** + * Hint for how to order the results + */ + orderBy?: string; + /** + * Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListBackupsRequest + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Backups$Patch + extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if instance is not found. In that case, a new backup is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. The name of the backup resource with the format: * projects/{project\}/locations/{region\}/backups/{backup_id\} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Backup resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Backup; + } + + export class Resource$Projects$Locations$Clusters { + context: APIRequestContext; + instances: Resource$Projects$Locations$Clusters$Instances; + users: Resource$Projects$Locations$Clusters$Users; + constructor(context: APIRequestContext) { + this.context = context; + this.instances = new Resource$Projects$Locations$Clusters$Instances( + this.context + ); + this.users = new Resource$Projects$Locations$Clusters$Users(this.context); + } + + /** + * Creates a new Cluster in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clusters$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a cluster of type SECONDARY in the given location using the primary cluster as the source. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options: StreamMethodOptions + ): GaxiosPromise; + createsecondary( + params?: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options?: MethodOptions + ): GaxiosPromise; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + callback: BodyResponseCallback + ): void; + createsecondary(callback: BodyResponseCallback): void; + createsecondary( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Createsecondary + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Createsecondary; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Createsecondary; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1alpha/{+parent}/clusters:createsecondary' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Generate a client certificate signed by a Cluster CA. The sole purpose of this endpoint is to support AlloyDB connectors and the Auth Proxy client. The endpoint's behavior is subject to change without notice, so do not rely on its behavior remaining constant. Future changes will not break AlloyDB connectors or the Auth Proxy client. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + generateClientCertificate( + params: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + options: StreamMethodOptions + ): GaxiosPromise; + generateClientCertificate( + params?: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + options?: MethodOptions + ): GaxiosPromise; + generateClientCertificate( + params: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateClientCertificate( + params: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateClientCertificate( + params: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + callback: BodyResponseCallback + ): void; + generateClientCertificate( + callback: BodyResponseCallback + ): void; + generateClientCertificate( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Generateclientcertificate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Generateclientcertificate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Generateclientcertificate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1alpha/{+parent}:generateClientCertificate' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Gets details of a single Cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clusters$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Clusters in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clusters$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clusters$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clusters$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Promotes a SECONDARY cluster. This turns down replication from the PRIMARY cluster and promotes a secondary cluster into its own standalone cluster. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + options: StreamMethodOptions + ): GaxiosPromise; + promote( + params?: Params$Resource$Projects$Locations$Clusters$Promote, + options?: MethodOptions + ): GaxiosPromise; + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + callback: BodyResponseCallback + ): void; + promote(callback: BodyResponseCallback): void; + promote( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Promote + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Promote; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Promote; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:promote').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new Cluster in a given project and location, with a volume restored from the provided source, either a backup ID or a point-in-time and a source cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + options: StreamMethodOptions + ): GaxiosPromise; + restore( + params?: Params$Resource$Projects$Locations$Clusters$Restore, + options?: MethodOptions + ): GaxiosPromise; + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + callback: BodyResponseCallback + ): void; + restore(callback: BodyResponseCallback): void; + restore( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Restore + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Restore; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Restore; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/clusters:restore').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Clusters$Create + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + clusterId?: string; + /** + * Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Createsecondary + extends StandardParameters { + /** + * Required. ID of the requesting object (the secondary cluster). + */ + clusterId?: string; + /** + * Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Delete + extends StandardParameters { + /** + * Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string; + /** + * Optional. Whether to cascade delete child instances for given cluster. + */ + force?: boolean; + /** + * Required. The name of the resource. For the required format, see the comment on the Cluster.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Clusters$Generateclientcertificate + extends StandardParameters { + /** + * Required. The name of the parent resource. The required format is: * projects/{project\}/locations/{location\}/clusters/{cluster\} + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GenerateClientCertificateRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Get + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Cluster.name field. + */ + name?: string; + /** + * Optional. The view of the cluster to return. Returns all default fields if not set. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$List + extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field. Additionally, you can perform an aggregated list operation by specifying a value with the following format: * projects/{project\}/locations/- + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Patch + extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if cluster is not found. In that case, a new cluster is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. The name of the cluster resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Cluster resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Promote + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Cluster.name field + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$PromoteClusterRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Restore + extends StandardParameters { + /** + * Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RestoreClusterRequest; + } + + export class Resource$Projects$Locations$Clusters$Instances { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Instance in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/instances').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new SECONDARY Instance in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options: StreamMethodOptions + ): GaxiosPromise; + createsecondary( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options?: MethodOptions + ): GaxiosPromise; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + callback: BodyResponseCallback + ): void; + createsecondary(callback: BodyResponseCallback): void; + createsecondary( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1alpha/{+parent}/instances:createsecondary' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Instance. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Forces a Failover for a highly available instance. Failover promotes the HA standby instance as the new primary. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options: StreamMethodOptions + ): GaxiosPromise; + failover( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options?: MethodOptions + ): GaxiosPromise; + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + callback: BodyResponseCallback + ): void; + failover(callback: BodyResponseCallback): void; + failover( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Failover + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Failover; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Failover; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:failover').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single Instance. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Get instance metadata used for a connection. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getConnectionInfo( + params: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + options: StreamMethodOptions + ): GaxiosPromise; + getConnectionInfo( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + options?: MethodOptions + ): GaxiosPromise; + getConnectionInfo( + params: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getConnectionInfo( + params: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getConnectionInfo( + params: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + callback: BodyResponseCallback + ): void; + getConnectionInfo( + callback: BodyResponseCallback + ): void; + getConnectionInfo( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/connectionInfo').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Injects fault in an instance. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options: StreamMethodOptions + ): GaxiosPromise; + injectFault( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options?: MethodOptions + ): GaxiosPromise; + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + callback: BodyResponseCallback + ): void; + injectFault(callback: BodyResponseCallback): void; + injectFault( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Injectfault + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Injectfault; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Injectfault; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:injectFault').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Instances in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clusters$Instances$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/instances').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Instance. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Restart an Instance in a cluster. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options: StreamMethodOptions + ): GaxiosPromise; + restart( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options?: MethodOptions + ): GaxiosPromise; + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + callback: BodyResponseCallback + ): void; + restart(callback: BodyResponseCallback): void; + restart( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Restart + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Restart; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Restart; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:restart').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Clusters$Instances$Create + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + instanceId?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + instanceId?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Delete + extends StandardParameters { + /** + * Optional. The current etag of the Instance. If an etag is provided and does not match the current etag of the Instance, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string; + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Failover + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FailoverInstanceRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Get + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + /** + * The view of the instance to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo + extends StandardParameters { + /** + * Required. The name of the parent resource. The required format is: projects/{project\}/locations/{location\}/clusters/{cluster\}/instances/{instance\} + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Injectfault + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InjectFaultRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$List + extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. Additionally, you can perform an aggregated list operation by specifying a value with one of the following formats: * projects/{project\}/locations/-/clusters/- * projects/{project\}/locations/{region\}/clusters/- + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Patch + extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if instance is not found. In that case, a new instance is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. The name of the instance resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\}/instances/{instance_id\} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Instance resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Restart + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RestartInstanceRequest; + } + + export class Resource$Projects$Locations$Clusters$Users { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new User in a given project, location, and cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clusters$Users$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single User. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single User. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clusters$Users$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Users in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clusters$Users$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single User. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Clusters$Users$Create + extends StandardParameters { + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Required. ID of the requesting object. + */ + userId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$Delete + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the User.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$Get + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the User.name field. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$List + extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListUsersRequest + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$Patch + extends StandardParameters { + /** + * Optional. Allow missing fields in the update mask. + */ + allowMissing?: boolean; + /** + * Output only. Name of the resource in the form of projects/{project\}/locations/{location\}/cluster/{cluster\}/users/{user\}. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the User resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } + + export class Resource$Projects$Locations$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions + ): GaxiosPromise; + cancel( + params?: Params$Resource$Projects$Locations$Operations$Cancel, + options?: MethodOptions + ): GaxiosPromise; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}:cancel').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Operations$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Operations$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Operations$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Operations$Cancel + extends StandardParameters { + /** + * The name of the operation resource to be cancelled. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CancelOperationRequest; + } + export interface Params$Resource$Projects$Locations$Operations$Delete + extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$Get + extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$List + extends StandardParameters { + /** + * The standard list filter. + */ + filter?: string; + /** + * The name of the operation's parent resource. + */ + name?: string; + /** + * The standard list page size. + */ + pageSize?: number; + /** + * The standard list page token. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Supporteddatabaseflags { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists SupportedDatabaseFlags for a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Supporteddatabaseflags$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Supporteddatabaseflags$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Supporteddatabaseflags$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1alpha/{+parent}/supportedDatabaseFlags' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Supporteddatabaseflags$List + extends StandardParameters { + /** + * Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. The required format is: * projects/{project\}/locations/{location\} Regardless of the parent specified here, as long it is contains a valid project and location, the service will return a static list of supported flags resources. Note that we do not yet support region-specific flags. + */ + parent?: string; + } +} diff --git a/src/apis/alloydb/v1beta.ts b/src/apis/alloydb/v1beta.ts new file mode 100644 index 0000000000..3d187ab13a --- /dev/null +++ b/src/apis/alloydb/v1beta.ts @@ -0,0 +1,5259 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/no-empty-interface */ +/* eslint-disable @typescript-eslint/no-namespace */ +/* eslint-disable no-irregular-whitespace */ + +import { + OAuth2Client, + JWT, + Compute, + UserRefreshClient, + BaseExternalAccountClient, + GaxiosPromise, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace alloydb_v1beta { + export interface Options extends GlobalOptions { + version: 'v1beta'; + } + + interface StandardParameters { + /** + * Auth client or API Key for the request + */ + auth?: + | string + | OAuth2Client + | JWT + | Compute + | UserRefreshClient + | BaseExternalAccountClient + | GoogleAuth; + + /** + * V1 error format. + */ + '$.xgafv'?: string; + /** + * OAuth access token. + */ + access_token?: string; + /** + * Data format for response. + */ + alt?: string; + /** + * JSONP + */ + callback?: string; + /** + * Selector specifying which fields to include in a partial response. + */ + fields?: string; + /** + * 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. + */ + key?: string; + /** + * OAuth 2.0 token for the current user. + */ + oauth_token?: string; + /** + * Returns response with indentations and line breaks. + */ + prettyPrint?: boolean; + /** + * 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. + */ + quotaUser?: string; + /** + * Legacy upload protocol for media (e.g. "media", "multipart"). + */ + uploadType?: string; + /** + * Upload protocol for media (e.g. "raw", "multipart"). + */ + upload_protocol?: string; + } + + /** + * AlloyDB API + * + * AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases. + * + * @example + * ```js + * const {google} = require('googleapis'); + * const alloydb = google.alloydb('v1beta'); + * ``` + */ + export class Alloydb { + context: APIRequestContext; + projects: Resource$Projects; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.projects = new Resource$Projects(this.context); + } + } + + /** + * Message describing the user-specified automated backup policy. All fields in the automated backup policy are optional. Defaults for each field are provided if they are not set. + */ + export interface Schema$AutomatedBackupPolicy { + /** + * The length of the time window during which a backup can be taken. If a backup does not succeed within this time window, it will be canceled and considered failed. The backup window must be at least 5 minutes long. There is no upper bound on the window. If not set, it defaults to 1 hour. + */ + backupWindow?: string | null; + /** + * Whether automated automated backups are enabled. If not set, defaults to true. + */ + enabled?: boolean | null; + /** + * Optional. The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * Labels to apply to backups created using this configuration. + */ + labels?: {[key: string]: string} | null; + /** + * The location where the backup will be stored. Currently, the only supported option is to store the backup in the same region as the cluster. If empty, defaults to the region of the cluster. + */ + location?: string | null; + /** + * Quantity-based Backup retention policy to retain recent backups. + */ + quantityBasedRetention?: Schema$QuantityBasedRetention; + /** + * Time-based Backup retention policy. + */ + timeBasedRetention?: Schema$TimeBasedRetention; + /** + * Weekly schedule for the Backup. + */ + weeklySchedule?: Schema$WeeklySchedule; + } + /** + * Message describing Backup object + */ + export interface Schema$Backup { + /** + * Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 + */ + annotations?: {[key: string]: string} | null; + /** + * Required. The full resource name of the backup source cluster (e.g., projects/{project\}/locations/{region\}/clusters/{cluster_id\}). + */ + clusterName?: string | null; + /** + * Output only. The system-generated UID of the cluster which was used to create this resource. + */ + clusterUid?: string | null; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Output only. The database engine major version of the cluster this backup was created from. Any restored cluster created from this backup will have the same database version. + */ + databaseVersion?: string | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-provided description of the backup. + */ + description?: string | null; + /** + * User-settable and human-readable display name for the Backup. + */ + displayName?: string | null; + /** + * Optional. The encryption config can be specified to encrypt the backup with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * Output only. The encryption information for the backup. + */ + encryptionInfo?: Schema$EncryptionInfo; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * Output only. The QuantityBasedExpiry of the backup, specified by the backup's retention policy. Once the expiry quantity is over retention, the backup is eligible to be garbage collected. + */ + expiryQuantity?: Schema$QuantityBasedExpiry; + /** + * Output only. The time at which after the backup is eligible to be garbage collected. It is the duration specified by the backup's retention policy, added to the backup's create_time. + */ + expiryTime?: string | null; + /** + * Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Output only. The name of the backup resource with the format: * projects/{project\}/locations/{region\}/backups/{backup_id\} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string | null; + /** + * Output only. Reconciling (https://google.aip.dev/128#reconciliation), if true, indicates that the service is actively updating the resource. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Output only. The size of the backup in bytes. + */ + sizeBytes?: string | null; + /** + * Output only. The current state of the backup. + */ + state?: string | null; + /** + * The backup type, which suggests the trigger for the backup. + */ + type?: string | null; + /** + * Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. + */ + uid?: string | null; + /** + * Output only. Update time stamp + */ + updateTime?: string | null; + } + /** + * Message describing a BackupSource. + */ + export interface Schema$BackupSource { + /** + * Required. The name of the backup resource with the format: * projects/{project\}/locations/{region\}/backups/{backup_id\} + */ + backupName?: string | null; + /** + * Output only. The system-generated UID of the backup which was used to create this resource. The UID is generated when the backup is created, and it is retained until the backup is deleted. + */ + backupUid?: string | null; + } + /** + * Client connection configuration + */ + export interface Schema$ClientConnectionConfig { + /** + * Optional. Configuration to enforce connectors only (ex: AuthProxy) connections to the database. + */ + requireConnectors?: boolean | null; + /** + * Optional. SSL config option for this instance. + */ + sslConfig?: Schema$SslConfig; + } + /** + * Operation metadata returned by the CLH during resource state reconciliation. + */ + export interface Schema$CloudControl2SharedOperationsReconciliationOperationMetadata { + /** + * DEPRECATED. Use exclusive_action instead. + */ + deleteResource?: boolean | null; + /** + * Excluisive action returned by the CLH. + */ + exclusiveAction?: string | null; + } + /** + * A cluster is a collection of regional AlloyDB resources. It can include a primary instance and one or more read pool instances. All cluster resources share a storage layer, which scales as needed. + */ + export interface Schema$Cluster { + /** + * Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 + */ + annotations?: {[key: string]: string} | null; + /** + * The automated backup policy for this cluster. If no policy is provided then the default policy will be used. If backups are supported for the cluster, the default policy takes one backup a day, has a backup window of 1 hour, and retains backups for 14 days. For more information on the defaults, consult the documentation for the message type. + */ + automatedBackupPolicy?: Schema$AutomatedBackupPolicy; + /** + * Output only. Cluster created from backup. + */ + backupSource?: Schema$BackupSource; + /** + * Output only. The type of the cluster. This is an output-only field and it's populated at the Cluster creation time or the Cluster promotion time. The cluster type is determined by which RPC was used to create the cluster (i.e. `CreateCluster` vs. `CreateSecondaryCluster` + */ + clusterType?: string | null; + /** + * Optional. Continuous backup configuration for this cluster. + */ + continuousBackupConfig?: Schema$ContinuousBackupConfig; + /** + * Output only. Continuous backup properties for this cluster. + */ + continuousBackupInfo?: Schema$ContinuousBackupInfo; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Optional. The database engine major version. This is an optional field and it is populated at the Cluster creation time. If a database version is not supplied at cluster creation time, then a default database version will be used. + */ + databaseVersion?: string | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-settable and human-readable display name for the Cluster. + */ + displayName?: string | null; + /** + * Optional. The encryption config can be specified to encrypt the data disks and other persistent data resources of a cluster with a customer-managed encryption key (CMEK). When this field is not specified, the cluster will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * Output only. The encryption information for the cluster. + */ + encryptionInfo?: Schema$EncryptionInfo; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * Input only. Initial user to setup during cluster creation. Required. If used in `RestoreCluster` this is ignored. + */ + initialUser?: Schema$UserPassword; + /** + * Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Output only. Cluster created via DMS migration. + */ + migrationSource?: Schema$MigrationSource; + /** + * Output only. The name of the cluster resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string | null; + /** + * Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: "projects/{project\}/global/networks/{network_id\}". This is required to create a cluster. It can be updated, but it cannot be removed. Deprecated, use network_config.network instead. + */ + network?: string | null; + networkConfig?: Schema$NetworkConfig; + /** + * Output only. Cross Region replication config specific to PRIMARY cluster. + */ + primaryConfig?: Schema$PrimaryConfig; + /** + * Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Cluster does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Cross Region replication config specific to SECONDARY cluster. + */ + secondaryConfig?: Schema$SecondaryConfig; + /** + * SSL configuration for this AlloyDB cluster. + */ + sslConfig?: Schema$SslConfig; + /** + * Output only. The current serving state of the cluster. + */ + state?: string | null; + /** + * Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. + */ + uid?: string | null; + /** + * Output only. Update time stamp + */ + updateTime?: string | null; + } + /** + * ConnectionInfo singleton resource. https://google.aip.dev/156 + */ + export interface Schema$ConnectionInfo { + /** + * Output only. The unique ID of the Instance. + */ + instanceUid?: string | null; + /** + * Output only. The private network IP address for the Instance. This is the default IP for the instance and is always created (even if enable_public_ip is set). This is the connection endpoint for an end-user application. + */ + ipAddress?: string | null; + /** + * The name of the ConnectionInfo singleton resource, e.g.: projects/{project\}/locations/{location\}/clusters/x/instances/x/connectionInfo This field currently has no semantic meaning. + */ + name?: string | null; + /** + * Output only. The pem-encoded chain that may be used to verify the X.509 certificate. Expected to be in issuer-to-root order according to RFC 5246. + */ + pemCertificateChain?: string[] | null; + } + /** + * ContinuousBackupConfig describes the continuous backups recovery configurations of a cluster. + */ + export interface Schema$ContinuousBackupConfig { + /** + * Whether ContinuousBackup is enabled. + */ + enabled?: boolean | null; + /** + * The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. + */ + encryptionConfig?: Schema$EncryptionConfig; + /** + * The number of days that are eligible to restore from using PITR. To support the entire recovery window, backups and logs are retained for one day more than the recovery window. If not set, defaults to 14 days. + */ + recoveryWindowDays?: number | null; + } + /** + * ContinuousBackupInfo describes the continuous backup properties of a cluster. + */ + export interface Schema$ContinuousBackupInfo { + /** + * Output only. The earliest restorable time that can be restored to. Output only field. + */ + earliestRestorableTime?: string | null; + /** + * Output only. When ContinuousBackup was most recently enabled. Set to null if ContinuousBackup is not enabled. + */ + enabledTime?: string | null; + /** + * Output only. The encryption information for the WALs and backups required for ContinuousBackup. + */ + encryptionInfo?: Schema$EncryptionInfo; + /** + * Output only. Days of the week on which a continuous backup is taken. Output only field. Ignored if passed into the request. + */ + schedule?: string[] | null; + } + /** + * Message describing a ContinuousBackupSource. + */ + export interface Schema$ContinuousBackupSource { + /** + * Required. The source cluster from which to restore. This cluster must have continuous backup enabled for this operation to succeed. For the required format, see the comment on the Cluster.name field. + */ + cluster?: string | null; + /** + * Required. The point in time to restore to. + */ + pointInTime?: string | null; + } + /** + * 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); \} + */ + export interface Schema$Empty {} + /** + * EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key). + */ + export interface Schema$EncryptionConfig { + /** + * The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME] + */ + kmsKeyName?: string | null; + } + /** + * EncryptionInfo describes the encryption information of a cluster or a backup. + */ + export interface Schema$EncryptionInfo { + /** + * Output only. Type of encryption. + */ + encryptionType?: string | null; + /** + * Output only. Cloud KMS key versions that are being used to protect the database or the backup. + */ + kmsKeyVersions?: string[] | null; + } + /** + * Message for triggering failover on an Instance + */ + export interface Schema$FailoverInstanceRequest { + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the failover. + */ + validateOnly?: boolean | null; + } + /** + * Message for requests to generate a client certificate signed by the Cluster CA. + */ + export interface Schema$GenerateClientCertificateRequest { + /** + * Optional. An optional hint to the endpoint to generate the client certificate with the requested duration. The duration can be from 1 hour to 24 hours. The endpoint may or may not honor the hint. If the hint is left unspecified or is not honored, then the endpoint will pick an appropriate default duration. + */ + certDuration?: string | null; + /** + * Optional. A pem-encoded X.509 certificate signing request (CSR). + */ + pemCsr?: string | null; + /** + * Optional. The public key from the client. + */ + publicKey?: string | null; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. An optional hint to the endpoint to generate a client ceritificate that can be used by AlloyDB connectors to exchange additional metadata with the server after TLS handshake. + */ + useMetadataExchange?: boolean | null; + } + /** + * Message returned by a GenerateClientCertificate operation. + */ + export interface Schema$GenerateClientCertificateResponse { + /** + * Optional. The pem-encoded cluster ca X.509 certificate. + */ + caCert?: string | null; + /** + * Output only. The pem-encoded, signed X.509 certificate. + */ + pemCertificate?: string | null; + /** + * Output only. The pem-encoded chain that may be used to verify the X.509 certificate. Expected to be in issuer-to-root order according to RFC 5246. + */ + pemCertificateChain?: string[] | null; + } + /** + * The response message for Locations.ListLocations. + */ + export interface Schema$GoogleCloudLocationListLocationsResponse { + /** + * A list of locations that matches the specified filter in the request. + */ + locations?: Schema$GoogleCloudLocationLocation[]; + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + } + /** + * A resource that represents a Google Cloud location. + */ + export interface Schema$GoogleCloudLocationLocation { + /** + * The friendly name for this location, typically a nearby city name. For example, "Tokyo". + */ + displayName?: string | null; + /** + * Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\} + */ + labels?: {[key: string]: string} | null; + /** + * The canonical id for this location. For example: `"us-east1"`. + */ + locationId?: string | null; + /** + * Service-specific metadata. For example the available capacity at the given location. + */ + metadata?: {[key: string]: any} | null; + /** + * Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` + */ + name?: string | null; + } + /** + * Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. + */ + export interface Schema$GoogleTypeTimeOfDay { + /** + * Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. + */ + hours?: number | null; + /** + * Minutes of hour of day. Must be from 0 to 59. + */ + minutes?: number | null; + /** + * Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + */ + nanos?: number | null; + /** + * Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds. + */ + seconds?: number | null; + } + /** + * Message for triggering fault injection on an instance + */ + export interface Schema$InjectFaultRequest { + /** + * Required. The type of fault to be injected in an instance. + */ + faultType?: string | null; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the fault injection. + */ + validateOnly?: boolean | null; + } + /** + * An Instance is a computing unit that an end customer can connect to. It's the main unit of computing resources in AlloyDB. + */ + export interface Schema$Instance { + /** + * Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 + */ + annotations?: {[key: string]: string} | null; + /** + * Availability type of an Instance. If empty, defaults to REGIONAL for primary instances. For read pools, availability_type is always UNSPECIFIED. Instances in the read pools are evenly distributed across available zones within the region (i.e. read pools with more than one node will have a node in at least two zones). + */ + availabilityType?: string | null; + /** + * Optional. Client connection specific configurations + */ + clientConnectionConfig?: Schema$ClientConnectionConfig; + /** + * Output only. Create time stamp + */ + createTime?: string | null; + /** + * Database flags. Set at instance level. * They are copied from primary instance on read instance creation. * Read instances can set new or override existing flags that are relevant for reads, e.g. for enabling columnar cache on a read instance. Flags set on read instance may or may not be present on primary. This is a list of "key": "value" pairs. "key": The name of the flag. These flags are passed at instance setup time, so include both server options and system variables for Postgres. Flags are specified with underscores, not hyphens. "value": The value of the flag. Booleans are set to **on** for true and **off** for false. This field must be omitted if the flag doesn't take a value. + */ + databaseFlags?: {[key: string]: string} | null; + /** + * Output only. Delete time stamp + */ + deleteTime?: string | null; + /** + * User-settable and human-readable display name for the Instance. + */ + displayName?: string | null; + /** + * For Resource freshness validation (https://google.aip.dev/154) + */ + etag?: string | null; + /** + * The Compute Engine zone that the instance should serve from, per https://cloud.google.com/compute/docs/regions-zones This can ONLY be specified for ZONAL instances. If present for a REGIONAL instance, an error will be thrown. If this is absent for a ZONAL instance, instance is created in a random zone with available capacity. + */ + gceZone?: string | null; + /** + * Required. The type of the instance. Specified at creation time. + */ + instanceType?: string | null; + /** + * Output only. The IP address for the Instance. This is the connection endpoint for an end-user application. + */ + ipAddress?: string | null; + /** + * Labels as key value pairs + */ + labels?: {[key: string]: string} | null; + /** + * Configurations for the machines that host the underlying database engine. + */ + machineConfig?: Schema$MachineConfig; + /** + * Output only. The name of the instance resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\}/instances/{instance_id\} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} + */ + name?: string | null; + /** + * Output only. List of available read-only VMs in this instance, including the standby for a PRIMARY instance. + */ + nodes?: Schema$Node[]; + /** + * Configuration for query insights. + */ + queryInsightsConfig?: Schema$QueryInsightsInstanceConfig; + /** + * Read pool specific config. + */ + readPoolConfig?: Schema$ReadPoolConfig; + /** + * Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Instance does not match the user's intended state, and the service is actively updating the resource to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. + */ + reconciling?: boolean | null; + /** + * Output only. The current serving state of the instance. + */ + state?: string | null; + /** + * Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. + */ + uid?: string | null; + /** + * Update policy that will be applied during instance update. This field is not persisted when you update the instance. To use a non-default update policy, you must specify explicitly specify the value in each update request. + */ + updatePolicy?: Schema$UpdatePolicy; + /** + * Output only. Update time stamp + */ + updateTime?: string | null; + /** + * Output only. This is set for the read-write VM of the PRIMARY instance only. + */ + writableNode?: Schema$Node; + } + /** + * Restrictions on INTEGER type values. + */ + export interface Schema$IntegerRestrictions { + /** + * The maximum value that can be specified, if applicable. + */ + maxValue?: string | null; + /** + * The minimum value that can be specified, if applicable. + */ + minValue?: string | null; + } + /** + * Message for response to listing Backups + */ + export interface Schema$ListBackupsResponse { + /** + * The list of Backup + */ + backups?: Schema$Backup[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Clusters + */ + export interface Schema$ListClustersResponse { + /** + * The list of Cluster + */ + clusters?: Schema$Cluster[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Message for response to listing Instances + */ + export interface Schema$ListInstancesResponse { + /** + * The list of Instance + */ + instances?: Schema$Instance[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * The response message for Operations.ListOperations. + */ + export interface Schema$ListOperationsResponse { + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + /** + * A list of operations that matches the specified filter in the request. + */ + operations?: Schema$Operation[]; + } + /** + * Message for response to listing SupportedDatabaseFlags. + */ + export interface Schema$ListSupportedDatabaseFlagsResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The list of SupportedDatabaseFlags. + */ + supportedDatabaseFlags?: Schema$SupportedDatabaseFlag[]; + } + /** + * Message for response to listing Users + */ + export interface Schema$ListUsersResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + /** + * The list of User + */ + users?: Schema$User[]; + } + /** + * MachineConfig describes the configuration of a machine. + */ + export interface Schema$MachineConfig { + /** + * The number of CPU's in the VM instance. + */ + cpuCount?: number | null; + } + /** + * Subset of the source instance configuration that is available when reading the cluster resource. + */ + export interface Schema$MigrationSource { + /** + * Output only. The host and port of the on-premises instance in host:port format + */ + hostPort?: string | null; + /** + * Output only. Place holder for the external source identifier(e.g DMS job name) that created the cluster. + */ + referenceId?: string | null; + /** + * Output only. Type of migration source. + */ + sourceType?: string | null; + } + /** + * Metadata related to network configuration. + */ + export interface Schema$NetworkConfig { + /** + * Optional. Name of the allocated IP range for the private IP AlloyDB cluster, for example: "google-managed-services-default". If set, the instance IPs for this cluster will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. Field name is intended to be consistent with CloudSQL. + */ + allocatedIpRange?: string | null; + /** + * Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: "projects/{project_number\}/global/networks/{network_id\}". This is required to create a cluster. It can be updated, but it cannot be removed. + */ + network?: string | null; + } + /** + * Details of a single node in the instance. Nodes in an AlloyDB instance are ephemereal, they can change during update, failover, autohealing and resize operations. + */ + export interface Schema$Node { + /** + * The identifier of the VM e.g. "test-read-0601-407e52be-ms3l". + */ + id?: string | null; + /** + * The private IP address of the VM e.g. "10.57.0.34". + */ + ip?: string | null; + /** + * Determined by state of the compute VM and postgres-service health. Compute VM state can have values listed in https://cloud.google.com/compute/docs/instances/instance-life-cycle and postgres-service health can have values: HEALTHY and UNHEALTHY. + */ + state?: string | null; + /** + * The Compute Engine zone of the VM e.g. "us-central1-b". + */ + zoneId?: string | null; + } + /** + * This resource represents a long-running operation that is the result of a network API call. + */ + export interface Schema$Operation { + /** + * If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. + */ + done?: boolean | null; + /** + * The error result of the operation in case of failure or cancellation. + */ + error?: Schema$Status; + /** + * Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. + */ + metadata?: {[key: string]: any} | null; + /** + * The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id\}`. + */ + name?: string | null; + /** + * The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + */ + response?: {[key: string]: any} | null; + } + /** + * Represents the metadata of the long-running operation. + */ + export interface Schema$OperationMetadata { + /** + * Output only. API version used to start the operation. + */ + apiVersion?: string | null; + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + */ + requestedCancellation?: boolean | null; + /** + * Output only. Human-readable status of the operation, if any. + */ + statusMessage?: string | null; + /** + * Output only. Server-defined resource path for the target of the operation. + */ + target?: string | null; + /** + * Output only. Name of the verb executed by the operation. + */ + verb?: string | null; + } + /** + * Configuration for the primary cluster. It has the list of clusters that are replicating from this cluster. This should be set if and only if the cluster is of type PRIMARY. + */ + export interface Schema$PrimaryConfig { + /** + * Output only. Names of the clusters that are replicating from this cluster. + */ + secondaryClusterNames?: string[] | null; + } + /** + * Message for promoting a Cluster + */ + export interface Schema$PromoteClusterRequest { + /** + * Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string | null; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete. + */ + validateOnly?: boolean | null; + } + /** + * A backup's position in a quantity-based retention queue, of backups with the same source cluster and type, with length, retention, specified by the backup's retention policy. Once the position is greater than the retention, the backup is eligible to be garbage collected. Example: 5 backups from the same source cluster and type with a quantity-based retention of 3 and denoted by backup_id (position, retention). Safe: backup_5 (1, 3), backup_4, (2, 3), backup_3 (3, 3). Awaiting garbage collection: backup_2 (4, 3), backup_1 (5, 3) + */ + export interface Schema$QuantityBasedExpiry { + /** + * Output only. The backup's position among its backups with the same source cluster and type, by descending chronological order create time(i.e. newest first). + */ + retentionCount?: number | null; + /** + * Output only. The length of the quantity-based queue, specified by the backup's retention policy. + */ + totalRetentionCount?: number | null; + } + /** + * A quantity based policy specifies that a certain number of the most recent successful backups should be retained. + */ + export interface Schema$QuantityBasedRetention { + /** + * The number of backups to retain. + */ + count?: number | null; + } + /** + * QueryInsights Instance specific configuration. + */ + export interface Schema$QueryInsightsInstanceConfig { + /** + * Number of query execution plans captured by Insights per minute for all queries combined. The default value is 5. Any integer between 0 and 20 is considered valid. + */ + queryPlansPerMinute?: number | null; + /** + * Query string length. The default value is 1024. Any integer between 256 and 4500 is considered valid. + */ + queryStringLength?: number | null; + /** + * Record application tags for an instance. This flag is turned "on" by default. + */ + recordApplicationTags?: boolean | null; + /** + * Record client address for an instance. Client address is PII information. This flag is turned "on" by default. + */ + recordClientAddress?: boolean | null; + } + /** + * Configuration for a read pool instance. + */ + export interface Schema$ReadPoolConfig { + /** + * Read capacity, i.e. number of nodes in a read pool instance. + */ + nodeCount?: number | null; + } + export interface Schema$RestartInstanceRequest { + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the restart. + */ + validateOnly?: boolean | null; + } + /** + * Message for restoring a Cluster from a backup or another cluster at a given point in time. + */ + export interface Schema$RestoreClusterRequest { + /** + * Backup source. + */ + backupSource?: Schema$BackupSource; + /** + * Required. The resource being created + */ + cluster?: Schema$Cluster; + /** + * Required. ID of the requesting object. + */ + clusterId?: string | null; + /** + * ContinuousBackup source. Continuous backup needs to be enabled in the source cluster for this operation to succeed. + */ + continuousBackupSource?: Schema$ContinuousBackupSource; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string | null; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the import request. + */ + validateOnly?: boolean | null; + } + /** + * Configuration information for the secondary cluster. This should be set if and only if the cluster is of type SECONDARY. + */ + export interface Schema$SecondaryConfig { + /** + * The name of the primary cluster name with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} + */ + primaryClusterName?: string | null; + } + /** + * SSL configuration. + */ + export interface Schema$SslConfig { + /** + * Optional. Certificate Authority (CA) source. Only CA_SOURCE_MANAGED is supported currently, and is the default value. + */ + caSource?: string | null; + /** + * Optional. SSL mode. Specifies client-server SSL/TLS connection behavior. + */ + sslMode?: string | null; + } + /** + * 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). + */ + export interface Schema$Status { + /** + * The status code, which should be an enum value of google.rpc.Code. + */ + code?: number | null; + /** + * A list of messages that carry the error details. There is a common set of message types for APIs to use. + */ + details?: Array<{[key: string]: any}> | null; + /** + * 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. + */ + message?: string | null; + } + /** + * Configuration for availability of database instance + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration { + /** + * 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). + */ + availabilityType?: string | null; + externalReplicaConfigured?: boolean | null; + promotableReplicaConfigured?: boolean | null; + } + /** + * Configuration for automatic backups + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainBackupConfiguration { + /** + * Whether customer visible automated backups are enabled on the instance. + */ + automatedBackupEnabled?: boolean | null; + /** + * Backup retention settings. + */ + backupRetentionSettings?: Schema$StorageDatabasecenterPartnerapiV1mainRetentionSettings; + } + /** + * A backup run. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainBackupRun { + /** + * The time the backup operation completed. REQUIRED + */ + endTime?: string | null; + /** + * Information about why the backup operation failed. This is only present if the run has the FAILED status. OPTIONAL + */ + error?: Schema$StorageDatabasecenterPartnerapiV1mainOperationError; + /** + * The time the backup operation started. REQUIRED + */ + startTime?: string | null; + /** + * The status of this run. REQUIRED + */ + status?: string | null; + } + /** + * DatabaseResourceFeed is the top level proto to be used to ingest different database resource level events into Condor platform. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceFeed { + /** + * Required. Timestamp when feed is generated. + */ + feedTimestamp?: string | null; + /** + * Required. Type feed to be ingested into condor + */ + feedType?: string | null; + /** + * Required. Primary key associated with the Resource + */ + resourceId?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; + /** + * More feed data would be added in subsequent CLs + */ + resourceMetadata?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata; + } + /** + * DatabaseResourceId will serve as primary key for any resource ingestion event. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId { + /** + * Required. Cloud provider name. Ex: GCP/AWS/Azure/OnPrem/SelfManaged + */ + provider?: string | null; + /** + * Required. The type of resource this ID is identifying. Ex google.sqladmin.Instance, google.alloydb.cluster, google.sqladmin.Backup REQUIRED + */ + resourceType?: string | null; + /** + * Required. A service-local token that distinguishes this resource from other resources within the same service. + */ + uniqueId?: string | null; + } + /** + * Common model for database resource instance metadata. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata { + /** + * Availability configuration for this instance + */ + availabilityConfiguration?: Schema$StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration; + /** + * Backup configuration for this instance + */ + backupConfiguration?: Schema$StorageDatabasecenterPartnerapiV1mainBackupConfiguration; + /** + * Latest backup run information for this instance + */ + backupRun?: Schema$StorageDatabasecenterPartnerapiV1mainBackupRun; + /** + * The creation time of the resource, i.e. the time when resource is created and recorded in partner service. + */ + creationTime?: string | null; + /** + * Current state of the instance. + */ + currentState?: string | null; + /** + * The actual instance state. + */ + expectedState?: string | null; + /** + * Required. Unique identifier for a Database resource + */ + id?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; + /** + * The type of the instance. Specified at creation time. + */ + instanceType?: string | null; + /** + * The resource location. REQUIRED + */ + location?: string | null; + /** + * Unique identifier for this resource's immediate parent resource. This parent resource id would be used to build resource hierarchy in condor platform. + */ + primaryResourceId?: Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceId; + /** + * The product this resource represents. + */ + product?: Schema$StorageDatabasecenterProtoCommonProduct; + /** + * Closest parent Cloud Resource Manager container of this resource. It must either be resource name of a Cloud Resource Manager project, for ex: "projects/123". + */ + resourceContainer?: string | null; + /** + * Required. Different from unique_id, a resource name can be reused over time. That is after a resource named "ABC" is deleted, the name "ABC" can be used to to create a new resource within the same source. + */ + resourceName?: string | null; + /** + * The time at which the resource was updated and recorded at partner service. + */ + updationTime?: string | null; + /** + * User-provided labels, represented as a dictionary where each label is a single key value pair. + */ + userLabels?: {[key: string]: string} | null; + } + /** + * An error that occurred during a backup creation operation. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainOperationError { + /** + * Identifies the specific error that occurred. REQUIRED + */ + code?: string | null; + /** + * Additional information about the error encountered. REQUIRED + */ + message?: string | null; + } + export interface Schema$StorageDatabasecenterPartnerapiV1mainRetentionSettings { + quantityBasedRetention?: number | null; + /** + * The unit that 'retained_backups' represents. + */ + retentionUnit?: string | null; + timeBasedRetention?: string | null; + } + /** + * Product specification for Condor resources. + */ + export interface Schema$StorageDatabasecenterProtoCommonProduct { + /** + * The specific engine that the underlying database is running. + */ + engine?: string | null; + /** + * Type of specific database product. It could be CloudSQL, AlloyDB etc.. + */ + type?: string | null; + /** + * Version of the underlying database engine. Example values: For MySQL, it could be "8.0", "5.7" etc.. For Postgres, it could be "14", "15" etc.. + */ + version?: string | null; + } + /** + * Restrictions on STRING type values + */ + export interface Schema$StringRestrictions { + /** + * The list of allowed values, if bounded. This field will be empty if there is a unbounded number of allowed values. + */ + allowedValues?: string[] | null; + } + /** + * SupportedDatabaseFlag gives general information about a database flag, like type and allowed values. This is a static value that is defined on the server side, and it cannot be modified by callers. To set the Database flags on a particular Instance, a caller should modify the Instance.database_flags field. + */ + export interface Schema$SupportedDatabaseFlag { + /** + * Whether the database flag accepts multiple values. If true, a comma-separated list of stringified values may be specified. + */ + acceptsMultipleValues?: boolean | null; + /** + * The name of the database flag, e.g. "max_allowed_packets". The is a possibly key for the Instance.database_flags map field. + */ + flagName?: string | null; + /** + * Restriction on INTEGER type value. + */ + integerRestrictions?: Schema$IntegerRestrictions; + /** + * The name of the flag resource, following Google Cloud conventions, e.g.: * projects/{project\}/locations/{location\}/flags/{flag\} This field currently has no semantic meaning. + */ + name?: string | null; + /** + * Whether setting or updating this flag on an Instance requires a database restart. If a flag that requires database restart is set, the backend will automatically restart the database (making sure to satisfy any availability SLO's). + */ + requiresDbRestart?: boolean | null; + /** + * Restriction on STRING type value. + */ + stringRestrictions?: Schema$StringRestrictions; + /** + * Major database engine versions for which this flag is supported. + */ + supportedDbVersions?: string[] | null; + valueType?: string | null; + } + /** + * A time based retention policy specifies that all backups within a certain time period should be retained. + */ + export interface Schema$TimeBasedRetention { + /** + * The retention period. + */ + retentionPeriod?: string | null; + } + /** + * Policy to be used while updating the instance. + */ + export interface Schema$UpdatePolicy { + /** + * Mode for updating the instance. + */ + mode?: string | null; + } + /** + * Message describing User object. + */ + export interface Schema$User { + /** + * Optional. List of database roles this user has. The database role strings are subject to the PostgreSQL naming conventions. + */ + databaseRoles?: string[] | null; + /** + * Output only. Name of the resource in the form of projects/{project\}/locations/{location\}/cluster/{cluster\}/users/{user\}. + */ + name?: string | null; + /** + * Input only. Password for the user. + */ + password?: string | null; + /** + * Optional. Type of this user. + */ + userType?: string | null; + } + /** + * The username/password for a database user. Used for specifying initial users at cluster creation time. + */ + export interface Schema$UserPassword { + /** + * The initial password for the user. + */ + password?: string | null; + /** + * The database username. + */ + user?: string | null; + } + /** + * A weekly schedule starts a backup at prescribed start times within a day, for the specified days of the week. The weekly schedule message is flexible and can be used to create many types of schedules. For example, to have a daily backup that starts at 22:00, configure the `start_times` field to have one element "22:00" and the `days_of_week` field to have all seven days of the week. + */ + export interface Schema$WeeklySchedule { + /** + * The days of the week to perform a backup. If this field is left empty, the default of every day of the week is used. + */ + daysOfWeek?: string[] | null; + /** + * The times during the day to start a backup. The start times are assumed to be in UTC and to be an exact hour (e.g., 04:00:00). If no start times are provided, a single fixed start time is chosen arbitrarily. + */ + startTimes?: Schema$GoogleTypeTimeOfDay[]; + } + + export class Resource$Projects { + context: APIRequestContext; + locations: Resource$Projects$Locations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Projects$Locations(this.context); + } + } + + export class Resource$Projects$Locations { + context: APIRequestContext; + backups: Resource$Projects$Locations$Backups; + clusters: Resource$Projects$Locations$Clusters; + operations: Resource$Projects$Locations$Operations; + supportedDatabaseFlags: Resource$Projects$Locations$Supporteddatabaseflags; + constructor(context: APIRequestContext) { + this.context = context; + this.backups = new Resource$Projects$Locations$Backups(this.context); + this.clusters = new Resource$Projects$Locations$Clusters(this.context); + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.supportedDatabaseFlags = + new Resource$Projects$Locations$Supporteddatabaseflags(this.context); + } + + /** + * Gets information about a location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists information about the supported locations for this service. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}/locations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Get + extends StandardParameters { + /** + * Resource name for the location. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$List + extends StandardParameters { + /** + * A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). + */ + filter?: string; + /** + * The resource that owns the locations collection, if applicable. + */ + name?: string; + /** + * The maximum number of results to return. If not set, the service selects a default. + */ + pageSize?: number; + /** + * A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Backups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Backup in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Backups$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Backups$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Backups$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Backups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Backups$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/backups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Backup. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Backups$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Backups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single Backup. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Backups$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Backups$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Backups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Backups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Backups in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Backups$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Backups$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Backups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backups$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Backups$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/backups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Backup. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Backups$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Backups$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Backups$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Backups$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Backups$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Backups$Create + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + backupId?: string; + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Backup; + } + export interface Params$Resource$Projects$Locations$Backups$Delete + extends StandardParameters { + /** + * Optional. The current etag of the Backup. If an etag is provided and does not match the current etag of the Backup, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string; + /** + * Required. Name of the resource. For the required format, see the comment on the Backup.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Backups$Get + extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Backups$List + extends StandardParameters { + /** + * Filtering results + */ + filter?: string; + /** + * Hint for how to order the results + */ + orderBy?: string; + /** + * Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListBackupsRequest + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Backups$Patch + extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if instance is not found. In that case, a new backup is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. The name of the backup resource with the format: * projects/{project\}/locations/{region\}/backups/{backup_id\} where the cluster and backup ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Backup resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Backup; + } + + export class Resource$Projects$Locations$Clusters { + context: APIRequestContext; + instances: Resource$Projects$Locations$Clusters$Instances; + users: Resource$Projects$Locations$Clusters$Users; + constructor(context: APIRequestContext) { + this.context = context; + this.instances = new Resource$Projects$Locations$Clusters$Instances( + this.context + ); + this.users = new Resource$Projects$Locations$Clusters$Users(this.context); + } + + /** + * Creates a new Cluster in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clusters$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a cluster of type SECONDARY in the given location using the primary cluster as the source. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options: StreamMethodOptions + ): GaxiosPromise; + createsecondary( + params?: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options?: MethodOptions + ): GaxiosPromise; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Createsecondary, + callback: BodyResponseCallback + ): void; + createsecondary(callback: BodyResponseCallback): void; + createsecondary( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Createsecondary + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Createsecondary; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Createsecondary; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1beta/{+parent}/clusters:createsecondary' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Generate a client certificate signed by a Cluster CA. The sole purpose of this endpoint is to support AlloyDB connectors and the Auth Proxy client. The endpoint's behavior is subject to change without notice, so do not rely on its behavior remaining constant. Future changes will not break AlloyDB connectors or the Auth Proxy client. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + generateClientCertificate( + params: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + options: StreamMethodOptions + ): GaxiosPromise; + generateClientCertificate( + params?: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + options?: MethodOptions + ): GaxiosPromise; + generateClientCertificate( + params: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateClientCertificate( + params: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + generateClientCertificate( + params: Params$Resource$Projects$Locations$Clusters$Generateclientcertificate, + callback: BodyResponseCallback + ): void; + generateClientCertificate( + callback: BodyResponseCallback + ): void; + generateClientCertificate( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Generateclientcertificate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Generateclientcertificate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Generateclientcertificate; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1beta/{+parent}:generateClientCertificate' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Gets details of a single Cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clusters$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Clusters in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clusters$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clusters$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clusters$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/clusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Promotes a SECONDARY cluster. This turns down replication from the PRIMARY cluster and promotes a secondary cluster into its own standalone cluster. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + options: StreamMethodOptions + ): GaxiosPromise; + promote( + params?: Params$Resource$Projects$Locations$Clusters$Promote, + options?: MethodOptions + ): GaxiosPromise; + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + promote( + params: Params$Resource$Projects$Locations$Clusters$Promote, + callback: BodyResponseCallback + ): void; + promote(callback: BodyResponseCallback): void; + promote( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Promote + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Promote; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Promote; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}:promote').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new Cluster in a given project and location, with a volume restored from the provided source, either a backup ID or a point-in-time and a source cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + options: StreamMethodOptions + ): GaxiosPromise; + restore( + params?: Params$Resource$Projects$Locations$Clusters$Restore, + options?: MethodOptions + ): GaxiosPromise; + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restore( + params: Params$Resource$Projects$Locations$Clusters$Restore, + callback: BodyResponseCallback + ): void; + restore(callback: BodyResponseCallback): void; + restore( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Restore + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Restore; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Restore; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/clusters:restore').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Clusters$Create + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + clusterId?: string; + /** + * Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Createsecondary + extends StandardParameters { + /** + * Required. ID of the requesting object (the secondary cluster). + */ + clusterId?: string; + /** + * Required. The location of the new cluster. For the required format, see the comment on the Cluster.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Delete + extends StandardParameters { + /** + * Optional. The current etag of the Cluster. If an etag is provided and does not match the current etag of the Cluster, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string; + /** + * Optional. Whether to cascade delete child instances for given cluster. + */ + force?: boolean; + /** + * Required. The name of the resource. For the required format, see the comment on the Cluster.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Clusters$Generateclientcertificate + extends StandardParameters { + /** + * Required. The name of the parent resource. The required format is: * projects/{project\}/locations/{location\}/clusters/{cluster\} + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GenerateClientCertificateRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Get + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Cluster.name field. + */ + name?: string; + /** + * Optional. The view of the cluster to return. Returns all default fields if not set. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$List + extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field. Additionally, you can perform an aggregated list operation by specifying a value with the following format: * projects/{project\}/locations/- + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Patch + extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if cluster is not found. In that case, a new cluster is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. The name of the cluster resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project\}/locations/{region\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Cluster resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Cluster; + } + export interface Params$Resource$Projects$Locations$Clusters$Promote + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Cluster.name field + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$PromoteClusterRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Restore + extends StandardParameters { + /** + * Required. The name of the parent resource. For the required format, see the comment on the Cluster.name field. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RestoreClusterRequest; + } + + export class Resource$Projects$Locations$Clusters$Instances { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new Instance in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Instances$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/instances').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new SECONDARY Instance in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options: StreamMethodOptions + ): GaxiosPromise; + createsecondary( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options?: MethodOptions + ): GaxiosPromise; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createsecondary( + params: Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary, + callback: BodyResponseCallback + ): void; + createsecondary(callback: BodyResponseCallback): void; + createsecondary( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1beta/{+parent}/instances:createsecondary' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single Instance. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Instances$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Forces a Failover for a highly available instance. Failover promotes the HA standby instance as the new primary. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options: StreamMethodOptions + ): GaxiosPromise; + failover( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options?: MethodOptions + ): GaxiosPromise; + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + failover( + params: Params$Resource$Projects$Locations$Clusters$Instances$Failover, + callback: BodyResponseCallback + ): void; + failover(callback: BodyResponseCallback): void; + failover( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Failover + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Failover; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Failover; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}:failover').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single Instance. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Instances$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Get instance metadata used for a connection. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getConnectionInfo( + params: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + options: StreamMethodOptions + ): GaxiosPromise; + getConnectionInfo( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + options?: MethodOptions + ): GaxiosPromise; + getConnectionInfo( + params: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getConnectionInfo( + params: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getConnectionInfo( + params: Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo, + callback: BodyResponseCallback + ): void; + getConnectionInfo( + callback: BodyResponseCallback + ): void; + getConnectionInfo( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/connectionInfo').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Injects fault in an instance. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options: StreamMethodOptions + ): GaxiosPromise; + injectFault( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options?: MethodOptions + ): GaxiosPromise; + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + injectFault( + params: Params$Resource$Projects$Locations$Clusters$Instances$Injectfault, + callback: BodyResponseCallback + ): void; + injectFault(callback: BodyResponseCallback): void; + injectFault( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Injectfault + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Injectfault; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Injectfault; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}:injectFault').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Instances in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clusters$Instances$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Instances$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/instances').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single Instance. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Instances$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Restart an Instance in a cluster. Imperative only. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options: StreamMethodOptions + ): GaxiosPromise; + restart( + params?: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options?: MethodOptions + ): GaxiosPromise; + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + restart( + params: Params$Resource$Projects$Locations$Clusters$Instances$Restart, + callback: BodyResponseCallback + ): void; + restart(callback: BodyResponseCallback): void; + restart( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Instances$Restart + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Instances$Restart; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clusters$Instances$Restart; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}:restart').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Clusters$Instances$Create + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + instanceId?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Createsecondary + extends StandardParameters { + /** + * Required. ID of the requesting object. + */ + instanceId?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the create request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Delete + extends StandardParameters { + /** + * Optional. The current etag of the Instance. If an etag is provided and does not match the current etag of the Instance, deletion will be blocked and an ABORTED error will be returned. + */ + etag?: string; + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the delete. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Failover + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FailoverInstanceRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Get + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + /** + * The view of the instance to return. + */ + view?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Getconnectioninfo + extends StandardParameters { + /** + * Required. The name of the parent resource. The required format is: projects/{project\}/locations/{location\}/clusters/{cluster\}/instances/{instance\} + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Injectfault + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InjectFaultRequest; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$List + extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. For the required format, see the comment on the Instance.name field. Additionally, you can perform an aggregated list operation by specifying a value with one of the following formats: * projects/{project\}/locations/-/clusters/- * projects/{project\}/locations/{region\}/clusters/- + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Patch + extends StandardParameters { + /** + * Optional. If set to true, update succeeds even if instance is not found. In that case, a new instance is created and `update_mask` is ignored. + */ + allowMissing?: boolean; + /** + * Output only. The name of the instance resource with the format: * projects/{project\}/locations/{region\}/clusters/{cluster_id\}/instances/{instance_id\} where the cluster and instance ID segments should satisfy the regex expression `[a-z]([a-z0-9-]{0,61\}[a-z0-9])?`, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https://google.aip.dev/122. The prefix of the instance resource name is the name of the parent resource: * projects/{project\}/locations/{region\}/clusters/{cluster_id\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the Instance resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, performs request validation (e.g. permission checks and any other type of validation), but do not actually execute the update request. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Projects$Locations$Clusters$Instances$Restart + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the Instance.name field. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RestartInstanceRequest; + } + + export class Resource$Projects$Locations$Clusters$Users { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new User in a given project, location, and cluster. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clusters$Users$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clusters$Users$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single User. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clusters$Users$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single User. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clusters$Users$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clusters$Users$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Users in a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clusters$Users$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clusters$Users$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/users').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the parameters of a single User. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clusters$Users$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clusters$Users$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clusters$Users$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clusters$Users$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Clusters$Users$Create + extends StandardParameters { + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Required. ID of the requesting object. + */ + userId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$Delete + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the User.name field. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$Get + extends StandardParameters { + /** + * Required. The name of the resource. For the required format, see the comment on the User.name field. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$List + extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListUsersRequest + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clusters$Users$Patch + extends StandardParameters { + /** + * Optional. Allow missing fields in the update mask. + */ + allowMissing?: boolean; + /** + * Output only. Name of the resource in the form of projects/{project\}/locations/{location\}/cluster/{cluster\}/users/{user\}. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the User resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + /** + * Optional. If set, the backend validates the request, but doesn't actually execute it. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$User; + } + + export class Resource$Projects$Locations$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions + ): GaxiosPromise; + cancel( + params?: Params$Resource$Projects$Locations$Operations$Cancel, + options?: MethodOptions + ): GaxiosPromise; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}:cancel').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Operations$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Operations$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Operations$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Operations$Cancel + extends StandardParameters { + /** + * The name of the operation resource to be cancelled. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$Delete + extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$Get + extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$List + extends StandardParameters { + /** + * The standard list filter. + */ + filter?: string; + /** + * The name of the operation's parent resource. + */ + name?: string; + /** + * The standard list page size. + */ + pageSize?: number; + /** + * The standard list page token. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Supporteddatabaseflags { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists SupportedDatabaseFlags for a given project and location. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Supporteddatabaseflags$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Supporteddatabaseflags$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Supporteddatabaseflags$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Supporteddatabaseflags$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://alloydb.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/{+parent}/supportedDatabaseFlags').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Supporteddatabaseflags$List + extends StandardParameters { + /** + * Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The name of the parent resource. The required format is: * projects/{project\}/locations/{location\} Regardless of the parent specified here, as long it is contains a valid project and location, the service will return a static list of supported flags resources. Note that we do not yet support region-specific flags. + */ + parent?: string; + } +} diff --git a/src/apis/alloydb/webpack.config.js b/src/apis/alloydb/webpack.config.js new file mode 100644 index 0000000000..b624b14989 --- /dev/null +++ b/src/apis/alloydb/webpack.config.js @@ -0,0 +1,79 @@ +// Copyright 2019 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Use `npm run webpack` to produce Webpack bundle for this library. + +const path = require('path'); + +module.exports = { + entry: './index.ts', + resolve: { + extensions: ['.ts', '.js', '.json'], + fallback: { + crypto: false, + child_process: false, + fs: false, + http2: false, + buffer: 'browserify', + process: false, + os: false, + querystring: false, + path: false, + stream: 'stream-browserify', + url: false, + util: false, + zlib: false, + }, + }, + output: { + library: 'Alloydb', + filename: 'alloydb.min.js', + path: path.resolve(__dirname, 'dist'), + }, + module: { + rules: [ + { + test: /node_modules[\\/]google-auth-library[\\/]src[\\/]crypto[\\/]node[\\/]crypto/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]https-proxy-agent[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]gcp-metadata[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]gtoken[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]pkginfo[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]semver[\\/]/, + use: 'null-loader', + }, + { + test: /\.ts$/, + use: 'ts-loader', + exclude: /node_modules/, + }, + ], + }, + mode: 'production', + plugins: [], +}; From a6cad17814e76d698be4e86ae4e6ee9c9cca22e6 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:25 +0000 Subject: [PATCH 02/28] fix(analyticsadmin): update the API #### analyticsadmin:v1alpha The following keys were changed: - resources.properties.resources.dataStreams.resources.sKAdNetworkConversionValueSchema.methods.list.parameters.parent.description --- discovery/analyticsadmin-v1alpha.json | 4 ++-- src/apis/analyticsadmin/v1alpha.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/discovery/analyticsadmin-v1alpha.json b/discovery/analyticsadmin-v1alpha.json index f1eae367d8..3eabc6dce4 100644 --- a/discovery/analyticsadmin-v1alpha.json +++ b/discovery/analyticsadmin-v1alpha.json @@ -3309,7 +3309,7 @@ "type": "string" }, "parent": { - "description": "Required. Format: properties/{property_id}/dataStreams/{dataStream}/sKAdNetworkConversionValueSchema Example: properties/1234/dataStreams/5678/sKAdNetworkConversionValueSchema", + "description": "Required. The DataStream resource to list schemas for. Format: properties/{property_id}/dataStreams/{dataStream} Example: properties/1234/dataStreams/5678", "location": "path", "pattern": "^properties/[^/]+/dataStreams/[^/]+$", "required": true, @@ -4524,7 +4524,7 @@ } } }, - "revision": "20230920", + "revision": "20230923", "rootUrl": "https://analyticsadmin.googleapis.com/", "schemas": { "GoogleAnalyticsAdminV1alphaAccessBetweenFilter": { diff --git a/src/apis/analyticsadmin/v1alpha.ts b/src/apis/analyticsadmin/v1alpha.ts index de90c3ebc9..9641b5c037 100644 --- a/src/apis/analyticsadmin/v1alpha.ts +++ b/src/apis/analyticsadmin/v1alpha.ts @@ -14507,7 +14507,7 @@ export namespace analyticsadmin_v1alpha { */ pageToken?: string; /** - * Required. Format: properties/{property_id\}/dataStreams/{dataStream\}/sKAdNetworkConversionValueSchema Example: properties/1234/dataStreams/5678/sKAdNetworkConversionValueSchema + * Required. The DataStream resource to list schemas for. Format: properties/{property_id\}/dataStreams/{dataStream\} Example: properties/1234/dataStreams/5678 */ parent?: string; } From 3296a324e1582392877b756ff35ed74bdd5f7ff3 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:25 +0000 Subject: [PATCH 03/28] fix(apigeeregistry): update the API #### apigeeregistry:v1 The following keys were changed: - schemas.Operation.properties.response.description - schemas.Policy.description --- discovery/apigeeregistry-v1.json | 6 +++--- src/apis/apigeeregistry/v1.ts | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/discovery/apigeeregistry-v1.json b/discovery/apigeeregistry-v1.json index 4b55886fed..a3128c8fbc 100644 --- a/discovery/apigeeregistry-v1.json +++ b/discovery/apigeeregistry-v1.json @@ -3181,7 +3181,7 @@ } } }, - "revision": "20230726", + "revision": "20230920", "rootUrl": "https://apigeeregistry.googleapis.com/", "schemas": { "Api": { @@ -3915,7 +3915,7 @@ "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", "type": "object" } }, @@ -3959,7 +3959,7 @@ "type": "object" }, "Policy": { - "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time < timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).", + "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time < timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } ``` **YAML example:** ``` bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).", "id": "Policy", "properties": { "bindings": { diff --git a/src/apis/apigeeregistry/v1.ts b/src/apis/apigeeregistry/v1.ts index ee6504d666..2c3836ed69 100644 --- a/src/apis/apigeeregistry/v1.ts +++ b/src/apis/apigeeregistry/v1.ts @@ -662,7 +662,7 @@ export namespace apigeeregistry_v1 { */ name?: string | null; /** - * The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + * The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. */ response?: {[key: string]: any} | null; } @@ -700,7 +700,7 @@ export namespace apigeeregistry_v1 { verb?: string | null; } /** - * An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] \}, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", \} \} ], "etag": "BwWWja0YfJA=", "version": 3 \} **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/). + * An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] \}, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", \} \} ], "etag": "BwWWja0YfJA=", "version": 3 \} ``` **YAML example:** ``` bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/). */ export interface Schema$Policy { /** From a33395fcf6532d3b9956aa7d535d437edcdc0627 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:25 +0000 Subject: [PATCH 04/28] feat(batch): update the API #### batch:v1 The following keys were added: - schemas.InstancePolicy.properties.reservation.description - schemas.InstancePolicy.properties.reservation.type The following keys were changed: - schemas.Container.properties.volumes.description - schemas.Disk.properties.image.description --- discovery/batch-v1.json | 10 +++++++--- src/apis/batch/v1.ts | 8 ++++++-- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/discovery/batch-v1.json b/discovery/batch-v1.json index 982ce8ced6..a299d6a8de 100644 --- a/discovery/batch-v1.json +++ b/discovery/batch-v1.json @@ -561,7 +561,7 @@ } } }, - "revision": "20230826", + "revision": "20230914", "rootUrl": "https://batch.googleapis.com/", "schemas": { "Accelerator": { @@ -1073,7 +1073,7 @@ "type": "string" }, "volumes": { - "description": "Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match docker run's --volume option, e.g. /foo:/bar, or /foo:/bar:ro", + "description": "Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match docker run's --volume option, e.g. /foo:/bar, or /foo:/bar:ro If the `TaskSpec.Volumes` field is specified but this field is not, Batch will mount each volume from the host machine to the container with the same mount path by default. In this case, the default mount option for containers will be read-only (ro) for existing persistent disks and read-write (rw) for other volume types, regardless of the original mount options specified in `TaskSpec.Volumes`. If you need different mount settings, you can explicitly configure them in this field.", "items": { "type": "string" }, @@ -1091,7 +1091,7 @@ "type": "string" }, "image": { - "description": "URL for a VM image to use as the data source for this disk. For example, the following are all valid URLs: * Specify the image by its family name: projects/{project}/global/images/family/{image_family} * Specify the image version: projects/{project}/global/images/{image_version} You can also use Batch customized image in short names. The following image values are supported for a boot disk: * `batch-debian`: use Batch Debian images. * `batch-centos`: use Batch CentOS images. * `batch-cos`: use Batch Container-Optimized images. * `batch-hpc-centos`: use Batch HPC CentOS images.", + "description": "URL for a VM image to use as the data source for this disk. For example, the following are all valid URLs: * Specify the image by its family name: projects/{project}/global/images/family/{image_family} * Specify the image version: projects/{project}/global/images/{image_version} You can also use Batch customized image in short names. The following image values are supported for a boot disk: * `batch-debian`: use Batch Debian images. * `batch-centos`: use Batch CentOS images. * `batch-cos`: use Batch Container-Optimized images. * `batch-hpc-centos`: use Batch HPC CentOS images. * `batch-hpc-rocky`: use Batch HPC Rocky Linux images.", "type": "string" }, "sizeGb": { @@ -1197,6 +1197,10 @@ "Preemptible VM (PVM). Above SPOT VM is the preferable model for preemptible VM instances: the old preemptible VM model (indicated by this field) is the older model, and has been migrated to use the SPOT model as the underlying technology. This old model will still be supported." ], "type": "string" + }, + "reservation": { + "description": "Optional. If specified, VMs will consume only the specified reservation. If not specified (default), VMs will consume any applicable reservation.", + "type": "string" } }, "type": "object" diff --git a/src/apis/batch/v1.ts b/src/apis/batch/v1.ts index 52d292f2c4..19a1120015 100644 --- a/src/apis/batch/v1.ts +++ b/src/apis/batch/v1.ts @@ -511,7 +511,7 @@ export namespace batch_v1 { */ username?: string | null; /** - * Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match docker run's --volume option, e.g. /foo:/bar, or /foo:/bar:ro + * Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match docker run's --volume option, e.g. /foo:/bar, or /foo:/bar:ro If the `TaskSpec.Volumes` field is specified but this field is not, Batch will mount each volume from the host machine to the container with the same mount path by default. In this case, the default mount option for containers will be read-only (ro) for existing persistent disks and read-write (rw) for other volume types, regardless of the original mount options specified in `TaskSpec.Volumes`. If you need different mount settings, you can explicitly configure them in this field. */ volumes?: string[] | null; } @@ -524,7 +524,7 @@ export namespace batch_v1 { */ diskInterface?: string | null; /** - * URL for a VM image to use as the data source for this disk. For example, the following are all valid URLs: * Specify the image by its family name: projects/{project\}/global/images/family/{image_family\} * Specify the image version: projects/{project\}/global/images/{image_version\} You can also use Batch customized image in short names. The following image values are supported for a boot disk: * `batch-debian`: use Batch Debian images. * `batch-centos`: use Batch CentOS images. * `batch-cos`: use Batch Container-Optimized images. * `batch-hpc-centos`: use Batch HPC CentOS images. + * URL for a VM image to use as the data source for this disk. For example, the following are all valid URLs: * Specify the image by its family name: projects/{project\}/global/images/family/{image_family\} * Specify the image version: projects/{project\}/global/images/{image_version\} You can also use Batch customized image in short names. The following image values are supported for a boot disk: * `batch-debian`: use Batch Debian images. * `batch-centos`: use Batch CentOS images. * `batch-cos`: use Batch Container-Optimized images. * `batch-hpc-centos`: use Batch HPC CentOS images. * `batch-hpc-rocky`: use Batch HPC Rocky Linux images. */ image?: string | null; /** @@ -598,6 +598,10 @@ export namespace batch_v1 { * The provisioning model. */ provisioningModel?: string | null; + /** + * Optional. If specified, VMs will consume only the specified reservation. If not specified (default), VMs will consume any applicable reservation. + */ + reservation?: string | null; } /** * InstancePolicyOrTemplate lets you define the type of resources to use for this job either with an InstancePolicy or an instance template. If undefined, Batch picks the type of VM to use and doesn't include optional VM resources such as GPUs and extra disks. From 3084883070788c7fab74ac454f286fb525ac3c35 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:25 +0000 Subject: [PATCH 05/28] fix(bigtableadmin): update the API #### bigtableadmin:v2 The following keys were changed: - resources.projects.resources.instances.resources.clusters.resources.backups.methods.getIamPolicy.description - resources.projects.resources.instances.resources.clusters.resources.backups.methods.setIamPolicy.description - resources.projects.resources.instances.resources.clusters.resources.backups.methods.testIamPermissions.description - resources.projects.resources.instances.resources.tables.methods.getIamPolicy.description - resources.projects.resources.instances.resources.tables.methods.setIamPolicy.description - resources.projects.resources.instances.resources.tables.methods.testIamPermissions.description - schemas.Operation.properties.response.description - schemas.Policy.description --- discovery/bigtableadmin-v2.json | 18 +++++++++--------- src/apis/bigtableadmin/v2.ts | 16 ++++++++-------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/discovery/bigtableadmin-v2.json b/discovery/bigtableadmin-v2.json index 2aa85c4cf6..7f035a971b 100644 --- a/discovery/bigtableadmin-v2.json +++ b/discovery/bigtableadmin-v2.json @@ -1127,7 +1127,7 @@ ] }, "getIamPolicy": { - "description": "Gets the access control policy for a Table resource. Returns an empty policy if the resource exists but does not have a policy set.", + "description": "Gets the access control policy for a Table or Backup resource. Returns an empty policy if the resource exists but does not have a policy set.", "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/clusters/{clustersId}/backups/{backupsId}:getIamPolicy", "httpMethod": "POST", "id": "bigtableadmin.projects.instances.clusters.backups.getIamPolicy", @@ -1247,7 +1247,7 @@ ] }, "setIamPolicy": { - "description": "Sets the access control policy on a Table resource. Replaces any existing policy.", + "description": "Sets the access control policy on a Table or Backup resource. Replaces any existing policy.", "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/clusters/{clustersId}/backups/{backupsId}:setIamPolicy", "httpMethod": "POST", "id": "bigtableadmin.projects.instances.clusters.backups.setIamPolicy", @@ -1279,7 +1279,7 @@ ] }, "testIamPermissions": { - "description": "Returns permissions that the caller has on the specified table resource.", + "description": "Returns permissions that the caller has on the specified Table or Backup resource.", "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/clusters/{clustersId}/backups/{backupsId}:testIamPermissions", "httpMethod": "POST", "id": "bigtableadmin.projects.instances.clusters.backups.testIamPermissions", @@ -1584,7 +1584,7 @@ ] }, "getIamPolicy": { - "description": "Gets the access control policy for a Table resource. Returns an empty policy if the resource exists but does not have a policy set.", + "description": "Gets the access control policy for a Table or Backup resource. Returns an empty policy if the resource exists but does not have a policy set.", "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/tables/{tablesId}:getIamPolicy", "httpMethod": "POST", "id": "bigtableadmin.projects.instances.tables.getIamPolicy", @@ -1782,7 +1782,7 @@ ] }, "setIamPolicy": { - "description": "Sets the access control policy on a Table resource. Replaces any existing policy.", + "description": "Sets the access control policy on a Table or Backup resource. Replaces any existing policy.", "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/tables/{tablesId}:setIamPolicy", "httpMethod": "POST", "id": "bigtableadmin.projects.instances.tables.setIamPolicy", @@ -1814,7 +1814,7 @@ ] }, "testIamPermissions": { - "description": "Returns permissions that the caller has on the specified table resource.", + "description": "Returns permissions that the caller has on the specified Table or Backup resource.", "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/tables/{tablesId}:testIamPermissions", "httpMethod": "POST", "id": "bigtableadmin.projects.instances.tables.testIamPermissions", @@ -1966,7 +1966,7 @@ } } }, - "revision": "20230731", + "revision": "20230913", "rootUrl": "https://bigtableadmin.googleapis.com/", "schemas": { "AppProfile": { @@ -3124,7 +3124,7 @@ "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", "type": "object" } }, @@ -3221,7 +3221,7 @@ "type": "object" }, "Policy": { - "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time < timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).", + "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time < timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } ``` **YAML example:** ``` bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).", "id": "Policy", "properties": { "auditConfigs": { diff --git a/src/apis/bigtableadmin/v2.ts b/src/apis/bigtableadmin/v2.ts index 81c239570f..decf274465 100644 --- a/src/apis/bigtableadmin/v2.ts +++ b/src/apis/bigtableadmin/v2.ts @@ -955,7 +955,7 @@ export namespace bigtableadmin_v2 { */ name?: string | null; /** - * The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + * The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. */ response?: {[key: string]: any} | null; } @@ -1033,7 +1033,7 @@ export namespace bigtableadmin_v2 { updateMask?: string | null; } /** - * An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] \}, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", \} \} ], "etag": "BwWWja0YfJA=", "version": 3 \} **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/). + * An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] \}, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", \} \} ], "etag": "BwWWja0YfJA=", "version": 3 \} ``` **YAML example:** ``` bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/). */ export interface Schema$Policy { /** @@ -4147,7 +4147,7 @@ export namespace bigtableadmin_v2 { } /** - * Gets the access control policy for a Table resource. Returns an empty policy if the resource exists but does not have a policy set. + * Gets the access control policy for a Table or Backup resource. Returns an empty policy if the resource exists but does not have a policy set. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -4413,7 +4413,7 @@ export namespace bigtableadmin_v2 { } /** - * Sets the access control policy on a Table resource. Replaces any existing policy. + * Sets the access control policy on a Table or Backup resource. Replaces any existing policy. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -4502,7 +4502,7 @@ export namespace bigtableadmin_v2 { } /** - * Returns permissions that the caller has on the specified table resource. + * Returns permissions that the caller has on the specified Table or Backup resource. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -5388,7 +5388,7 @@ export namespace bigtableadmin_v2 { } /** - * Gets the access control policy for a Table resource. Returns an empty policy if the resource exists but does not have a policy set. + * Gets the access control policy for a Table or Backup resource. Returns an empty policy if the resource exists but does not have a policy set. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -5829,7 +5829,7 @@ export namespace bigtableadmin_v2 { } /** - * Sets the access control policy on a Table resource. Replaces any existing policy. + * Sets the access control policy on a Table or Backup resource. Replaces any existing policy. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -5917,7 +5917,7 @@ export namespace bigtableadmin_v2 { } /** - * Returns permissions that the caller has on the specified table resource. + * Returns permissions that the caller has on the specified Table or Backup resource. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. From dd02c3a703d6f65a6c07952fc80e9ec9f8ce13ae Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:26 +0000 Subject: [PATCH 06/28] feat(clouddeploy): update the API #### clouddeploy:v1 The following keys were added: - schemas.AutomationEvent.description - schemas.AutomationEvent.id - schemas.AutomationEvent.properties.automation.description - schemas.AutomationEvent.properties.automation.type - schemas.AutomationEvent.properties.message.description - schemas.AutomationEvent.properties.message.type - schemas.AutomationEvent.properties.pipelineUid.description - schemas.AutomationEvent.properties.pipelineUid.type - schemas.AutomationEvent.properties.type.description - schemas.AutomationEvent.properties.type.enum - schemas.AutomationEvent.properties.type.enumDeprecated - schemas.AutomationEvent.properties.type.enumDescriptions - schemas.AutomationEvent.properties.type.type - schemas.AutomationEvent.type - schemas.AutomationRunEvent.description - schemas.AutomationRunEvent.id - schemas.AutomationRunEvent.properties.automationId.description - schemas.AutomationRunEvent.properties.automationId.type - schemas.AutomationRunEvent.properties.automationRun.description - schemas.AutomationRunEvent.properties.automationRun.type - schemas.AutomationRunEvent.properties.destinationTargetId.description - schemas.AutomationRunEvent.properties.destinationTargetId.type - schemas.AutomationRunEvent.properties.message.description - schemas.AutomationRunEvent.properties.message.type - schemas.AutomationRunEvent.properties.pipelineUid.description - schemas.AutomationRunEvent.properties.pipelineUid.type - schemas.AutomationRunEvent.properties.ruleId.description - schemas.AutomationRunEvent.properties.ruleId.type - schemas.AutomationRunEvent.properties.type.description - schemas.AutomationRunEvent.properties.type.enum - schemas.AutomationRunEvent.properties.type.enumDeprecated - schemas.AutomationRunEvent.properties.type.enumDescriptions - schemas.AutomationRunEvent.properties.type.type - schemas.AutomationRunEvent.type --- discovery/clouddeploy-v1.json | 114 +++++++++++++++++++++++++++++++++- src/apis/clouddeploy/v1.ts | 54 ++++++++++++++++ 2 files changed, 167 insertions(+), 1 deletion(-) diff --git a/discovery/clouddeploy-v1.json b/discovery/clouddeploy-v1.json index e9edc43750..cd78519665 100644 --- a/discovery/clouddeploy-v1.json +++ b/discovery/clouddeploy-v1.json @@ -1479,7 +1479,7 @@ } } }, - "revision": "20230904", + "revision": "20230913", "rootUrl": "https://clouddeploy.googleapis.com/", "schemas": { "AbandonReleaseRequest": { @@ -1610,6 +1610,118 @@ }, "type": "object" }, + "AutomationEvent": { + "description": "Payload proto for \"clouddeploy.googleapis.com/automation\" Platform Log event that describes the Automation related events.", + "id": "AutomationEvent", + "properties": { + "automation": { + "description": "The name of the `AutomationRun`.", + "type": "string" + }, + "message": { + "description": "Debug message for when there is an update on the AutomationRun. Provides further details about the resource creation or state change.", + "type": "string" + }, + "pipelineUid": { + "description": "Unique identifier of the `DeliveryPipeline`.", + "type": "string" + }, + "type": { + "description": "Type of this notification, e.g. for a Pub/Sub failure.", + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_PUBSUB_NOTIFICATION_FAILURE", + "TYPE_RESOURCE_STATE_CHANGE", + "TYPE_PROCESS_ABORTED", + "TYPE_RESTRICTION_VIOLATED", + "TYPE_RESOURCE_DELETED", + "TYPE_RENDER_STATUES_CHANGE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true + ], + "enumDescriptions": [ + "Type is unspecified.", + "A Pub/Sub notification failed to be sent.", + "Resource state changed.", + "A process aborted.", + "Restriction check failed.", + "Resource deleted.", + "Deprecated: This field is never used. Use release_render log type instead." + ], + "type": "string" + } + }, + "type": "object" + }, + "AutomationRunEvent": { + "description": "Payload proto for \"clouddeploy.googleapis.com/automation_run\" Platform Log event that describes the AutomationRun related events.", + "id": "AutomationRunEvent", + "properties": { + "automationId": { + "description": "Identifier of the `Automation`.", + "type": "string" + }, + "automationRun": { + "description": "The name of the `AutomationRun`.", + "type": "string" + }, + "destinationTargetId": { + "description": "ID of the `Target` to which the `AutomationRun` is created.", + "type": "string" + }, + "message": { + "description": "Debug message for when there is an update on the AutomationRun. Provides further details about the resource creation or state change.", + "type": "string" + }, + "pipelineUid": { + "description": "Unique identifier of the `DeliveryPipeline`.", + "type": "string" + }, + "ruleId": { + "description": "Identifier of the `Automation` rule.", + "type": "string" + }, + "type": { + "description": "Type of this notification, e.g. for a Pub/Sub failure.", + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_PUBSUB_NOTIFICATION_FAILURE", + "TYPE_RESOURCE_STATE_CHANGE", + "TYPE_PROCESS_ABORTED", + "TYPE_RESTRICTION_VIOLATED", + "TYPE_RESOURCE_DELETED", + "TYPE_RENDER_STATUES_CHANGE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true + ], + "enumDescriptions": [ + "Type is unspecified.", + "A Pub/Sub notification failed to be sent.", + "Resource state changed.", + "A process aborted.", + "Restriction check failed.", + "Resource deleted.", + "Deprecated: This field is never used. Use release_render log type instead." + ], + "type": "string" + } + }, + "type": "object" + }, "Binding": { "description": "Associates `members`, or principals, with a `role`.", "id": "Binding", diff --git a/src/apis/clouddeploy/v1.ts b/src/apis/clouddeploy/v1.ts index c81ccdc04c..e560b9bea6 100644 --- a/src/apis/clouddeploy/v1.ts +++ b/src/apis/clouddeploy/v1.ts @@ -210,6 +210,60 @@ export namespace clouddeploy_v1 { */ logType?: string | null; } + /** + * Payload proto for "clouddeploy.googleapis.com/automation" Platform Log event that describes the Automation related events. + */ + export interface Schema$AutomationEvent { + /** + * The name of the `AutomationRun`. + */ + automation?: string | null; + /** + * Debug message for when there is an update on the AutomationRun. Provides further details about the resource creation or state change. + */ + message?: string | null; + /** + * Unique identifier of the `DeliveryPipeline`. + */ + pipelineUid?: string | null; + /** + * Type of this notification, e.g. for a Pub/Sub failure. + */ + type?: string | null; + } + /** + * Payload proto for "clouddeploy.googleapis.com/automation_run" Platform Log event that describes the AutomationRun related events. + */ + export interface Schema$AutomationRunEvent { + /** + * Identifier of the `Automation`. + */ + automationId?: string | null; + /** + * The name of the `AutomationRun`. + */ + automationRun?: string | null; + /** + * ID of the `Target` to which the `AutomationRun` is created. + */ + destinationTargetId?: string | null; + /** + * Debug message for when there is an update on the AutomationRun. Provides further details about the resource creation or state change. + */ + message?: string | null; + /** + * Unique identifier of the `DeliveryPipeline`. + */ + pipelineUid?: string | null; + /** + * Identifier of the `Automation` rule. + */ + ruleId?: string | null; + /** + * Type of this notification, e.g. for a Pub/Sub failure. + */ + type?: string | null; + } /** * Associates `members`, or principals, with a `role`. */ From 932e48fa352b5a83ab5f0b1fdb5871af2c09cd16 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:26 +0000 Subject: [PATCH 07/28] feat(composer): update the API #### composer:v1beta1 The following keys were added: - schemas.Environment.properties.satisfiesPzs.description - schemas.Environment.properties.satisfiesPzs.readOnly - schemas.Environment.properties.satisfiesPzs.type #### composer:v1 The following keys were added: - schemas.Environment.properties.satisfiesPzs.description - schemas.Environment.properties.satisfiesPzs.readOnly - schemas.Environment.properties.satisfiesPzs.type - schemas.TriggererResource.description - schemas.TriggererResource.id - schemas.TriggererResource.properties.count.description - schemas.TriggererResource.properties.count.format - schemas.TriggererResource.properties.count.type - schemas.TriggererResource.properties.cpu.description - schemas.TriggererResource.properties.cpu.format - schemas.TriggererResource.properties.cpu.type - schemas.TriggererResource.properties.memoryGb.description - schemas.TriggererResource.properties.memoryGb.format - schemas.TriggererResource.properties.memoryGb.type - schemas.TriggererResource.type - schemas.WorkloadsConfig.properties.triggerer.$ref - schemas.WorkloadsConfig.properties.triggerer.description --- discovery/composer-v1.json | 33 ++++++++++++++++++++++++++++++++- discovery/composer-v1beta1.json | 7 ++++++- src/apis/composer/v1.ts | 25 +++++++++++++++++++++++++ src/apis/composer/v1beta1.ts | 4 ++++ 4 files changed, 67 insertions(+), 2 deletions(-) diff --git a/discovery/composer-v1.json b/discovery/composer-v1.json index 92491143a2..3654977af0 100644 --- a/discovery/composer-v1.json +++ b/discovery/composer-v1.json @@ -599,7 +599,7 @@ } } }, - "revision": "20230906", + "revision": "20230917", "rootUrl": "https://composer.googleapis.com/", "schemas": { "AllowedIpRange": { @@ -761,6 +761,11 @@ "description": "The resource name of the environment, in the form: \"projects/{projectId}/locations/{locationId}/environments/{environmentId}\" EnvironmentId must start with a lowercase letter followed by up to 63 lowercase letters, numbers, or hyphens, and cannot end with a hyphen.", "type": "string" }, + "satisfiesPzs": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, "state": { "description": "The current state of the environment.", "enum": [ @@ -1673,6 +1678,28 @@ "properties": {}, "type": "object" }, + "TriggererResource": { + "description": "Configuration for resources used by Airflow triggerers.", + "id": "TriggererResource", + "properties": { + "count": { + "description": "Optional. The number of triggerers.", + "format": "int32", + "type": "integer" + }, + "cpu": { + "description": "Optional. CPU request and limit for a single Airflow triggerer replica.", + "format": "float", + "type": "number" + }, + "memoryGb": { + "description": "Optional. Memory (GB) request and limit for a single Airflow triggerer replica.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, "WebServerConfig": { "description": "The configuration settings for the Airflow web server App Engine instance. Supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*", "id": "WebServerConfig", @@ -1760,6 +1787,10 @@ "$ref": "SchedulerResource", "description": "Optional. Resources used by Airflow schedulers." }, + "triggerer": { + "$ref": "TriggererResource", + "description": "Optional. Resources used by Airflow triggerers." + }, "webServer": { "$ref": "WebServerResource", "description": "Optional. Resources used by Airflow web server." diff --git a/discovery/composer-v1beta1.json b/discovery/composer-v1beta1.json index ff101b8e79..b16a5b25f6 100644 --- a/discovery/composer-v1beta1.json +++ b/discovery/composer-v1beta1.json @@ -655,7 +655,7 @@ } } }, - "revision": "20230806", + "revision": "20230917", "rootUrl": "https://composer.googleapis.com/", "schemas": { "AllowedIpRange": { @@ -840,6 +840,11 @@ "description": "The resource name of the environment, in the form: \"projects/{projectId}/locations/{locationId}/environments/{environmentId}\" EnvironmentId must start with a lowercase letter followed by up to 63 lowercase letters, numbers, or hyphens, and cannot end with a hyphen.", "type": "string" }, + "satisfiesPzs": { + "description": "Output only. Reserved for future use.", + "readOnly": true, + "type": "boolean" + }, "state": { "description": "The current state of the environment.", "enum": [ diff --git a/src/apis/composer/v1.ts b/src/apis/composer/v1.ts index 1ca492de20..5ade45c769 100644 --- a/src/apis/composer/v1.ts +++ b/src/apis/composer/v1.ts @@ -242,6 +242,10 @@ export namespace composer_v1 { * The resource name of the environment, in the form: "projects/{projectId\}/locations/{locationId\}/environments/{environmentId\}" EnvironmentId must start with a lowercase letter followed by up to 63 lowercase letters, numbers, or hyphens, and cannot end with a hyphen. */ name?: string | null; + /** + * Output only. Reserved for future use. + */ + satisfiesPzs?: boolean | null; /** * The current state of the environment. */ @@ -930,6 +934,23 @@ export namespace composer_v1 { * The configuration for data storage in the environment. */ export interface Schema$StorageConfig {} + /** + * Configuration for resources used by Airflow triggerers. + */ + export interface Schema$TriggererResource { + /** + * Optional. The number of triggerers. + */ + count?: number | null; + /** + * Optional. CPU request and limit for a single Airflow triggerer replica. + */ + cpu?: number | null; + /** + * Optional. Memory (GB) request and limit for a single Airflow triggerer replica. + */ + memoryGb?: number | null; + } /** * The configuration settings for the Airflow web server App Engine instance. Supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.* */ @@ -998,6 +1019,10 @@ export namespace composer_v1 { * Optional. Resources used by Airflow schedulers. */ scheduler?: Schema$SchedulerResource; + /** + * Optional. Resources used by Airflow triggerers. + */ + triggerer?: Schema$TriggererResource; /** * Optional. Resources used by Airflow web server. */ diff --git a/src/apis/composer/v1beta1.ts b/src/apis/composer/v1beta1.ts index a146403e80..c90e4645b4 100644 --- a/src/apis/composer/v1beta1.ts +++ b/src/apis/composer/v1beta1.ts @@ -260,6 +260,10 @@ export namespace composer_v1beta1 { * The resource name of the environment, in the form: "projects/{projectId\}/locations/{locationId\}/environments/{environmentId\}" EnvironmentId must start with a lowercase letter followed by up to 63 lowercase letters, numbers, or hyphens, and cannot end with a hyphen. */ name?: string | null; + /** + * Output only. Reserved for future use. + */ + satisfiesPzs?: boolean | null; /** * The current state of the environment. */ From df1a5b55a76335833fd485103ef65bdbee2d00ac Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:26 +0000 Subject: [PATCH 08/28] feat(connectors)!: update the API BREAKING CHANGE: This release has breaking changes. #### connectors:v1 The following keys were deleted: - schemas.EventingConfig.properties.publicEventsListenerEndpoint.description - schemas.EventingConfig.properties.publicEventsListenerEndpoint.type The following keys were added: - schemas.EventingConfig.properties.eventsListenerIngressEndpoint.description - schemas.EventingConfig.properties.eventsListenerIngressEndpoint.type - schemas.EventingRuntimeData.properties.eventsListenerPscSa.description - schemas.EventingRuntimeData.properties.eventsListenerPscSa.readOnly - schemas.EventingRuntimeData.properties.eventsListenerPscSa.type - schemas.RuntimeActionSchema.properties.description.description - schemas.RuntimeActionSchema.properties.description.readOnly - schemas.RuntimeActionSchema.properties.description.type - schemas.RuntimeActionSchema.properties.displayName.description - schemas.RuntimeActionSchema.properties.displayName.readOnly - schemas.RuntimeActionSchema.properties.displayName.type The following keys were changed: - schemas.EventingStatus.properties.state.enum - schemas.EventingStatus.properties.state.enumDescriptions #### connectors:v2 The following keys were added: - schemas.Action.properties.description.description - schemas.Action.properties.description.type - schemas.Action.properties.displayName.description - schemas.Action.properties.displayName.type - schemas.InputParameter.properties.additionalDetails.additionalProperties.description - schemas.InputParameter.properties.additionalDetails.additionalProperties.type - schemas.InputParameter.properties.additionalDetails.description - schemas.InputParameter.properties.additionalDetails.type The following keys were changed: - schemas.QueryParameter.properties.value.type --- discovery/connectors-v1.json | 29 ++++++++++++++++++++++------- discovery/connectors-v2.json | 20 ++++++++++++++++++-- src/apis/connectors/v1.ts | 20 ++++++++++++++++---- src/apis/connectors/v2.ts | 14 +++++++++++++- 4 files changed, 69 insertions(+), 14 deletions(-) diff --git a/discovery/connectors-v1.json b/discovery/connectors-v1.json index a5562da64e..a751b07d2e 100644 --- a/discovery/connectors-v1.json +++ b/discovery/connectors-v1.json @@ -1773,7 +1773,7 @@ } } }, - "revision": "20230906", + "revision": "20230913", "rootUrl": "https://connectors.googleapis.com/", "schemas": { "AuditConfig": { @@ -3050,14 +3050,14 @@ "description": "Enrichment Enabled.", "type": "boolean" }, + "eventsListenerIngressEndpoint": { + "description": "Optional. Ingress endpoint of the event listener. This is used only when private connectivity is enabled.", + "type": "string" + }, "privateConnectivityEnabled": { "description": "Optional. Private Connectivity Enabled.", "type": "boolean" }, - "publicEventsListenerEndpoint": { - "description": "Optional. Public Events listener endpoint.", - "type": "string" - }, "registrationDestinationConfig": { "$ref": "DestinationConfig", "description": "Registration endpoint for auto registration." @@ -3178,6 +3178,11 @@ "readOnly": true, "type": "string" }, + "eventsListenerPscSa": { + "description": "Output only. Events listener PSC Service attachment. The value will be populated after provisioning the events listener with private connectivity enabled.", + "readOnly": true, + "type": "string" + }, "status": { "$ref": "EventingStatus", "description": "Output only. Current status of eventing.", @@ -3201,13 +3206,13 @@ "STATE_UNSPECIFIED", "ACTIVE", "ERROR", - "PUBLIC_ENDPOINT_REQUIRED" + "INGRESS_ENDPOINT_REQUIRED" ], "enumDescriptions": [ "Default state.", "Eventing is enabled and ready to receive events.", "Eventing is not active due to an error.", - "Public endpoint required." + "Ingress endpoint required." ], "readOnly": true, "type": "string" @@ -4866,6 +4871,16 @@ "readOnly": true, "type": "string" }, + "description": { + "description": "Output only. Brief Description of action", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Output only. Display Name of action to be shown on client side", + "readOnly": true, + "type": "string" + }, "inputJsonSchema": { "$ref": "JsonSchema", "description": "Output only. JsonSchema representation of this action's input metadata", diff --git a/discovery/connectors-v2.json b/discovery/connectors-v2.json index 8cd380e57b..190097637c 100644 --- a/discovery/connectors-v2.json +++ b/discovery/connectors-v2.json @@ -558,13 +558,21 @@ } } }, - "revision": "20230906", + "revision": "20230913", "rootUrl": "https://connectors.googleapis.com/", "schemas": { "Action": { "description": "Action message contains metadata information about a single action present in the external system.", "id": "Action", "properties": { + "description": { + "description": "Brief Description of action", + "type": "string" + }, + "displayName": { + "description": "Display Name of action to be shown on client side", + "type": "string" + }, "inputJsonSchema": { "$ref": "JsonSchema", "description": "JsonSchema representation of this actions's input schema" @@ -895,6 +903,14 @@ "description": "Input Parameter message contains metadata about the parameters required for executing an Action.", "id": "InputParameter", "properties": { + "additionalDetails": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The following map contains fields that are not explicitly mentioned above,this give connectors the flexibility to add new metadata fields.", + "type": "object" + }, "dataType": { "description": "The data type of the Parameter", "enum": [ @@ -1512,7 +1528,7 @@ "type": "string" }, "value": { - "type": "string" + "type": "any" } }, "type": "object" diff --git a/src/apis/connectors/v1.ts b/src/apis/connectors/v1.ts index 91dea52b72..061ff0c9df 100644 --- a/src/apis/connectors/v1.ts +++ b/src/apis/connectors/v1.ts @@ -862,13 +862,13 @@ export namespace connectors_v1 { */ enrichmentEnabled?: boolean | null; /** - * Optional. Private Connectivity Enabled. + * Optional. Ingress endpoint of the event listener. This is used only when private connectivity is enabled. */ - privateConnectivityEnabled?: boolean | null; + eventsListenerIngressEndpoint?: string | null; /** - * Optional. Public Events listener endpoint. + * Optional. Private Connectivity Enabled. */ - publicEventsListenerEndpoint?: string | null; + privateConnectivityEnabled?: boolean | null; /** * Registration endpoint for auto registration. */ @@ -952,6 +952,10 @@ export namespace connectors_v1 { * Output only. Events listener endpoint. The value will populated after provisioning the events listener. */ eventsListenerEndpoint?: string | null; + /** + * Output only. Events listener PSC Service attachment. The value will be populated after provisioning the events listener with private connectivity enabled. + */ + eventsListenerPscSa?: string | null; /** * Output only. Current status of eventing. */ @@ -1869,6 +1873,14 @@ export namespace connectors_v1 { * Output only. Name of the action. */ action?: string | null; + /** + * Output only. Brief Description of action + */ + description?: string | null; + /** + * Output only. Display Name of action to be shown on client side + */ + displayName?: string | null; /** * Output only. JsonSchema representation of this action's input metadata */ diff --git a/src/apis/connectors/v2.ts b/src/apis/connectors/v2.ts index 348d7f2077..12be994e7f 100644 --- a/src/apis/connectors/v2.ts +++ b/src/apis/connectors/v2.ts @@ -128,6 +128,14 @@ export namespace connectors_v2 { * Action message contains metadata information about a single action present in the external system. */ export interface Schema$Action { + /** + * Brief Description of action + */ + description?: string | null; + /** + * Display Name of action to be shown on client side + */ + displayName?: string | null; /** * JsonSchema representation of this actions's input schema */ @@ -264,6 +272,10 @@ export namespace connectors_v2 { * Input Parameter message contains metadata about the parameters required for executing an Action. */ export interface Schema$InputParameter { + /** + * The following map contains fields that are not explicitly mentioned above,this give connectors the flexibility to add new metadata fields. + */ + additionalDetails?: {[key: string]: any} | null; /** * The data type of the Parameter */ @@ -407,7 +419,7 @@ export namespace connectors_v2 { */ export interface Schema$QueryParameter { dataType?: string | null; - value?: string | null; + value?: any | null; } export interface Schema$Reference { /** From 592062e29da7b2bac38ecd76d38de3573bc88586 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:26 +0000 Subject: [PATCH 09/28] feat(dataform): update the API #### dataform:v1beta1 The following keys were added: - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.description - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.flatPath - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.httpMethod - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.id - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameterOrder - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameters.options.requestedPolicyVersion.description - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameters.options.requestedPolicyVersion.format - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameters.options.requestedPolicyVersion.location - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameters.options.requestedPolicyVersion.type - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameters.resource.description - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameters.resource.location - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameters.resource.pattern - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameters.resource.required - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.parameters.resource.type - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.path - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.response.$ref - resources.projects.resources.locations.resources.collections.methods.getIamPolicy.scopes - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.description - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.flatPath - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.httpMethod - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.id - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.parameterOrder - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.parameters.resource.description - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.parameters.resource.location - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.parameters.resource.pattern - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.parameters.resource.required - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.parameters.resource.type - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.path - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.request.$ref - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.response.$ref - resources.projects.resources.locations.resources.collections.methods.setIamPolicy.scopes - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.description - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.flatPath - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.httpMethod - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.id - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.parameterOrder - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.parameters.resource.description - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.parameters.resource.location - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.parameters.resource.pattern - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.parameters.resource.required - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.parameters.resource.type - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.path - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.request.$ref - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.response.$ref - resources.projects.resources.locations.resources.collections.methods.testIamPermissions.scopes The following keys were changed: - schemas.CommitRepositoryChangesRequest.properties.fileOperations.description --- discovery/dataform-v1beta1.json | 95 +++++++++- src/apis/dataform/v1beta1.ts | 320 +++++++++++++++++++++++++++++++- 2 files changed, 412 insertions(+), 3 deletions(-) diff --git a/discovery/dataform-v1beta1.json b/discovery/dataform-v1beta1.json index e1e6cdf819..d42123957f 100644 --- a/discovery/dataform-v1beta1.json +++ b/discovery/dataform-v1beta1.json @@ -176,6 +176,97 @@ } }, "resources": { + "collections": { + "methods": { + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}:getIamPolicy", + "httpMethod": "GET", + "id": "dataform.projects.locations.collections.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "options.requestedPolicyVersion": { + "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}:setIamPolicy", + "httpMethod": "POST", + "id": "dataform.projects.locations.collections.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}:testIamPermissions", + "httpMethod": "POST", + "id": "dataform.projects.locations.collections.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "repositories": { "methods": { "commit": { @@ -1961,7 +2052,7 @@ } } }, - "revision": "20230909", + "revision": "20230916", "rootUrl": "https://dataform.googleapis.com/", "schemas": { "Assertion": { @@ -2174,7 +2265,7 @@ "additionalProperties": { "$ref": "FileOperation" }, - "description": "A map to the path of the file to the operation. The path is the ull file path including filename, from repository root.", + "description": "A map to the path of the file to the operation. The path is the full file path including filename, from repository root.", "type": "object" }, "requiredHeadCommitSha": { diff --git a/src/apis/dataform/v1beta1.ts b/src/apis/dataform/v1beta1.ts index eb8f446ec4..ec98585074 100644 --- a/src/apis/dataform/v1beta1.ts +++ b/src/apis/dataform/v1beta1.ts @@ -293,7 +293,7 @@ export namespace dataform_v1beta1 { */ commitMetadata?: Schema$CommitMetadata; /** - * A map to the path of the file to the operation. The path is the ull file path including filename, from repository root. + * A map to the path of the file to the operation. The path is the full file path including filename, from repository root. */ fileOperations?: {[key: string]: Schema$FileOperation} | null; /** @@ -1448,9 +1448,13 @@ export namespace dataform_v1beta1 { export class Resource$Projects$Locations { context: APIRequestContext; + collections: Resource$Projects$Locations$Collections; repositories: Resource$Projects$Locations$Repositories; constructor(context: APIRequestContext) { this.context = context; + this.collections = new Resource$Projects$Locations$Collections( + this.context + ); this.repositories = new Resource$Projects$Locations$Repositories( this.context ); @@ -1660,6 +1664,320 @@ export namespace dataform_v1beta1 { pageToken?: string; } + export class Resource$Projects$Locations$Collections { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Getiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + getIamPolicy( + params?: Params$Resource$Projects$Locations$Collections$Getiampolicy, + options?: MethodOptions + ): GaxiosPromise; + getIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Setiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Collections$Setiampolicy, + options?: MethodOptions + ): GaxiosPromise; + setIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Collections$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Projects$Locations$Collections$Testiampermissions, + options: StreamMethodOptions + ): GaxiosPromise; + testIamPermissions( + params?: Params$Resource$Projects$Locations$Collections$Testiampermissions, + options?: MethodOptions + ): GaxiosPromise; + testIamPermissions( + params: Params$Resource$Projects$Locations$Collections$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Collections$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Collections$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Collections$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Collections$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Collections$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://dataform.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Collections$Getiampolicy + extends StandardParameters { + /** + * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Collections$Setiampolicy + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Collections$Testiampermissions + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestIamPermissionsRequest; + } + export class Resource$Projects$Locations$Repositories { context: APIRequestContext; compilationResults: Resource$Projects$Locations$Repositories$Compilationresults; From 8d6b20180331966c14821459f5f31bbc5277e630 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:26 +0000 Subject: [PATCH 10/28] fix(datamigration): update the API #### datamigration:v1 The following keys were changed: - schemas.CloudSqlSettings.properties.dataCacheConfig.description - schemas.DataCacheConfig.description --- discovery/datamigration-v1.json | 6 +++--- src/apis/datamigration/v1.ts | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/discovery/datamigration-v1.json b/discovery/datamigration-v1.json index 9f5816a388..f0158f50fc 100644 --- a/discovery/datamigration-v1.json +++ b/discovery/datamigration-v1.json @@ -2097,7 +2097,7 @@ } } }, - "revision": "20230911", + "revision": "20230912", "rootUrl": "https://datamigration.googleapis.com/", "schemas": { "AlloyDbConnectionProfile": { @@ -2443,7 +2443,7 @@ }, "dataCacheConfig": { "$ref": "DataCacheConfig", - "description": "Optional. Configuration for data cache." + "description": "Optional. Data cache is an optional feature available for Cloud SQL for MySQL Enterprise Plus edition only. For more information on data cache, see [Data cache overview](https://cloud.google.com/sql/help/mysql-data-cache) in Cloud SQL documentation." }, "dataDiskSizeGb": { "description": "The storage capacity available to the database, in GB. The minimum (and default) size is 10GB.", @@ -2951,7 +2951,7 @@ "type": "object" }, "DataCacheConfig": { - "description": "Data cache configurations.", + "description": "Data cache is an optional feature available for Cloud SQL for MySQL Enterprise Plus edition only. For more information on data cache, see [Data cache overview](https://cloud.google.com/sql/help/mysql-data-cache) in Cloud SQL documentation.", "id": "DataCacheConfig", "properties": { "dataCacheEnabled": { diff --git a/src/apis/datamigration/v1.ts b/src/apis/datamigration/v1.ts index a2b094ec56..5b53c10eb8 100644 --- a/src/apis/datamigration/v1.ts +++ b/src/apis/datamigration/v1.ts @@ -365,7 +365,7 @@ export namespace datamigration_v1 { */ databaseVersion?: string | null; /** - * Optional. Configuration for data cache. + * Optional. Data cache is an optional feature available for Cloud SQL for MySQL Enterprise Plus edition only. For more information on data cache, see [Data cache overview](https://cloud.google.com/sql/help/mysql-data-cache) in Cloud SQL documentation. */ dataCacheConfig?: Schema$DataCacheConfig; /** @@ -820,7 +820,7 @@ export namespace datamigration_v1 { provider?: string | null; } /** - * Data cache configurations. + * Data cache is an optional feature available for Cloud SQL for MySQL Enterprise Plus edition only. For more information on data cache, see [Data cache overview](https://cloud.google.com/sql/help/mysql-data-cache) in Cloud SQL documentation. */ export interface Schema$DataCacheConfig { /** From 0083bffd1753d6b5bc0217272911674cc935c025 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:26 +0000 Subject: [PATCH 11/28] feat(dataproc)!: update the API BREAKING CHANGE: This release has breaking changes. #### dataproc:v1 The following keys were deleted: - schemas.EncryptionConfig.properties.kmsKey.description - schemas.EncryptionConfig.properties.kmsKey.type The following keys were added: - schemas.OrderedJob.properties.flinkJob.$ref - schemas.OrderedJob.properties.flinkJob.description - schemas.SessionTemplate.properties.uuid.description - schemas.SessionTemplate.properties.uuid.readOnly - schemas.SessionTemplate.properties.uuid.type The following keys were changed: - schemas.ExecutionConfig.properties.ttl.description - schemas.FlinkJob.description - schemas.FlinkJob.properties.args.description - schemas.FlinkJob.properties.mainClass.description - schemas.FlinkJob.properties.properties.description - schemas.FlinkJob.properties.savepointUri.description - schemas.HadoopJob.properties.args.description - schemas.HadoopJob.properties.properties.description - schemas.HiveJob.properties.properties.description - schemas.Job.properties.driverControlFilesUri.description - schemas.Job.properties.jobUuid.description - schemas.Job.properties.labels.description - schemas.Job.properties.status.description - schemas.Job.properties.yarnApplications.description - schemas.JobScheduling.properties.maxFailuresPerHour.description - schemas.JobScheduling.properties.maxFailuresTotal.description - schemas.JobStatus.properties.substate.enumDescriptions - schemas.LoggingConfig.properties.driverLogLevels.description - schemas.PigJob.properties.properties.description - schemas.PySparkJob.properties.properties.description - schemas.SparkJob.properties.mainClass.description - schemas.SparkJob.properties.properties.description - schemas.SparkRJob.properties.properties.description - schemas.SparkSqlJob.properties.properties.description --- discovery/dataproc-v1.json | 69 ++++++++++++++++++++------------------ src/apis/dataproc/v1.ts | 58 +++++++++++++++++--------------- 2 files changed, 68 insertions(+), 59 deletions(-) diff --git a/discovery/dataproc-v1.json b/discovery/dataproc-v1.json index ea788bd822..05f4f34b4b 100644 --- a/discovery/dataproc-v1.json +++ b/discovery/dataproc-v1.json @@ -17,9 +17,9 @@ "documentationLink": "https://cloud.google.com/dataproc/", "endpoints": [ { - "endpointUrl": "https://dataproc.me-central2.rep.googleapis.com/", "location": "me-central2", - "description": "Regional Endpoint" + "description": "Regional Endpoint", + "endpointUrl": "https://dataproc.me-central2.rep.googleapis.com/" } ], "fullyEncodeReservedExpansion": true, @@ -3001,7 +3001,7 @@ } } }, - "revision": "20230908", + "revision": "20230919", "rootUrl": "https://dataproc.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -3838,10 +3838,6 @@ "gcePdKmsKeyName": { "description": "Optional. The Cloud KMS key name to use for PD disk encryption for all instances in the cluster.", "type": "string" - }, - "kmsKey": { - "description": "Optional. The Cloud KMS key name to use for encrypting customer core content and cluster PD disk for all instances in the cluster.", - "type": "string" } }, "type": "object" @@ -3917,7 +3913,7 @@ "type": "string" }, "ttl": { - "description": "Optional. The duration after which the workload will be terminated. When the workload exceeds this duration, it will be unconditionally terminated without waiting for ongoing work to finish. If ttl is not specified for a batch workload, the workload will be allowed to run until it exits naturally (or runs forever without exiting). If ttl is not specified for an interactive session, it defaults to 24h. If ttl is not specified for a batch that uses 2.1+ runtime version, it defaults to 4h. Minimum value is 10 minutes; maximum value is 14 days (see JSON representation of Duration (https://developers.google.com/protocol-buffers/docs/proto3#json)). If both ttl and idle_ttl are specified (for an interactive session), the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceeded, whichever occurs first.", + "description": "Optional. The duration after which the workload will be terminated, specified as the JSON representation for Duration (https://protobuf.dev/programming-guides/proto3/#json). When the workload exceeds this duration, it will be unconditionally terminated without waiting for ongoing work to finish. If ttl is not specified for a batch workload, the workload will be allowed to run until it exits naturally (or run forever without exiting). If ttl is not specified for an interactive session, it defaults to 24 hours. If ttl is not specified for a batch that uses 2.1+ runtime version, it defaults to 4 hours. Minimum value is 10 minutes; maximum value is 14 days. If both ttl and idle_ttl are specified (for an interactive session), the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceeded, whichever occurs first.", "format": "google-duration", "type": "string" } @@ -3948,11 +3944,11 @@ "type": "object" }, "FlinkJob": { - "description": "A Dataproc job for running Apache Flink (https://flink.apache.org/) applications on YARN.", + "description": "A Dataproc job for running Apache Flink applications on YARN.", "id": "FlinkJob", "properties": { "args": { - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision might occur that causes an incorrect job submission.", "items": { "type": "string" }, @@ -3970,7 +3966,7 @@ "description": "Optional. The runtime log config for job execution." }, "mainClass": { - "description": "The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.", + "description": "The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jarFileUris.", "type": "string" }, "mainJarFileUri": { @@ -3981,11 +3977,11 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names to values, used to configure Flink. Properties that conflict with values set by the Dataproc API may beoverwritten. Can include properties set in/etc/flink/conf/flink-defaults.conf and classes in user code.", + "description": "Optional. A mapping of property names to values, used to configure Flink. Properties that conflict with values set by the Dataproc API might beoverwritten. Can include properties set in/etc/flink/conf/flink-defaults.conf and classes in user code.", "type": "object" }, "savepointUri": { - "description": "Optional. HCFS URI of the savepoint which contains the last saved progress for this job", + "description": "Optional. HCFS URI of the savepoint, which contains the last saved progress for starting the current job.", "type": "string" } }, @@ -4263,7 +4259,7 @@ "type": "array" }, "args": { - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision might occur that causes an incorrect job submission.", "items": { "type": "string" }, @@ -4299,7 +4295,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.", + "description": "Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.", "type": "object" } }, @@ -4324,7 +4320,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.", + "description": "Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.", "type": "object" }, "queryFileUri": { @@ -4614,7 +4610,7 @@ "type": "boolean" }, "driverControlFilesUri": { - "description": "Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.", + "description": "Output only. If present, the location of miscellaneous control files which can be used as part of job setup and handling. If not present, control files might be placed in the same location as driver_output_uri.", "readOnly": true, "type": "string" }, @@ -4640,7 +4636,7 @@ "description": "Optional. Job is a Hive job." }, "jobUuid": { - "description": "Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time.", + "description": "Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that might be reused over time.", "readOnly": true, "type": "string" }, @@ -4648,7 +4644,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.", + "description": "Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values can be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.", "type": "object" }, "pigJob": { @@ -4689,7 +4685,7 @@ }, "status": { "$ref": "JobStatus", - "description": "Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields.", + "description": "Output only. The job status. Additional application-specific status information might be contained in the type_job and yarn_applications fields.", "readOnly": true }, "statusHistory": { @@ -4705,7 +4701,7 @@ "description": "Optional. Job is a Trino job." }, "yarnApplications": { - "description": "Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "description": "Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It might be changed before final release.", "items": { "$ref": "YarnApplication" }, @@ -4786,12 +4782,12 @@ "id": "JobScheduling", "properties": { "maxFailuresPerHour": { - "description": "Optional. Maximum number of times per hour a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed.A job may be reported as thrashing if the driver exits with a non-zero code four times within a 10-minute window.Maximum value is 10.Note: This restartable job option is not supported in Dataproc workflow templates (https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template).", + "description": "Optional. Maximum number of times per hour a driver can be restarted as a result of driver exiting with non-zero code before job is reported failed.A job might be reported as thrashing if the driver exits with a non-zero code four times within a 10-minute window.Maximum value is 10.Note: This restartable job option is not supported in Dataproc workflow templates (https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template).", "format": "int32", "type": "integer" }, "maxFailuresTotal": { - "description": "Optional. Maximum total number of times a driver may be restarted as a result of the driver exiting with a non-zero code. After the maximum number is reached, the job will be reported as failed.Maximum value is 240.Note: Currently, this restartable job option is not supported in Dataproc workflow templates (https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template).", + "description": "Optional. Maximum total number of times a driver can be restarted as a result of the driver exiting with a non-zero code. After the maximum number is reached, the job will be reported as failed.Maximum value is 240.Note: Currently, this restartable job option is not supported in Dataproc workflow templates (https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template).", "format": "int32", "type": "integer" } @@ -4853,8 +4849,8 @@ "enumDescriptions": [ "The job substate is unknown.", "The Job is submitted to the agent.Applies to RUNNING state.", - "The Job has been received and is awaiting execution (it may be waiting for a condition to be met). See the \"details\" field for the reason for the delay.Applies to RUNNING state.", - "The agent-reported status is out of date, which may be caused by a loss of communication between the agent and Dataproc. If the agent does not send a timely update, the job will fail.Applies to RUNNING state." + "The Job has been received and is awaiting execution (it might be waiting for a condition to be met). See the \"details\" field for the reason for the delay.Applies to RUNNING state.", + "The agent-reported status is out of date, which can be caused by a loss of communication between the agent and Dataproc. If the agent does not send a timely update, the job will fail.Applies to RUNNING state." ], "readOnly": true, "type": "string" @@ -5207,7 +5203,7 @@ ], "type": "string" }, - "description": "The per-package log levels for the driver. This may include \"root\" package name to configure rootLogger. Examples: - 'com.google = FATAL' - 'root = INFO' - 'org.apache = DEBUG'", + "description": "The per-package log levels for the driver. This can include \"root\" package name to configure rootLogger. Examples: - 'com.google = FATAL' - 'root = INFO' - 'org.apache = DEBUG'", "type": "object" } }, @@ -5526,6 +5522,10 @@ "description": "A job executed by the workflow.", "id": "OrderedJob", "properties": { + "flinkJob": { + "$ref": "FlinkJob", + "description": "Optional. Job is a Flink job." + }, "hadoopJob": { "$ref": "HadoopJob", "description": "Optional. Job is a Hadoop job." @@ -5640,7 +5640,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.", + "description": "Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.", "type": "object" }, "queryFileUri": { @@ -5827,7 +5827,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "description": "Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", "type": "object" }, "pythonFileUris": { @@ -6285,6 +6285,11 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "uuid": { + "description": "Output only. A session template UUID (Unique Universal Identifier). The service generates this value when it creates the session template.", + "readOnly": true, + "type": "string" } }, "type": "object" @@ -6469,7 +6474,7 @@ "description": "Optional. The runtime log config for job execution." }, "mainClass": { - "description": "The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris.", + "description": "The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in SparkJob.jar_file_uris.", "type": "string" }, "mainJarFileUri": { @@ -6480,7 +6485,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "description": "Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", "type": "object" } }, @@ -6555,7 +6560,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "description": "Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", "type": "object" } }, @@ -6605,7 +6610,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten.", + "description": "Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API might be overwritten.", "type": "object" }, "queryFileUri": { diff --git a/src/apis/dataproc/v1.ts b/src/apis/dataproc/v1.ts index df736331cb..24c75cc204 100644 --- a/src/apis/dataproc/v1.ts +++ b/src/apis/dataproc/v1.ts @@ -713,10 +713,6 @@ export namespace dataproc_v1 { * Optional. The Cloud KMS key name to use for PD disk encryption for all instances in the cluster. */ gcePdKmsKeyName?: string | null; - /** - * Optional. The Cloud KMS key name to use for encrypting customer core content and cluster PD disk for all instances in the cluster. - */ - kmsKey?: string | null; } /** * Endpoint config for this cluster @@ -777,7 +773,7 @@ export namespace dataproc_v1 { */ subnetworkUri?: string | null; /** - * Optional. The duration after which the workload will be terminated. When the workload exceeds this duration, it will be unconditionally terminated without waiting for ongoing work to finish. If ttl is not specified for a batch workload, the workload will be allowed to run until it exits naturally (or runs forever without exiting). If ttl is not specified for an interactive session, it defaults to 24h. If ttl is not specified for a batch that uses 2.1+ runtime version, it defaults to 4h. Minimum value is 10 minutes; maximum value is 14 days (see JSON representation of Duration (https://developers.google.com/protocol-buffers/docs/proto3#json)). If both ttl and idle_ttl are specified (for an interactive session), the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceeded, whichever occurs first. + * Optional. The duration after which the workload will be terminated, specified as the JSON representation for Duration (https://protobuf.dev/programming-guides/proto3/#json). When the workload exceeds this duration, it will be unconditionally terminated without waiting for ongoing work to finish. If ttl is not specified for a batch workload, the workload will be allowed to run until it exits naturally (or run forever without exiting). If ttl is not specified for an interactive session, it defaults to 24 hours. If ttl is not specified for a batch that uses 2.1+ runtime version, it defaults to 4 hours. Minimum value is 10 minutes; maximum value is 14 days. If both ttl and idle_ttl are specified (for an interactive session), the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceeded, whichever occurs first. */ ttl?: string | null; } @@ -803,11 +799,11 @@ export namespace dataproc_v1 { title?: string | null; } /** - * A Dataproc job for running Apache Flink (https://flink.apache.org/) applications on YARN. + * A Dataproc job for running Apache Flink applications on YARN. */ export interface Schema$FlinkJob { /** - * Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission. + * Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision might occur that causes an incorrect job submission. */ args?: string[] | null; /** @@ -819,7 +815,7 @@ export namespace dataproc_v1 { */ loggingConfig?: Schema$LoggingConfig; /** - * The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris. + * The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jarFileUris. */ mainClass?: string | null; /** @@ -827,11 +823,11 @@ export namespace dataproc_v1 { */ mainJarFileUri?: string | null; /** - * Optional. A mapping of property names to values, used to configure Flink. Properties that conflict with values set by the Dataproc API may beoverwritten. Can include properties set in/etc/flink/conf/flink-defaults.conf and classes in user code. + * Optional. A mapping of property names to values, used to configure Flink. Properties that conflict with values set by the Dataproc API might beoverwritten. Can include properties set in/etc/flink/conf/flink-defaults.conf and classes in user code. */ properties?: {[key: string]: string} | null; /** - * Optional. HCFS URI of the savepoint which contains the last saved progress for this job + * Optional. HCFS URI of the savepoint, which contains the last saved progress for starting the current job. */ savepointUri?: string | null; } @@ -1033,7 +1029,7 @@ export namespace dataproc_v1 { */ archiveUris?: string[] | null; /** - * Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission. + * Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision might occur that causes an incorrect job submission. */ args?: string[] | null; /** @@ -1057,7 +1053,7 @@ export namespace dataproc_v1 { */ mainJarFileUri?: string | null; /** - * Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/x-site and classes in user code. + * Optional. A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/hadoop/conf/x-site and classes in user code. */ properties?: {[key: string]: string} | null; } @@ -1074,7 +1070,7 @@ export namespace dataproc_v1 { */ jarFileUris?: string[] | null; /** - * Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/x-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code. + * Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/hadoop/conf/x-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code. */ properties?: {[key: string]: string} | null; /** @@ -1285,7 +1281,7 @@ export namespace dataproc_v1 { */ done?: boolean | null; /** - * Output only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri. + * Output only. If present, the location of miscellaneous control files which can be used as part of job setup and handling. If not present, control files might be placed in the same location as driver_output_uri. */ driverControlFilesUri?: string | null; /** @@ -1309,11 +1305,11 @@ export namespace dataproc_v1 { */ hiveJob?: Schema$HiveJob; /** - * Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that may be reused over time. + * Output only. A UUID that uniquely identifies a job within the project over time. This is in contrast to a user-settable reference.job_id that might be reused over time. */ jobUuid?: string | null; /** - * Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job. + * Optional. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values can be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job. */ labels?: {[key: string]: string} | null; /** @@ -1353,7 +1349,7 @@ export namespace dataproc_v1 { */ sparkSqlJob?: Schema$SparkSqlJob; /** - * Output only. The job status. Additional application-specific status information may be contained in the type_job and yarn_applications fields. + * Output only. The job status. Additional application-specific status information might be contained in the type_job and yarn_applications fields. */ status?: Schema$JobStatus; /** @@ -1365,7 +1361,7 @@ export namespace dataproc_v1 { */ trinoJob?: Schema$TrinoJob; /** - * Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release. + * Output only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It might be changed before final release. */ yarnApplications?: Schema$YarnApplication[]; } @@ -1425,11 +1421,11 @@ export namespace dataproc_v1 { */ export interface Schema$JobScheduling { /** - * Optional. Maximum number of times per hour a driver may be restarted as a result of driver exiting with non-zero code before job is reported failed.A job may be reported as thrashing if the driver exits with a non-zero code four times within a 10-minute window.Maximum value is 10.Note: This restartable job option is not supported in Dataproc workflow templates (https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template). + * Optional. Maximum number of times per hour a driver can be restarted as a result of driver exiting with non-zero code before job is reported failed.A job might be reported as thrashing if the driver exits with a non-zero code four times within a 10-minute window.Maximum value is 10.Note: This restartable job option is not supported in Dataproc workflow templates (https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template). */ maxFailuresPerHour?: number | null; /** - * Optional. Maximum total number of times a driver may be restarted as a result of the driver exiting with a non-zero code. After the maximum number is reached, the job will be reported as failed.Maximum value is 240.Note: Currently, this restartable job option is not supported in Dataproc workflow templates (https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template). + * Optional. Maximum total number of times a driver can be restarted as a result of the driver exiting with a non-zero code. After the maximum number is reached, the job will be reported as failed.Maximum value is 240.Note: Currently, this restartable job option is not supported in Dataproc workflow templates (https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template). */ maxFailuresTotal?: number | null; } @@ -1692,7 +1688,7 @@ export namespace dataproc_v1 { */ export interface Schema$LoggingConfig { /** - * The per-package log levels for the driver. This may include "root" package name to configure rootLogger. Examples: - 'com.google = FATAL' - 'root = INFO' - 'org.apache = DEBUG' + * The per-package log levels for the driver. This can include "root" package name to configure rootLogger. Examples: - 'com.google = FATAL' - 'root = INFO' - 'org.apache = DEBUG' */ driverLogLevels?: {[key: string]: string} | null; } @@ -1891,6 +1887,10 @@ export namespace dataproc_v1 { * A job executed by the workflow. */ export interface Schema$OrderedJob { + /** + * Optional. Job is a Flink job. + */ + flinkJob?: Schema$FlinkJob; /** * Optional. Job is a Hadoop job. */ @@ -1987,7 +1987,7 @@ export namespace dataproc_v1 { */ loggingConfig?: Schema$LoggingConfig; /** - * Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/x-site.xml, /etc/pig/conf/pig.properties, and classes in user code. + * Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/hadoop/conf/x-site.xml, /etc/pig/conf/pig.properties, and classes in user code. */ properties?: {[key: string]: string} | null; /** @@ -2120,7 +2120,7 @@ export namespace dataproc_v1 { */ mainPythonFileUri?: string | null; /** - * Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code. + * Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code. */ properties?: {[key: string]: string} | null; /** @@ -2432,6 +2432,10 @@ export namespace dataproc_v1 { * Output only. The time the template was last updated. */ updateTime?: string | null; + /** + * Output only. A session template UUID (Unique Universal Identifier). The service generates this value when it creates the session template. + */ + uuid?: string | null; } /** * Request message for SetIamPolicy method. @@ -2539,7 +2543,7 @@ export namespace dataproc_v1 { */ loggingConfig?: Schema$LoggingConfig; /** - * The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris. + * The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in SparkJob.jar_file_uris. */ mainClass?: string | null; /** @@ -2547,7 +2551,7 @@ export namespace dataproc_v1 { */ mainJarFileUri?: string | null; /** - * Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code. + * Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code. */ properties?: {[key: string]: string} | null; } @@ -2597,7 +2601,7 @@ export namespace dataproc_v1 { */ mainRFileUri?: string | null; /** - * Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code. + * Optional. A mapping of property names to values, used to configure SparkR. Properties that conflict with values set by the Dataproc API might be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code. */ properties?: {[key: string]: string} | null; } @@ -2631,7 +2635,7 @@ export namespace dataproc_v1 { */ loggingConfig?: Schema$LoggingConfig; /** - * Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API may be overwritten. + * Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Dataproc API might be overwritten. */ properties?: {[key: string]: string} | null; /** From ee73208fb72b2fa7503ce977a35fdc616c9c1868 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:26 +0000 Subject: [PATCH 12/28] fix(deploymentmanager): update the API #### deploymentmanager:alpha The following keys were changed: - resources.compositeTypes.methods.list.parameters.filter.description - resources.deployments.methods.list.parameters.filter.description - resources.manifests.methods.list.parameters.filter.description - resources.operations.methods.list.parameters.filter.description - resources.resources.methods.list.parameters.filter.description - resources.typeProviders.methods.list.parameters.filter.description - resources.typeProviders.methods.listTypes.parameters.filter.description - resources.types.methods.list.parameters.filter.description #### deploymentmanager:v2beta The following keys were changed: - resources.compositeTypes.methods.list.parameters.filter.description - resources.deployments.methods.list.parameters.filter.description - resources.manifests.methods.list.parameters.filter.description - resources.operations.methods.list.parameters.filter.description - resources.resources.methods.list.parameters.filter.description - resources.typeProviders.methods.list.parameters.filter.description - resources.typeProviders.methods.listTypes.parameters.filter.description - resources.types.methods.list.parameters.filter.description --- discovery/deploymentmanager-alpha.json | 18 +++++++++--------- discovery/deploymentmanager-v2beta.json | 18 +++++++++--------- src/apis/deploymentmanager/alpha.ts | 16 ++++++++-------- src/apis/deploymentmanager/v2beta.ts | 16 ++++++++-------- 4 files changed, 34 insertions(+), 34 deletions(-) diff --git a/discovery/deploymentmanager-alpha.json b/discovery/deploymentmanager-alpha.json index f66031ca99..c17ac488bc 100644 --- a/discovery/deploymentmanager-alpha.json +++ b/discovery/deploymentmanager-alpha.json @@ -224,7 +224,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -563,7 +563,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -927,7 +927,7 @@ "type": "string" }, "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1017,7 +1017,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1123,7 +1123,7 @@ "type": "string" }, "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1320,7 +1320,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1372,7 +1372,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1544,7 +1544,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1588,7 +1588,7 @@ } } }, - "revision": "20230905", + "revision": "20230921", "rootUrl": "https://deploymentmanager.googleapis.com/", "schemas": { "AsyncOptions": { diff --git a/discovery/deploymentmanager-v2beta.json b/discovery/deploymentmanager-v2beta.json index efa4870946..6c2df6fe38 100644 --- a/discovery/deploymentmanager-v2beta.json +++ b/discovery/deploymentmanager-v2beta.json @@ -224,7 +224,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -563,7 +563,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -927,7 +927,7 @@ "type": "string" }, "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1017,7 +1017,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1123,7 +1123,7 @@ "type": "string" }, "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1320,7 +1320,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1372,7 +1372,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1508,7 +1508,7 @@ ], "parameters": { "filter": { - "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`.", + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", "type": "string" }, @@ -1552,7 +1552,7 @@ } } }, - "revision": "20230905", + "revision": "20230921", "rootUrl": "https://deploymentmanager.googleapis.com/", "schemas": { "AsyncOptions": { diff --git a/src/apis/deploymentmanager/alpha.ts b/src/apis/deploymentmanager/alpha.ts index 1c5f1b462e..490a957f83 100644 --- a/src/apis/deploymentmanager/alpha.ts +++ b/src/apis/deploymentmanager/alpha.ts @@ -1841,7 +1841,7 @@ export namespace deploymentmanager_alpha { export interface Params$Resource$Compositetypes$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -2956,7 +2956,7 @@ export namespace deploymentmanager_alpha { } export interface Params$Resource$Deployments$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -3286,7 +3286,7 @@ export namespace deploymentmanager_alpha { */ deployment?: string; /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -3505,7 +3505,7 @@ export namespace deploymentmanager_alpha { } export interface Params$Resource$Operations$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -3732,7 +3732,7 @@ export namespace deploymentmanager_alpha { */ deployment?: string; /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -4532,7 +4532,7 @@ export namespace deploymentmanager_alpha { export interface Params$Resource$Typeproviders$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -4555,7 +4555,7 @@ export namespace deploymentmanager_alpha { export interface Params$Resource$Typeproviders$Listtypes extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -4808,7 +4808,7 @@ export namespace deploymentmanager_alpha { } export interface Params$Resource$Types$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** diff --git a/src/apis/deploymentmanager/v2beta.ts b/src/apis/deploymentmanager/v2beta.ts index 046ef47215..9b9d98d37a 100644 --- a/src/apis/deploymentmanager/v2beta.ts +++ b/src/apis/deploymentmanager/v2beta.ts @@ -1771,7 +1771,7 @@ export namespace deploymentmanager_v2beta { export interface Params$Resource$Compositetypes$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -2886,7 +2886,7 @@ export namespace deploymentmanager_v2beta { } export interface Params$Resource$Deployments$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -3216,7 +3216,7 @@ export namespace deploymentmanager_v2beta { */ deployment?: string; /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -3435,7 +3435,7 @@ export namespace deploymentmanager_v2beta { } export interface Params$Resource$Operations$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -3662,7 +3662,7 @@ export namespace deploymentmanager_v2beta { */ deployment?: string; /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -4462,7 +4462,7 @@ export namespace deploymentmanager_v2beta { export interface Params$Resource$Typeproviders$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -4485,7 +4485,7 @@ export namespace deploymentmanager_v2beta { export interface Params$Resource$Typeproviders$Listtypes extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** @@ -4641,7 +4641,7 @@ export namespace deploymentmanager_v2beta { export interface Params$Resource$Types$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:` operator can be used with string fields to match substrings. For non-string fields it is equivalent to the `=` operator. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. + * A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions. */ filter?: string; /** From 2c706958e5f08936b0910432a8fd9afb6411bd28 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:26 +0000 Subject: [PATCH 13/28] fix(dlp): update the API #### dlp:v2 The following keys were changed: - schemas.GooglePrivacyDlpV2Error.properties.timestamps.description --- discovery/dlp-v2.json | 4 ++-- src/apis/dlp/v2.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/discovery/dlp-v2.json b/discovery/dlp-v2.json index ac5999fa32..f228622152 100644 --- a/discovery/dlp-v2.json +++ b/discovery/dlp-v2.json @@ -3412,7 +3412,7 @@ } } }, - "revision": "20230910", + "revision": "20230917", "rootUrl": "https://dlp.googleapis.com/", "schemas": { "GooglePrivacyDlpV2Action": { @@ -5278,7 +5278,7 @@ "description": "Detailed error codes and messages." }, "timestamps": { - "description": "The times the error occurred.", + "description": "The times the error occurred. List includes the oldest timestamp, and the last 9 ones.", "items": { "format": "google-datetime", "type": "string" diff --git a/src/apis/dlp/v2.ts b/src/apis/dlp/v2.ts index 4ea7772ceb..bbd0c854a2 100644 --- a/src/apis/dlp/v2.ts +++ b/src/apis/dlp/v2.ts @@ -1400,7 +1400,7 @@ export namespace dlp_v2 { */ details?: Schema$GoogleRpcStatus; /** - * The times the error occurred. + * The times the error occurred. List includes the oldest timestamp, and the last 9 ones. */ timestamps?: string[] | null; } From a1418ec95a86c05c7dbe0b6b403ebfcd15afba25 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:27 +0000 Subject: [PATCH 14/28] feat(eventarc): update the API #### eventarc:v1 The following keys were added: - schemas.Destination.properties.httpEndpoint.$ref - schemas.Destination.properties.httpEndpoint.description - schemas.Destination.properties.networkConfig.$ref - schemas.Destination.properties.networkConfig.description - schemas.HttpEndpoint.description - schemas.HttpEndpoint.id - schemas.HttpEndpoint.properties.forwardDnsRequests.description - schemas.HttpEndpoint.properties.forwardDnsRequests.type - schemas.HttpEndpoint.properties.uri.description - schemas.HttpEndpoint.properties.uri.type - schemas.HttpEndpoint.type - schemas.NetworkConfig.description - schemas.NetworkConfig.id - schemas.NetworkConfig.properties.networkAttachment.description - schemas.NetworkConfig.properties.networkAttachment.type - schemas.NetworkConfig.type --- discovery/eventarc-v1.json | 36 +++++++++++++++++++++++++++++++++++- src/apis/eventarc/v1.ts | 30 ++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+), 1 deletion(-) diff --git a/discovery/eventarc-v1.json b/discovery/eventarc-v1.json index 65b86910d8..12a4347721 100644 --- a/discovery/eventarc-v1.json +++ b/discovery/eventarc-v1.json @@ -1197,7 +1197,7 @@ } } }, - "revision": "20230811", + "revision": "20230918", "rootUrl": "https://eventarc.googleapis.com/", "schemas": { "AuditConfig": { @@ -1404,6 +1404,14 @@ "$ref": "GKE", "description": "A GKE service capable of receiving events. The service should be running in the same project as the trigger." }, + "httpEndpoint": { + "$ref": "HttpEndpoint", + "description": "An HTTP endpoint destination described by an URI." + }, + "networkConfig": { + "$ref": "NetworkConfig", + "description": "Optional. Network config is used to configure how Eventarc resolves and connect to a destination. This should only be used with HttpEndpoint destination type." + }, "workflow": { "description": "The resource name of the Workflow whose Executions are triggered by the events. The Workflow resource should be deployed in the same project as the trigger. Format: `projects/{project}/locations/{location}/workflows/{workflow}`", "type": "string" @@ -1650,6 +1658,21 @@ }, "type": "object" }, + "HttpEndpoint": { + "description": "Represents a HTTP endpoint destination.", + "id": "HttpEndpoint", + "properties": { + "forwardDnsRequests": { + "description": "Optional. Forwards DNS requests to the VPC specified by network config to resolve the HTTP endpoint. Default to false. If set to true, Eventarc will create a peering zone to the consumer VPC and forward DNS requests. See: https://cloud.google.com/dns/docs/zones/zones-overview#peering_zones Enable this if the URI uses an internal DNS name or a private Cloud DNS zone.", + "type": "boolean" + }, + "uri": { + "description": "Required. The URI of the HTTP enpdoint. The value must be a RFC2396 URI string. Examples: `http://10.10.10.8:80/route`, `http://svc.us-central1.p.local:8080/`. Only HTTP and HTTPS protocols are supported. The host can be either a static IP addressable from the VPC specified by the network config, or an internal DNS hostname of the service resolvable via Cloud DNS.", + "type": "string" + } + }, + "type": "object" + }, "ListChannelConnectionsResponse": { "description": "The response message for the `ListChannelConnections` method.", "id": "ListChannelConnectionsResponse", @@ -1802,6 +1825,17 @@ }, "type": "object" }, + "NetworkConfig": { + "description": "Represents a network config to be used for destination resolution and connectivity.", + "id": "NetworkConfig", + "properties": { + "networkAttachment": { + "description": "Required. Name of the NetworkAttachment that allows access to the destination VPC. Format: `projects/{PROJECT_ID}/regions/{REGION}/networkAttachments/{NETWORK_ATTACHMENT_NAME}`", + "type": "string" + } + }, + "type": "object" + }, "OperationMetadata": { "description": "Represents the metadata of the long-running operation.", "id": "OperationMetadata", diff --git a/src/apis/eventarc/v1.ts b/src/apis/eventarc/v1.ts index c8c022cb61..17eb525edc 100644 --- a/src/apis/eventarc/v1.ts +++ b/src/apis/eventarc/v1.ts @@ -270,6 +270,14 @@ export namespace eventarc_v1 { * A GKE service capable of receiving events. The service should be running in the same project as the trigger. */ gke?: Schema$GKE; + /** + * An HTTP endpoint destination described by an URI. + */ + httpEndpoint?: Schema$HttpEndpoint; + /** + * Optional. Network config is used to configure how Eventarc resolves and connect to a destination. This should only be used with HttpEndpoint destination type. + */ + networkConfig?: Schema$NetworkConfig; /** * The resource name of the Workflow whose Executions are triggered by the events. The Workflow resource should be deployed in the same project as the trigger. Format: `projects/{project\}/locations/{location\}/workflows/{workflow\}` */ @@ -460,6 +468,19 @@ export namespace eventarc_v1 { */ message?: string | null; } + /** + * Represents a HTTP endpoint destination. + */ + export interface Schema$HttpEndpoint { + /** + * Optional. Forwards DNS requests to the VPC specified by network config to resolve the HTTP endpoint. Default to false. If set to true, Eventarc will create a peering zone to the consumer VPC and forward DNS requests. See: https://cloud.google.com/dns/docs/zones/zones-overview#peering_zones Enable this if the URI uses an internal DNS name or a private Cloud DNS zone. + */ + forwardDnsRequests?: boolean | null; + /** + * Required. The URI of the HTTP enpdoint. The value must be a RFC2396 URI string. Examples: `http://10.10.10.8:80/route`, `http://svc.us-central1.p.local:8080/`. Only HTTP and HTTPS protocols are supported. The host can be either a static IP addressable from the VPC specified by the network config, or an internal DNS hostname of the service resolvable via Cloud DNS. + */ + uri?: string | null; + } /** * The response message for the `ListChannelConnections` method. */ @@ -566,6 +587,15 @@ export namespace eventarc_v1 { */ name?: string | null; } + /** + * Represents a network config to be used for destination resolution and connectivity. + */ + export interface Schema$NetworkConfig { + /** + * Required. Name of the NetworkAttachment that allows access to the destination VPC. Format: `projects/{PROJECT_ID\}/regions/{REGION\}/networkAttachments/{NETWORK_ATTACHMENT_NAME\}` + */ + networkAttachment?: string | null; + } /** * Represents the metadata of the long-running operation. */ From 9e6d54d60a8fe89b2021c9a9fdec5b6e375a6b64 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:27 +0000 Subject: [PATCH 15/28] fix(firestore): update the API #### firestore:v1 The following keys were changed: - schemas.GoogleFirestoreAdminV1Database.properties.locationId.description --- discovery/firestore-v1.json | 4 ++-- src/apis/firestore/v1.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/discovery/firestore-v1.json b/discovery/firestore-v1.json index c4b467b12a..e1c26f5dec 100644 --- a/discovery/firestore-v1.json +++ b/discovery/firestore-v1.json @@ -1672,7 +1672,7 @@ } } }, - "revision": "20230905", + "revision": "20230918", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -2471,7 +2471,7 @@ "type": "string" }, "locationId": { - "description": "The location of the database. Available databases are listed at https://cloud.google.com/firestore/docs/locations.", + "description": "The location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations.", "type": "string" }, "name": { diff --git a/src/apis/firestore/v1.ts b/src/apis/firestore/v1.ts index ade67eb1d9..87cad838c5 100644 --- a/src/apis/firestore/v1.ts +++ b/src/apis/firestore/v1.ts @@ -662,7 +662,7 @@ export namespace firestore_v1 { */ keyPrefix?: string | null; /** - * The location of the database. Available databases are listed at https://cloud.google.com/firestore/docs/locations. + * The location of the database. Available locations are listed at https://cloud.google.com/firestore/docs/locations. */ locationId?: string | null; /** From e3683aa1c1382af5530d7e20f5f16eb06000e335 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:27 +0000 Subject: [PATCH 16/28] feat(gkehub): update the API #### gkehub:v1alpha The following keys were added: - schemas.CommonFleetDefaultMemberConfigSpec.properties.configmanagement.$ref - schemas.CommonFleetDefaultMemberConfigSpec.properties.configmanagement.description #### gkehub:v1beta The following keys were added: - schemas.CommonFleetDefaultMemberConfigSpec.properties.configmanagement.$ref - schemas.CommonFleetDefaultMemberConfigSpec.properties.configmanagement.description #### gkehub:v1 The following keys were added: - schemas.CommonFleetDefaultMemberConfigSpec.properties.configmanagement.$ref - schemas.CommonFleetDefaultMemberConfigSpec.properties.configmanagement.description --- discovery/gkehub-v1.json | 9 +++++++-- discovery/gkehub-v1alpha.json | 6 +++++- discovery/gkehub-v1beta.json | 6 +++++- src/apis/gkehub/v1.ts | 7 ++++++- src/apis/gkehub/v1alpha.ts | 4 ++++ src/apis/gkehub/v1beta.ts | 4 ++++ 6 files changed, 31 insertions(+), 5 deletions(-) diff --git a/discovery/gkehub-v1.json b/discovery/gkehub-v1.json index 76ef323b47..8f935ffbeb 100644 --- a/discovery/gkehub-v1.json +++ b/discovery/gkehub-v1.json @@ -1834,7 +1834,7 @@ } } }, - "revision": "20230907", + "revision": "20230914", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -2009,7 +2009,12 @@ "CommonFleetDefaultMemberConfigSpec": { "description": "CommonFleetDefaultMemberConfigSpec contains default configuration information for memberships of a fleet", "id": "CommonFleetDefaultMemberConfigSpec", - "properties": {}, + "properties": { + "configmanagement": { + "$ref": "ConfigManagementMembershipSpec", + "description": "Config Management-specific spec." + } + }, "type": "object" }, "ConfigManagementConfigSync": { diff --git a/discovery/gkehub-v1alpha.json b/discovery/gkehub-v1alpha.json index 1f51f81404..810a1af791 100644 --- a/discovery/gkehub-v1alpha.json +++ b/discovery/gkehub-v1alpha.json @@ -2414,7 +2414,7 @@ } } }, - "revision": "20230907", + "revision": "20230914", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AnthosObservabilityFeatureSpec": { @@ -2991,6 +2991,10 @@ "description": "CommonFleetDefaultMemberConfigSpec contains default configuration information for memberships of a fleet", "id": "CommonFleetDefaultMemberConfigSpec", "properties": { + "configmanagement": { + "$ref": "ConfigManagementMembershipSpec", + "description": "Config Management-specific spec." + }, "identityservice": { "$ref": "IdentityServiceMembershipSpec", "description": "Identity Service-specific spec." diff --git a/discovery/gkehub-v1beta.json b/discovery/gkehub-v1beta.json index 434bf89545..b6a93eba68 100644 --- a/discovery/gkehub-v1beta.json +++ b/discovery/gkehub-v1beta.json @@ -2100,7 +2100,7 @@ } } }, - "revision": "20230907", + "revision": "20230914", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AnthosObservabilityFeatureSpec": { @@ -2273,6 +2273,10 @@ "description": "CommonFleetDefaultMemberConfigSpec contains default configuration information for memberships of a fleet", "id": "CommonFleetDefaultMemberConfigSpec", "properties": { + "configmanagement": { + "$ref": "ConfigManagementMembershipSpec", + "description": "Config Management-specific spec." + }, "identityservice": { "$ref": "IdentityServiceMembershipSpec", "description": "Identity Service-specific spec." diff --git a/src/apis/gkehub/v1.ts b/src/apis/gkehub/v1.ts index b5e9ce11d9..d4545e3bdb 100644 --- a/src/apis/gkehub/v1.ts +++ b/src/apis/gkehub/v1.ts @@ -253,7 +253,12 @@ export namespace gkehub_v1 { /** * CommonFleetDefaultMemberConfigSpec contains default configuration information for memberships of a fleet */ - export interface Schema$CommonFleetDefaultMemberConfigSpec {} + export interface Schema$CommonFleetDefaultMemberConfigSpec { + /** + * Config Management-specific spec. + */ + configmanagement?: Schema$ConfigManagementMembershipSpec; + } /** * Configuration for Config Sync */ diff --git a/src/apis/gkehub/v1alpha.ts b/src/apis/gkehub/v1alpha.ts index 2d3151cee7..d4f2971af5 100644 --- a/src/apis/gkehub/v1alpha.ts +++ b/src/apis/gkehub/v1alpha.ts @@ -544,6 +544,10 @@ export namespace gkehub_v1alpha { * CommonFleetDefaultMemberConfigSpec contains default configuration information for memberships of a fleet */ export interface Schema$CommonFleetDefaultMemberConfigSpec { + /** + * Config Management-specific spec. + */ + configmanagement?: Schema$ConfigManagementMembershipSpec; /** * Identity Service-specific spec. */ diff --git a/src/apis/gkehub/v1beta.ts b/src/apis/gkehub/v1beta.ts index b0d5bb0f59..b91f6ccaae 100644 --- a/src/apis/gkehub/v1beta.ts +++ b/src/apis/gkehub/v1beta.ts @@ -254,6 +254,10 @@ export namespace gkehub_v1beta { * CommonFleetDefaultMemberConfigSpec contains default configuration information for memberships of a fleet */ export interface Schema$CommonFleetDefaultMemberConfigSpec { + /** + * Config Management-specific spec. + */ + configmanagement?: Schema$ConfigManagementMembershipSpec; /** * Identity Service-specific spec. */ From 5a350b29c3ab84ebabc29cb2c43fb32c6dc92b26 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:27 +0000 Subject: [PATCH 17/28] fix(gkeonprem): update the API #### gkeonprem:v1 The following keys were changed: - schemas.VmwareCluster.properties.vcenter.description --- discovery/gkeonprem-v1.json | 4 ++-- src/apis/gkeonprem/v1.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/discovery/gkeonprem-v1.json b/discovery/gkeonprem-v1.json index e852de1241..63822e03ff 100644 --- a/discovery/gkeonprem-v1.json +++ b/discovery/gkeonprem-v1.json @@ -2996,7 +2996,7 @@ } } }, - "revision": "20230906", + "revision": "20230918", "rootUrl": "https://gkeonprem.googleapis.com/", "schemas": { "Authorization": { @@ -6003,7 +6003,7 @@ }, "vcenter": { "$ref": "VmwareVCenterConfig", - "description": "VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster." + "description": "VmwareVCenterConfig specifies vCenter config for the user cluster. If unspecified, it is inherited from the admin cluster." }, "vmTrackingEnabled": { "description": "Enable VM tracking.", diff --git a/src/apis/gkeonprem/v1.ts b/src/apis/gkeonprem/v1.ts index ee52950298..9b01c0841b 100644 --- a/src/apis/gkeonprem/v1.ts +++ b/src/apis/gkeonprem/v1.ts @@ -2304,7 +2304,7 @@ export namespace gkeonprem_v1 { */ validationCheck?: Schema$ValidationCheck; /** - * VmwareVCenterConfig specifies vCenter config for the user cluster. Inherited from the admin cluster. + * VmwareVCenterConfig specifies vCenter config for the user cluster. If unspecified, it is inherited from the admin cluster. */ vcenter?: Schema$VmwareVCenterConfig; /** From a449d5e2a20b9af24ace5ed04e4b5278a8ec6a2f Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:27 +0000 Subject: [PATCH 18/28] feat(iam)!: update the API BREAKING CHANGE: This release has breaking changes. #### iam:v1 The following keys were deleted: - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.description - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.flatPath - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.httpMethod - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.id - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.parameterOrder - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.parameters.name.description - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.parameters.name.location - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.parameters.name.pattern - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.parameters.name.required - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.parameters.name.type - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.path - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.response.$ref - resources.projects.resources.locations.resources.workloadIdentityPools.resources.namespaces.resources.workloadSources.resources.operations.methods.get.scopes The following keys were added: - schemas.GoogleIamAdminV1WorkforcePoolProviderOidc.properties.jwksJson.description - schemas.GoogleIamAdminV1WorkforcePoolProviderOidc.properties.jwksJson.type - schemas.OperationMetadata.description - schemas.OperationMetadata.id - schemas.OperationMetadata.properties.apiVersion.description - schemas.OperationMetadata.properties.apiVersion.readOnly - schemas.OperationMetadata.properties.apiVersion.type - schemas.OperationMetadata.properties.cancelRequested.description - schemas.OperationMetadata.properties.cancelRequested.readOnly - schemas.OperationMetadata.properties.cancelRequested.type - schemas.OperationMetadata.properties.createTime.description - schemas.OperationMetadata.properties.createTime.format - schemas.OperationMetadata.properties.createTime.readOnly - schemas.OperationMetadata.properties.createTime.type - schemas.OperationMetadata.properties.endTime.description - schemas.OperationMetadata.properties.endTime.format - schemas.OperationMetadata.properties.endTime.readOnly - schemas.OperationMetadata.properties.endTime.type - schemas.OperationMetadata.properties.statusDetail.description - schemas.OperationMetadata.properties.statusDetail.readOnly - schemas.OperationMetadata.properties.statusDetail.type - schemas.OperationMetadata.properties.target.description - schemas.OperationMetadata.properties.target.readOnly - schemas.OperationMetadata.properties.target.type - schemas.OperationMetadata.properties.verb.description - schemas.OperationMetadata.properties.verb.readOnly - schemas.OperationMetadata.properties.verb.type - schemas.OperationMetadata.type The following keys were changed: - schemas.GoogleIamAdminV1WorkforcePoolProviderSaml.properties.idpMetadataXml.description - schemas.Saml.properties.idpMetadataXml.description - schemas.WorkloadIdentityPool.description - schemas.WorkloadIdentityPoolProvider.properties.attributeMapping.description #### iam:v2 The following keys were added: - schemas.GoogleCloudCommonOperationMetadata.description - schemas.GoogleCloudCommonOperationMetadata.id - schemas.GoogleCloudCommonOperationMetadata.properties.apiVersion.description - schemas.GoogleCloudCommonOperationMetadata.properties.apiVersion.readOnly - schemas.GoogleCloudCommonOperationMetadata.properties.apiVersion.type - schemas.GoogleCloudCommonOperationMetadata.properties.cancelRequested.description - schemas.GoogleCloudCommonOperationMetadata.properties.cancelRequested.readOnly - schemas.GoogleCloudCommonOperationMetadata.properties.cancelRequested.type - schemas.GoogleCloudCommonOperationMetadata.properties.createTime.description - schemas.GoogleCloudCommonOperationMetadata.properties.createTime.format - schemas.GoogleCloudCommonOperationMetadata.properties.createTime.readOnly - schemas.GoogleCloudCommonOperationMetadata.properties.createTime.type - schemas.GoogleCloudCommonOperationMetadata.properties.endTime.description - schemas.GoogleCloudCommonOperationMetadata.properties.endTime.format - schemas.GoogleCloudCommonOperationMetadata.properties.endTime.readOnly - schemas.GoogleCloudCommonOperationMetadata.properties.endTime.type - schemas.GoogleCloudCommonOperationMetadata.properties.statusDetail.description - schemas.GoogleCloudCommonOperationMetadata.properties.statusDetail.readOnly - schemas.GoogleCloudCommonOperationMetadata.properties.statusDetail.type - schemas.GoogleCloudCommonOperationMetadata.properties.target.description - schemas.GoogleCloudCommonOperationMetadata.properties.target.readOnly - schemas.GoogleCloudCommonOperationMetadata.properties.target.type - schemas.GoogleCloudCommonOperationMetadata.properties.verb.description - schemas.GoogleCloudCommonOperationMetadata.properties.verb.readOnly - schemas.GoogleCloudCommonOperationMetadata.properties.verb.type - schemas.GoogleCloudCommonOperationMetadata.type --- discovery/iam-v1.json | 91 ++++++++++++++---------- discovery/iam-v2.json | 46 +++++++++++- src/apis/iam/v1.ts | 162 +++++++++++------------------------------- src/apis/iam/v2.ts | 33 +++++++++ 4 files changed, 172 insertions(+), 160 deletions(-) diff --git a/discovery/iam-v1.json b/discovery/iam-v1.json index c1b78768f6..90248297e0 100644 --- a/discovery/iam-v1.json +++ b/discovery/iam-v1.json @@ -1475,39 +1475,6 @@ ] } } - }, - "workloadSources": { - "resources": { - "operations": { - "methods": { - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/namespaces/{namespacesId}/workloadSources/{workloadSourcesId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "iam.projects.locations.workloadIdentityPools.namespaces.workloadSources.operations.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+/namespaces/[^/]+/workloadSources/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}", - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } } } }, @@ -2883,7 +2850,7 @@ } } }, - "revision": "20230803", + "revision": "20230914", "rootUrl": "https://iam.googleapis.com/", "schemas": { "AdminAuditData": { @@ -3190,6 +3157,10 @@ "description": "Required. The OIDC issuer URI. Must be a valid URI using the 'https' scheme.", "type": "string" }, + "jwksJson": { + "description": "OIDC JWKs in JSON String format. For details on the definition of a JWK, see https://tools.ietf.org/html/rfc7517. If not set, the `jwks_uri` from the discovery document(fetched from the .well-known path of the `issuer_uri`) will be used. Currently, RSA and EC asymmetric keys are supported. The JWK must use following format and include only the following fields: { \"keys\": [ { \"kty\": \"RSA/EC\", \"alg\": \"\", \"use\": \"sig\", \"kid\": \"\", \"n\": \"\", \"e\": \"\", \"x\": \"\", \"y\": \"\", \"crv\": \"\" } ] }", + "type": "string" + }, "webSsoConfig": { "$ref": "GoogleIamAdminV1WorkforcePoolProviderOidcWebSsoConfig", "description": "Required. Configuration for web single sign-on for the OIDC provider. Here, web sign-in refers to console sign-in and gcloud sign-in through the browser." @@ -3271,7 +3242,7 @@ "id": "GoogleIamAdminV1WorkforcePoolProviderSaml", "properties": { "idpMetadataXml": { - "description": "Required. SAML Identity provider configuration metadata xml doc. The xml document should comply with [SAML 2.0 specification](https://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf). The max size of the acceptable xml document will be bounded to 128k characters. The metadata xml document should satisfy the following constraints: 1) Must contain an Identity Provider Entity ID. 2) Must contain at least one non-expired signing key certificate. 3) For each signing key: a) Valid from should be no more than 7 days from now. b) Valid to should be no more than 14 years in the future. 4) Up to 3 IdP signing keys are allowed in the metadata xml. When updating the provider's metadata xml, at least one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata.", + "description": "Required. SAML Identity provider configuration metadata xml doc. The xml document should comply with [SAML 2.0 specification](https://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf). The max size of the acceptable xml document will be bounded to 128k characters. The metadata xml document should satisfy the following constraints: 1) Must contain an Identity Provider Entity ID. 2) Must contain at least one non-expired signing key certificate. 3) For each signing key: a) Valid from should be no more than 7 days from now. b) Valid to should be no more than 15 years in the future. 4) Up to 3 IdP signing keys are allowed in the metadata xml. When updating the provider's metadata xml, at least one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata.", "type": "string" } }, @@ -3630,6 +3601,50 @@ }, "type": "object" }, + "OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "OperationMetadata", + "properties": { + "apiVersion": { + "description": "Output only. API version used to start the operation.", + "readOnly": true, + "type": "string" + }, + "cancelRequested": { + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "readOnly": true, + "type": "boolean" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "statusDetail": { + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, + "type": "string" + }, + "verb": { + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "PatchServiceAccountRequest": { "description": "The service account patch request. You can patch only the `display_name` and `description` fields. You must use the `update_mask` field to specify which of these fields you want to patch. Only the fields specified in the request are guaranteed to be returned in the response. Other fields may be empty in the response.", "id": "PatchServiceAccountRequest", @@ -3943,7 +3958,7 @@ "id": "Saml", "properties": { "idpMetadataXml": { - "description": "Required. SAML Identity provider configuration metadata xml doc. The xml document should comply with [SAML 2.0 specification](https://www.oasis-open.org/committees/download.php/56785/sstc-saml-metadata-errata-2.0-wd-05.pdf). The max size of the acceptable xml document will be bounded to 128k characters. The metadata xml document should satisfy the following constraints: 1) Must contain an Identity Provider Entity ID. 2) Must contain at least one non-expired signing key certificate. 3) For each signing key: a) Valid from should be no more than 7 days from now. b) Valid to should be no more than 14 years in the future. 4) Upto 3 IdP signing keys are allowed in the metadata xml. When updating the provider's metadata xml, at lease one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata", + "description": "Required. SAML Identity provider configuration metadata xml doc. The xml document should comply with [SAML 2.0 specification](https://www.oasis-open.org/committees/download.php/56785/sstc-saml-metadata-errata-2.0-wd-05.pdf). The max size of the acceptable xml document will be bounded to 128k characters. The metadata xml document should satisfy the following constraints: 1) Must contain an Identity Provider Entity ID. 2) Must contain at least one non-expired signing key certificate. 3) For each signing key: a) Valid from should be no more than 7 days from now. b) Valid to should be no more than 15 years in the future. 4) Upto 3 IdP signing keys are allowed in the metadata xml. When updating the provider's metadata xml, at lease one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata", "type": "string" } }, @@ -4471,7 +4486,7 @@ "type": "object" }, "WorkloadIdentityPool": { - "description": "Represents a collection of external workload identities. You can define IAM policies to grant these identities access to Google Cloud resources.", + "description": "Represents a collection of workload identities. You can define IAM policies to grant these identities access to Google Cloud resources.", "id": "WorkloadIdentityPool", "properties": { "description": { @@ -4533,7 +4548,7 @@ "additionalProperties": { "type": "string" }, - "description": "Maps attributes from authentication credentials issued by an external identity provider to Google Cloud attributes, such as `subject` and `segment`. Each key must be a string specifying the Google Cloud IAM attribute to map to. The following keys are supported: * `google.subject`: The principal IAM is authenticating. You can reference this value in IAM bindings. This is also the subject that appears in Cloud Logging logs. Cannot exceed 127 bytes. * `google.groups`: Groups the external identity belongs to. You can grant groups access to resources using an IAM `principalSet` binding; access applies to all members of the group. You can also provide custom attributes by specifying `attribute.{custom_attribute}`, where `{custom_attribute}` is the name of the custom attribute to be mapped. You can define a maximum of 50 custom attributes. The maximum length of a mapped attribute key is 100 characters, and the key may only contain the characters [a-z0-9_]. You can reference these attributes in IAM policies to define fine-grained access for a workload to Google Cloud resources. For example: * `google.subject`: `principal://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/subject/{value}` * `google.groups`: `principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/group/{value}` * `attribute.{custom_attribute}`: `principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/attribute.{custom_attribute}/{value}` Each value must be a [Common Expression Language] (https://opensource.google/projects/cel) function that maps an identity provider credential to the normalized attribute specified by the corresponding map key. You can use the `assertion` keyword in the expression to access a JSON representation of the authentication credential issued by the provider. The maximum length of an attribute mapping expression is 2048 characters. When evaluated, the total size of all mapped attributes must not exceed 8KB. For AWS providers, if no attribute mapping is defined, the following default mapping applies: ``` { \"google.subject\":\"assertion.arn\", \"attribute.aws_role\": \"assertion.arn.contains('assumed-role')\" \" ? assertion.arn.extract('{account_arn}assumed-role/')\" \" + 'assumed-role/'\" \" + assertion.arn.extract('assumed-role/{role_name}/')\" \" : assertion.arn\", } ``` If any custom attribute mappings are defined, they must include a mapping to the `google.subject` attribute. For OIDC providers, you must supply a custom mapping, which must include the `google.subject` attribute. For example, the following maps the `sub` claim of the incoming credential to the `subject` attribute on a Google token: ``` {\"google.subject\": \"assertion.sub\"} ```", + "description": " Maps attributes from authentication credentials issued by an external identity provider to Google Cloud attributes, such as `subject` and `segment`. Each key must be a string specifying the Google Cloud IAM attribute to map to. The following keys are supported: * `google.subject`: The principal IAM is authenticating. You can reference this value in IAM bindings. This is also the subject that appears in Cloud Logging logs. Cannot exceed 127 bytes. * `google.groups`: Groups the external identity belongs to. You can grant groups access to resources using an IAM `principalSet` binding; access applies to all members of the group. You can also provide custom attributes by specifying `attribute.{custom_attribute}`, where `{custom_attribute}` is the name of the custom attribute to be mapped. You can define a maximum of 50 custom attributes. The maximum length of a mapped attribute key is 100 characters, and the key may only contain the characters [a-z0-9_]. You can reference these attributes in IAM policies to define fine-grained access for a workload to Google Cloud resources. For example: * `google.subject`: `principal://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/subject/{value}` * `google.groups`: `principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/group/{value}` * `attribute.{custom_attribute}`: `principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/attribute.{custom_attribute}/{value}` Each value must be a [Common Expression Language] (https://opensource.google/projects/cel) function that maps an identity provider credential to the normalized attribute specified by the corresponding map key. You can use the `assertion` keyword in the expression to access a JSON representation of the authentication credential issued by the provider. The maximum length of an attribute mapping expression is 2048 characters. When evaluated, the total size of all mapped attributes must not exceed 8KB. For AWS providers, if no attribute mapping is defined, the following default mapping applies: ``` { \"google.subject\":\"assertion.arn\", \"attribute.aws_role\": \"assertion.arn.contains('assumed-role')\" \" ? assertion.arn.extract('{account_arn}assumed-role/')\" \" + 'assumed-role/'\" \" + assertion.arn.extract('assumed-role/{role_name}/')\" \" : assertion.arn\", } ``` If any custom attribute mappings are defined, they must include a mapping to the `google.subject` attribute. For OIDC providers, you must supply a custom mapping, which must include the `google.subject` attribute. For example, the following maps the `sub` claim of the incoming credential to the `subject` attribute on a Google token: ``` {\"google.subject\": \"assertion.sub\"} ```", "type": "object" }, "aws": { diff --git a/discovery/iam-v2.json b/discovery/iam-v2.json index 6b7b453561..0a64f017ca 100644 --- a/discovery/iam-v2.json +++ b/discovery/iam-v2.json @@ -293,9 +293,53 @@ } } }, - "revision": "20230803", + "revision": "20230914", "rootUrl": "https://iam.googleapis.com/", "schemas": { + "GoogleCloudCommonOperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "GoogleCloudCommonOperationMetadata", + "properties": { + "apiVersion": { + "description": "Output only. API version used to start the operation.", + "readOnly": true, + "type": "string" + }, + "cancelRequested": { + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "readOnly": true, + "type": "boolean" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "statusDetail": { + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, + "type": "string" + }, + "verb": { + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleIamAdminV1AuditData": { "description": "Audit log information specific to Cloud IAM admin APIs. This message is serialized as an `Any` type in the `ServiceData` message of an `AuditLog` message.", "id": "GoogleIamAdminV1AuditData", diff --git a/src/apis/iam/v1.ts b/src/apis/iam/v1.ts index 7d9cd2e00c..4dd9425b16 100644 --- a/src/apis/iam/v1.ts +++ b/src/apis/iam/v1.ts @@ -348,6 +348,10 @@ export namespace iam_v1 { * Required. The OIDC issuer URI. Must be a valid URI using the 'https' scheme. */ issuerUri?: string | null; + /** + * OIDC JWKs in JSON String format. For details on the definition of a JWK, see https://tools.ietf.org/html/rfc7517. If not set, the `jwks_uri` from the discovery document(fetched from the .well-known path of the `issuer_uri`) will be used. Currently, RSA and EC asymmetric keys are supported. The JWK must use following format and include only the following fields: { "keys": [ { "kty": "RSA/EC", "alg": "", "use": "sig", "kid": "", "n": "", "e": "", "x": "", "y": "", "crv": "" \} ] \} + */ + jwksJson?: string | null; /** * Required. Configuration for web single sign-on for the OIDC provider. Here, web sign-in refers to console sign-in and gcloud sign-in through the browser. */ @@ -397,7 +401,7 @@ export namespace iam_v1 { */ export interface Schema$GoogleIamAdminV1WorkforcePoolProviderSaml { /** - * Required. SAML Identity provider configuration metadata xml doc. The xml document should comply with [SAML 2.0 specification](https://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf). The max size of the acceptable xml document will be bounded to 128k characters. The metadata xml document should satisfy the following constraints: 1) Must contain an Identity Provider Entity ID. 2) Must contain at least one non-expired signing key certificate. 3) For each signing key: a) Valid from should be no more than 7 days from now. b) Valid to should be no more than 14 years in the future. 4) Up to 3 IdP signing keys are allowed in the metadata xml. When updating the provider's metadata xml, at least one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata. + * Required. SAML Identity provider configuration metadata xml doc. The xml document should comply with [SAML 2.0 specification](https://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf). The max size of the acceptable xml document will be bounded to 128k characters. The metadata xml document should satisfy the following constraints: 1) Must contain an Identity Provider Entity ID. 2) Must contain at least one non-expired signing key certificate. 3) For each signing key: a) Valid from should be no more than 7 days from now. b) Valid to should be no more than 15 years in the future. 4) Up to 3 IdP signing keys are allowed in the metadata xml. When updating the provider's metadata xml, at least one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata. */ idpMetadataXml?: string | null; } @@ -632,6 +636,39 @@ export namespace iam_v1 { */ response?: {[key: string]: any} | null; } + /** + * Represents the metadata of the long-running operation. + */ + export interface Schema$OperationMetadata { + /** + * Output only. API version used to start the operation. + */ + apiVersion?: string | null; + /** + * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + */ + cancelRequested?: boolean | null; + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. Human-readable status of the operation, if any. + */ + statusDetail?: string | null; + /** + * Output only. Server-defined resource path for the target of the operation. + */ + target?: string | null; + /** + * Output only. Name of the verb executed by the operation. + */ + verb?: string | null; + } /** * The service account patch request. You can patch only the `display_name` and `description` fields. You must use the `update_mask` field to specify which of these fields you want to patch. Only the fields specified in the request are guaranteed to be returned in the response. Other fields may be empty in the response. */ @@ -833,7 +870,7 @@ export namespace iam_v1 { */ export interface Schema$Saml { /** - * Required. SAML Identity provider configuration metadata xml doc. The xml document should comply with [SAML 2.0 specification](https://www.oasis-open.org/committees/download.php/56785/sstc-saml-metadata-errata-2.0-wd-05.pdf). The max size of the acceptable xml document will be bounded to 128k characters. The metadata xml document should satisfy the following constraints: 1) Must contain an Identity Provider Entity ID. 2) Must contain at least one non-expired signing key certificate. 3) For each signing key: a) Valid from should be no more than 7 days from now. b) Valid to should be no more than 14 years in the future. 4) Upto 3 IdP signing keys are allowed in the metadata xml. When updating the provider's metadata xml, at lease one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata + * Required. SAML Identity provider configuration metadata xml doc. The xml document should comply with [SAML 2.0 specification](https://www.oasis-open.org/committees/download.php/56785/sstc-saml-metadata-errata-2.0-wd-05.pdf). The max size of the acceptable xml document will be bounded to 128k characters. The metadata xml document should satisfy the following constraints: 1) Must contain an Identity Provider Entity ID. 2) Must contain at least one non-expired signing key certificate. 3) For each signing key: a) Valid from should be no more than 7 days from now. b) Valid to should be no more than 15 years in the future. 4) Upto 3 IdP signing keys are allowed in the metadata xml. When updating the provider's metadata xml, at lease one non-expired signing key must overlap with the existing metadata. This requirement is skipped if there are no non-expired signing keys present in the existing metadata */ idpMetadataXml?: string | null; } @@ -1179,7 +1216,7 @@ export namespace iam_v1 { use?: string | null; } /** - * Represents a collection of external workload identities. You can define IAM policies to grant these identities access to Google Cloud resources. + * Represents a collection of workload identities. You can define IAM policies to grant these identities access to Google Cloud resources. */ export interface Schema$WorkloadIdentityPool { /** @@ -1220,7 +1257,7 @@ export namespace iam_v1 { */ attributeCondition?: string | null; /** - * Maps attributes from authentication credentials issued by an external identity provider to Google Cloud attributes, such as `subject` and `segment`. Each key must be a string specifying the Google Cloud IAM attribute to map to. The following keys are supported: * `google.subject`: The principal IAM is authenticating. You can reference this value in IAM bindings. This is also the subject that appears in Cloud Logging logs. Cannot exceed 127 bytes. * `google.groups`: Groups the external identity belongs to. You can grant groups access to resources using an IAM `principalSet` binding; access applies to all members of the group. You can also provide custom attributes by specifying `attribute.{custom_attribute\}`, where `{custom_attribute\}` is the name of the custom attribute to be mapped. You can define a maximum of 50 custom attributes. The maximum length of a mapped attribute key is 100 characters, and the key may only contain the characters [a-z0-9_]. You can reference these attributes in IAM policies to define fine-grained access for a workload to Google Cloud resources. For example: * `google.subject`: `principal://iam.googleapis.com/projects/{project\}/locations/{location\}/workloadIdentityPools/{pool\}/subject/{value\}` * `google.groups`: `principalSet://iam.googleapis.com/projects/{project\}/locations/{location\}/workloadIdentityPools/{pool\}/group/{value\}` * `attribute.{custom_attribute\}`: `principalSet://iam.googleapis.com/projects/{project\}/locations/{location\}/workloadIdentityPools/{pool\}/attribute.{custom_attribute\}/{value\}` Each value must be a [Common Expression Language] (https://opensource.google/projects/cel) function that maps an identity provider credential to the normalized attribute specified by the corresponding map key. You can use the `assertion` keyword in the expression to access a JSON representation of the authentication credential issued by the provider. The maximum length of an attribute mapping expression is 2048 characters. When evaluated, the total size of all mapped attributes must not exceed 8KB. For AWS providers, if no attribute mapping is defined, the following default mapping applies: ``` { "google.subject":"assertion.arn", "attribute.aws_role": "assertion.arn.contains('assumed-role')" " ? assertion.arn.extract('{account_arn\}assumed-role/')" " + 'assumed-role/'" " + assertion.arn.extract('assumed-role/{role_name\}/')" " : assertion.arn", \} ``` If any custom attribute mappings are defined, they must include a mapping to the `google.subject` attribute. For OIDC providers, you must supply a custom mapping, which must include the `google.subject` attribute. For example, the following maps the `sub` claim of the incoming credential to the `subject` attribute on a Google token: ``` {"google.subject": "assertion.sub"\} ``` + * Maps attributes from authentication credentials issued by an external identity provider to Google Cloud attributes, such as `subject` and `segment`. Each key must be a string specifying the Google Cloud IAM attribute to map to. The following keys are supported: * `google.subject`: The principal IAM is authenticating. You can reference this value in IAM bindings. This is also the subject that appears in Cloud Logging logs. Cannot exceed 127 bytes. * `google.groups`: Groups the external identity belongs to. You can grant groups access to resources using an IAM `principalSet` binding; access applies to all members of the group. You can also provide custom attributes by specifying `attribute.{custom_attribute\}`, where `{custom_attribute\}` is the name of the custom attribute to be mapped. You can define a maximum of 50 custom attributes. The maximum length of a mapped attribute key is 100 characters, and the key may only contain the characters [a-z0-9_]. You can reference these attributes in IAM policies to define fine-grained access for a workload to Google Cloud resources. For example: * `google.subject`: `principal://iam.googleapis.com/projects/{project\}/locations/{location\}/workloadIdentityPools/{pool\}/subject/{value\}` * `google.groups`: `principalSet://iam.googleapis.com/projects/{project\}/locations/{location\}/workloadIdentityPools/{pool\}/group/{value\}` * `attribute.{custom_attribute\}`: `principalSet://iam.googleapis.com/projects/{project\}/locations/{location\}/workloadIdentityPools/{pool\}/attribute.{custom_attribute\}/{value\}` Each value must be a [Common Expression Language] (https://opensource.google/projects/cel) function that maps an identity provider credential to the normalized attribute specified by the corresponding map key. You can use the `assertion` keyword in the expression to access a JSON representation of the authentication credential issued by the provider. The maximum length of an attribute mapping expression is 2048 characters. When evaluated, the total size of all mapped attributes must not exceed 8KB. For AWS providers, if no attribute mapping is defined, the following default mapping applies: ``` { "google.subject":"assertion.arn", "attribute.aws_role": "assertion.arn.contains('assumed-role')" " ? assertion.arn.extract('{account_arn\}assumed-role/')" " + 'assumed-role/'" " + assertion.arn.extract('assumed-role/{role_name\}/')" " : assertion.arn", \} ``` If any custom attribute mappings are defined, they must include a mapping to the `google.subject` attribute. For OIDC providers, you must supply a custom mapping, which must include the `google.subject` attribute. For example, the following maps the `sub` claim of the incoming credential to the `subject` attribute on a Google token: ``` {"google.subject": "assertion.sub"\} ``` */ attributeMapping?: {[key: string]: string} | null; /** @@ -5557,7 +5594,6 @@ export namespace iam_v1 { context: APIRequestContext; managedIdentities: Resource$Projects$Locations$Workloadidentitypools$Namespaces$Managedidentities; operations: Resource$Projects$Locations$Workloadidentitypools$Namespaces$Operations; - workloadSources: Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources; constructor(context: APIRequestContext) { this.context = context; this.managedIdentities = @@ -5568,10 +5604,6 @@ export namespace iam_v1 { new Resource$Projects$Locations$Workloadidentitypools$Namespaces$Operations( this.context ); - this.workloadSources = - new Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources( - this.context - ); } } @@ -5904,118 +5936,6 @@ export namespace iam_v1 { name?: string; } - export class Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources { - context: APIRequestContext; - operations: Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations; - constructor(context: APIRequestContext) { - this.context = context; - this.operations = - new Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations( - this.context - ); - } - } - - export class Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - get( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations$Get, - options: StreamMethodOptions - ): GaxiosPromise; - get( - params?: Params$Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations$Get, - options?: MethodOptions - ): GaxiosPromise; - get( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): void | GaxiosPromise | GaxiosPromise { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://iam.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Projects$Locations$Workloadidentitypools$Namespaces$Workloadsources$Operations$Get - extends StandardParameters { - /** - * The name of the operation resource. - */ - name?: string; - } - export class Resource$Projects$Locations$Workloadidentitypools$Operations { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/iam/v2.ts b/src/apis/iam/v2.ts index 43e8cb8c0a..a84611e18f 100644 --- a/src/apis/iam/v2.ts +++ b/src/apis/iam/v2.ts @@ -124,6 +124,39 @@ export namespace iam_v2 { } } + /** + * Represents the metadata of the long-running operation. + */ + export interface Schema$GoogleCloudCommonOperationMetadata { + /** + * Output only. API version used to start the operation. + */ + apiVersion?: string | null; + /** + * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + */ + cancelRequested?: boolean | null; + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. Human-readable status of the operation, if any. + */ + statusDetail?: string | null; + /** + * Output only. Server-defined resource path for the target of the operation. + */ + target?: string | null; + /** + * Output only. Name of the verb executed by the operation. + */ + verb?: string | null; + } /** * Audit log information specific to Cloud IAM admin APIs. This message is serialized as an `Any` type in the `ServiceData` message of an `AuditLog` message. */ From ef7a7cbb7a453190f290a18b41f09f8e0918c90c Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:27 +0000 Subject: [PATCH 19/28] feat(networksecurity): update the API #### networksecurity:v1beta1 The following keys were added: - schemas.FirewallEndpoint.properties.billingProjectId.description - schemas.FirewallEndpoint.properties.billingProjectId.type --- discovery/networksecurity-v1beta1.json | 6 +++++- src/apis/networksecurity/v1beta1.ts | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/discovery/networksecurity-v1beta1.json b/discovery/networksecurity-v1beta1.json index f181aa20a0..2f2be5eff6 100644 --- a/discovery/networksecurity-v1beta1.json +++ b/discovery/networksecurity-v1beta1.json @@ -3162,7 +3162,7 @@ } } }, - "revision": "20230911", + "revision": "20230918", "rootUrl": "https://networksecurity.googleapis.com/", "schemas": { "AddAddressGroupItemsRequest": { @@ -3458,6 +3458,10 @@ "readOnly": true, "type": "array" }, + "billingProjectId": { + "description": "Optional. Project to bill on endpoint uptime usage.", + "type": "string" + }, "createTime": { "description": "Output only. Create time stamp", "format": "google-datetime", diff --git a/src/apis/networksecurity/v1beta1.ts b/src/apis/networksecurity/v1beta1.ts index 0cff7298ff..703829ac19 100644 --- a/src/apis/networksecurity/v1beta1.ts +++ b/src/apis/networksecurity/v1beta1.ts @@ -330,6 +330,10 @@ export namespace networksecurity_v1beta1 { * Output only. List of networks that are associated with this endpoint in the local zone. This is a projection of the FirewallEndpointAssociations pointing at this endpoint. A network will only appear in this list after traffic routing is fully configured. Format: projects/{project\}/global/networks/{name\}. */ associatedNetworks?: string[] | null; + /** + * Optional. Project to bill on endpoint uptime usage. + */ + billingProjectId?: string | null; /** * Output only. Create time stamp */ From fdaefe566cf2c333d5ee5142d92af14956a36318 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:27 +0000 Subject: [PATCH 20/28] feat(paymentsresellersubscription): update the API #### paymentsresellersubscription:v1 The following keys were added: - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequest.properties.lineItemEntitlementDetails.description - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequest.properties.lineItemEntitlementDetails.items.$ref - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequest.properties.lineItemEntitlementDetails.type - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails.description - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails.id - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails.properties.lineItemIndex.description - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails.properties.lineItemIndex.format - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails.properties.lineItemIndex.type - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails.properties.products.description - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails.properties.products.items.type - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails.properties.products.type - schemas.GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails.type --- .../paymentsresellersubscription-v1.json | 31 +++++++++++++++++-- src/apis/paymentsresellersubscription/v1.ts | 20 +++++++++++- 2 files changed, 48 insertions(+), 3 deletions(-) diff --git a/discovery/paymentsresellersubscription-v1.json b/discovery/paymentsresellersubscription-v1.json index 882b7f81e1..7971651b46 100644 --- a/discovery/paymentsresellersubscription-v1.json +++ b/discovery/paymentsresellersubscription-v1.json @@ -396,7 +396,7 @@ } } }, - "revision": "20230920", + "revision": "20230924", "rootUrl": "https://paymentsresellersubscription.googleapis.com/", "schemas": { "GoogleCloudPaymentsResellerSubscriptionV1Amount": { @@ -494,7 +494,34 @@ "GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequest": { "description": "Partner request for entitling the previously provisioned subscription to an end user. The end user identity is inferred from the request OAuth context.", "id": "GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequest", - "properties": {}, + "properties": { + "lineItemEntitlementDetails": { + "description": "Optional. The line items to be entitled. If unspecified, all line items will be entitled.", + "items": { + "$ref": "GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails": { + "description": "The details of the line item to be entitled.", + "id": "GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails", + "properties": { + "lineItemIndex": { + "description": "Required. The index of the line item to be entitled.", + "format": "int32", + "type": "integer" + }, + "products": { + "description": "Optional. Only applicable if the line item corresponds to a hard bundle. Product resource names that identify the bundle elements to be entitled in the line item. If unspecified, all bundle elements will be entitled. The format is 'partners/{partner_id}/products/{product_id}'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, "type": "object" }, "GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionResponse": { diff --git a/src/apis/paymentsresellersubscription/v1.ts b/src/apis/paymentsresellersubscription/v1.ts index 789e369115..bd385e23ff 100644 --- a/src/apis/paymentsresellersubscription/v1.ts +++ b/src/apis/paymentsresellersubscription/v1.ts @@ -169,7 +169,25 @@ export namespace paymentsresellersubscription_v1 { /** * Partner request for entitling the previously provisioned subscription to an end user. The end user identity is inferred from the request OAuth context. */ - export interface Schema$GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequest {} + export interface Schema$GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequest { + /** + * Optional. The line items to be entitled. If unspecified, all line items will be entitled. + */ + lineItemEntitlementDetails?: Schema$GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails[]; + } + /** + * The details of the line item to be entitled. + */ + export interface Schema$GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionRequestLineItemEntitlementDetails { + /** + * Required. The index of the line item to be entitled. + */ + lineItemIndex?: number | null; + /** + * Optional. Only applicable if the line item corresponds to a hard bundle. Product resource names that identify the bundle elements to be entitled in the line item. If unspecified, all bundle elements will be entitled. The format is 'partners/{partner_id\}/products/{product_id\}'. + */ + products?: string[] | null; + } export interface Schema$GoogleCloudPaymentsResellerSubscriptionV1EntitleSubscriptionResponse { /** * The subscription that has user linked to it. From 75cb7a99c1eb558d8744be03f7f634614ea2cbfb Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:28 +0000 Subject: [PATCH 21/28] feat(prod_tt_sasportal): update the API #### prod_tt_sasportal:v1alpha1 The following keys were added: - schemas.SasPortalSetupSasAnalyticsRequest.properties.userId.description - schemas.SasPortalSetupSasAnalyticsRequest.properties.userId.type --- discovery/prod_tt_sasportal-v1alpha1.json | 9 +++++++-- src/apis/prod_tt_sasportal/v1alpha1.ts | 7 ++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/discovery/prod_tt_sasportal-v1alpha1.json b/discovery/prod_tt_sasportal-v1alpha1.json index 76cc428221..4b95d4f10f 100644 --- a/discovery/prod_tt_sasportal-v1alpha1.json +++ b/discovery/prod_tt_sasportal-v1alpha1.json @@ -2637,7 +2637,7 @@ } } }, - "revision": "20230920", + "revision": "20230921", "rootUrl": "https://prod-tt-sasportal.googleapis.com/", "schemas": { "SasPortalAssignment": { @@ -3585,7 +3585,12 @@ "SasPortalSetupSasAnalyticsRequest": { "description": "Request for the SetupSasAnalytics rpc.", "id": "SasPortalSetupSasAnalyticsRequest", - "properties": {}, + "properties": { + "userId": { + "description": "Optional. User id to setup analytics for, if not provided the user id associated with the project is used. optional", + "type": "string" + } + }, "type": "object" }, "SasPortalSetupSasAnalyticsResponse": { diff --git a/src/apis/prod_tt_sasportal/v1alpha1.ts b/src/apis/prod_tt_sasportal/v1alpha1.ts index 7ce0dd3857..8f65c75f38 100644 --- a/src/apis/prod_tt_sasportal/v1alpha1.ts +++ b/src/apis/prod_tt_sasportal/v1alpha1.ts @@ -783,7 +783,12 @@ export namespace prod_tt_sasportal_v1alpha1 { /** * Request for the SetupSasAnalytics rpc. */ - export interface Schema$SasPortalSetupSasAnalyticsRequest {} + export interface Schema$SasPortalSetupSasAnalyticsRequest { + /** + * Optional. User id to setup analytics for, if not provided the user id associated with the project is used. optional + */ + userId?: string | null; + } /** * Response returned by the long running operation for the SetupSasAnalytics rpc. */ From f6183756fd9e60186f3d5de6bf801a5692e5bd28 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:28 +0000 Subject: [PATCH 22/28] feat(run): update the API #### run:v2 The following keys were added: - schemas.GoogleCloudRunV2ContainerOverride.description - schemas.GoogleCloudRunV2ContainerOverride.id - schemas.GoogleCloudRunV2ContainerOverride.properties.args.description - schemas.GoogleCloudRunV2ContainerOverride.properties.args.items.type - schemas.GoogleCloudRunV2ContainerOverride.properties.args.type - schemas.GoogleCloudRunV2ContainerOverride.properties.clearArgs.description - schemas.GoogleCloudRunV2ContainerOverride.properties.clearArgs.type - schemas.GoogleCloudRunV2ContainerOverride.properties.env.description - schemas.GoogleCloudRunV2ContainerOverride.properties.env.items.$ref - schemas.GoogleCloudRunV2ContainerOverride.properties.env.type - schemas.GoogleCloudRunV2ContainerOverride.properties.name.description - schemas.GoogleCloudRunV2ContainerOverride.properties.name.type - schemas.GoogleCloudRunV2ContainerOverride.type - schemas.GoogleCloudRunV2Overrides.description - schemas.GoogleCloudRunV2Overrides.id - schemas.GoogleCloudRunV2Overrides.properties.containerOverrides.description - schemas.GoogleCloudRunV2Overrides.properties.containerOverrides.items.$ref - schemas.GoogleCloudRunV2Overrides.properties.containerOverrides.type - schemas.GoogleCloudRunV2Overrides.properties.taskCount.description - schemas.GoogleCloudRunV2Overrides.properties.taskCount.format - schemas.GoogleCloudRunV2Overrides.properties.taskCount.type - schemas.GoogleCloudRunV2Overrides.properties.timeout.description - schemas.GoogleCloudRunV2Overrides.properties.timeout.format - schemas.GoogleCloudRunV2Overrides.properties.timeout.type - schemas.GoogleCloudRunV2Overrides.type - schemas.GoogleCloudRunV2RunJobRequest.properties.overrides.$ref - schemas.GoogleCloudRunV2RunJobRequest.properties.overrides.description The following keys were changed: - resources.projects.resources.locations.resources.jobs.resources.executions.methods.cancel.parameters.name.description - resources.projects.resources.locations.resources.jobs.resources.executions.methods.delete.parameters.name.description - resources.projects.resources.locations.resources.jobs.resources.executions.methods.get.parameters.name.description - resources.projects.resources.locations.resources.jobs.resources.executions.methods.list.parameters.parent.description --- discovery/run-v2.json | 67 +++++++++++++++++++++++++++++++++++++++---- src/apis/run/v2.ts | 50 +++++++++++++++++++++++++++++--- 2 files changed, 108 insertions(+), 9 deletions(-) diff --git a/discovery/run-v2.json b/discovery/run-v2.json index 0a5dcd5b93..cbaf66cbd4 100644 --- a/discovery/run-v2.json +++ b/discovery/run-v2.json @@ -417,7 +417,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the Execution to cancel. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}, where {project} can be project id or number.", + "description": "Required. The name of the Execution to cancel. Format: `projects/{project}/locations/{location}/jobs/{job}/executions/{execution}`, where `{project}` can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+/executions/[^/]+$", "required": true, @@ -450,7 +450,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the Execution to delete. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}, where {project} can be project id or number.", + "description": "Required. The name of the Execution to delete. Format: `projects/{project}/locations/{location}/jobs/{job}/executions/{execution}`, where `{project}` can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+/executions/[^/]+$", "required": true, @@ -480,7 +480,7 @@ ], "parameters": { "name": { - "description": "Required. The full name of the Execution. Format: projects/{project}/locations/{location}/jobs/{job}/executions/{execution}, where {project} can be project id or number.", + "description": "Required. The full name of the Execution. Format: `projects/{project}/locations/{location}/jobs/{job}/executions/{execution}`, where `{project}` can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+/executions/[^/]+$", "required": true, @@ -516,7 +516,7 @@ "type": "string" }, "parent": { - "description": "Required. The Execution from which the Executions should be listed. To list all Executions across Jobs, use \"-\" instead of Job name. Format: projects/{project}/locations/{location}/jobs/{job}, where {project} can be project id or number.", + "description": "Required. The Execution from which the Executions should be listed. To list all Executions across Jobs, use \"-\" instead of Job name. Format: `projects/{project}/locations/{location}/jobs/{job}`, where `{project}` can be project id or number.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$", "required": true, @@ -1115,7 +1115,7 @@ } } }, - "revision": "20230917", + "revision": "20230924", "rootUrl": "https://run.googleapis.com/", "schemas": { "GoogleCloudRunV2BinaryAuthorization": { @@ -1381,6 +1381,35 @@ }, "type": "object" }, + "GoogleCloudRunV2ContainerOverride": { + "description": "Per-container override specification.", + "id": "GoogleCloudRunV2ContainerOverride", + "properties": { + "args": { + "description": "Optional. Arguments to the entrypoint. Will replace existing args for override.", + "items": { + "type": "string" + }, + "type": "array" + }, + "clearArgs": { + "description": "Optional. True if the intention is to clear out existing args list.", + "type": "boolean" + }, + "env": { + "description": "List of environment variables to set in the container. Will be merged with existing env for override.", + "items": { + "$ref": "GoogleCloudRunV2EnvVar" + }, + "type": "array" + }, + "name": { + "description": "The name of the container specified as a DNS_LABEL.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudRunV2ContainerPort": { "description": "ContainerPort represents a network port in a single container.", "id": "GoogleCloudRunV2ContainerPort", @@ -2012,6 +2041,30 @@ }, "type": "object" }, + "GoogleCloudRunV2Overrides": { + "description": "RunJob Overrides that contains Execution fields to be overridden.", + "id": "GoogleCloudRunV2Overrides", + "properties": { + "containerOverrides": { + "description": "Per container override specification.", + "items": { + "$ref": "GoogleCloudRunV2ContainerOverride" + }, + "type": "array" + }, + "taskCount": { + "description": "Optional. The desired number of tasks the execution should run. Will replace existing task_count value.", + "format": "int32", + "type": "integer" + }, + "timeout": { + "description": "Duration in seconds the task may be active before the system will actively try to mark it failed and kill associated containers. Will replace existing timeout_seconds value.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudRunV2Probe": { "description": "Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.", "id": "GoogleCloudRunV2Probe", @@ -2384,6 +2437,10 @@ "description": "A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.", "type": "string" }, + "overrides": { + "$ref": "GoogleCloudRunV2Overrides", + "description": "Overrides specification for a given execution of a job. If provided, overrides will be applied to update the execution or task spec." + }, "validateOnly": { "description": "Indicates that the request should be validated without actually deleting any resources.", "type": "boolean" diff --git a/src/apis/run/v2.ts b/src/apis/run/v2.ts index 77d441477c..723be4b9e1 100644 --- a/src/apis/run/v2.ts +++ b/src/apis/run/v2.ts @@ -249,6 +249,27 @@ export namespace run_v2 { */ workingDir?: string | null; } + /** + * Per-container override specification. + */ + export interface Schema$GoogleCloudRunV2ContainerOverride { + /** + * Optional. Arguments to the entrypoint. Will replace existing args for override. + */ + args?: string[] | null; + /** + * Optional. True if the intention is to clear out existing args list. + */ + clearArgs?: boolean | null; + /** + * List of environment variables to set in the container. Will be merged with existing env for override. + */ + env?: Schema$GoogleCloudRunV2EnvVar[]; + /** + * The name of the container specified as a DNS_LABEL. + */ + name?: string | null; + } /** * ContainerPort represents a network port in a single container. */ @@ -682,6 +703,23 @@ export namespace run_v2 { */ tags?: string[] | null; } + /** + * RunJob Overrides that contains Execution fields to be overridden. + */ + export interface Schema$GoogleCloudRunV2Overrides { + /** + * Per container override specification. + */ + containerOverrides?: Schema$GoogleCloudRunV2ContainerOverride[]; + /** + * Optional. The desired number of tasks the execution should run. Will replace existing task_count value. + */ + taskCount?: number | null; + /** + * Duration in seconds the task may be active before the system will actively try to mark it failed and kill associated containers. Will replace existing timeout_seconds value. + */ + timeout?: string | null; + } /** * Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic. */ @@ -931,6 +969,10 @@ export namespace run_v2 { * A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates. */ etag?: string | null; + /** + * Overrides specification for a given execution of a job. If provided, overrides will be applied to update the execution or task spec. + */ + overrides?: Schema$GoogleCloudRunV2Overrides; /** * Indicates that the request should be validated without actually deleting any resources. */ @@ -2954,7 +2996,7 @@ export namespace run_v2 { export interface Params$Resource$Projects$Locations$Jobs$Executions$Cancel extends StandardParameters { /** - * Required. The name of the Execution to cancel. Format: projects/{project\}/locations/{location\}/jobs/{job\}/executions/{execution\}, where {project\} can be project id or number. + * Required. The name of the Execution to cancel. Format: `projects/{project\}/locations/{location\}/jobs/{job\}/executions/{execution\}`, where `{project\}` can be project id or number. */ name?: string; @@ -2970,7 +3012,7 @@ export namespace run_v2 { */ etag?: string; /** - * Required. The name of the Execution to delete. Format: projects/{project\}/locations/{location\}/jobs/{job\}/executions/{execution\}, where {project\} can be project id or number. + * Required. The name of the Execution to delete. Format: `projects/{project\}/locations/{location\}/jobs/{job\}/executions/{execution\}`, where `{project\}` can be project id or number. */ name?: string; /** @@ -2981,7 +3023,7 @@ export namespace run_v2 { export interface Params$Resource$Projects$Locations$Jobs$Executions$Get extends StandardParameters { /** - * Required. The full name of the Execution. Format: projects/{project\}/locations/{location\}/jobs/{job\}/executions/{execution\}, where {project\} can be project id or number. + * Required. The full name of the Execution. Format: `projects/{project\}/locations/{location\}/jobs/{job\}/executions/{execution\}`, where `{project\}` can be project id or number. */ name?: string; } @@ -2996,7 +3038,7 @@ export namespace run_v2 { */ pageToken?: string; /** - * Required. The Execution from which the Executions should be listed. To list all Executions across Jobs, use "-" instead of Job name. Format: projects/{project\}/locations/{location\}/jobs/{job\}, where {project\} can be project id or number. + * Required. The Execution from which the Executions should be listed. To list all Executions across Jobs, use "-" instead of Job name. Format: `projects/{project\}/locations/{location\}/jobs/{job\}`, where `{project\}` can be project id or number. */ parent?: string; /** From c17d1a15f7b298dafdaa341beb4e46a3fd74eeaf Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:28 +0000 Subject: [PATCH 23/28] feat(sqladmin): update the API #### sqladmin:v1beta4 The following keys were added: - schemas.DatabaseInstance.properties.primaryDnsName.description - schemas.DatabaseInstance.properties.primaryDnsName.readOnly - schemas.DatabaseInstance.properties.primaryDnsName.type The following keys were changed: - schemas.LocationPreference.properties.secondaryZone.description #### sqladmin:v1 The following keys were added: - schemas.DatabaseInstance.properties.primaryDnsName.description - schemas.DatabaseInstance.properties.primaryDnsName.readOnly - schemas.DatabaseInstance.properties.primaryDnsName.type The following keys were changed: - schemas.LocationPreference.properties.secondaryZone.description --- discovery/sqladmin-v1.json | 9 +++++++-- discovery/sqladmin-v1beta4.json | 9 +++++++-- src/apis/sqladmin/v1.ts | 6 +++++- src/apis/sqladmin/v1beta4.ts | 6 +++++- 4 files changed, 24 insertions(+), 6 deletions(-) diff --git a/discovery/sqladmin-v1.json b/discovery/sqladmin-v1.json index 8a0910a774..9479122b10 100644 --- a/discovery/sqladmin-v1.json +++ b/discovery/sqladmin-v1.json @@ -2122,7 +2122,7 @@ } } }, - "revision": "20230728", + "revision": "20230913", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -3024,6 +3024,11 @@ "$ref": "SqlOutOfDiskReport", "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" }, + "primaryDnsName": { + "description": "Output only. The dns name of the primary instance in a replication group.", + "readOnly": true, + "type": "string" + }, "project": { "description": "The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable.", "type": "string" @@ -4101,7 +4106,7 @@ "type": "string" }, "secondaryZone": { - "description": "The preferred Compute Engine zone for the secondary/failover (for example: us-central1-a, us-central1-b, etc.).", + "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" }, "zone": { diff --git a/discovery/sqladmin-v1beta4.json b/discovery/sqladmin-v1beta4.json index aaf95c3af7..bfcbf2f7f7 100644 --- a/discovery/sqladmin-v1beta4.json +++ b/discovery/sqladmin-v1beta4.json @@ -2122,7 +2122,7 @@ } } }, - "revision": "20230728", + "revision": "20230913", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -3024,6 +3024,11 @@ "$ref": "SqlOutOfDiskReport", "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" }, + "primaryDnsName": { + "description": "Output only. The dns name of the primary instance in a replication group.", + "readOnly": true, + "type": "string" + }, "project": { "description": "The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable.", "type": "string" @@ -4101,7 +4106,7 @@ "type": "string" }, "secondaryZone": { - "description": "The preferred Compute Engine zone for the secondary/failover (for example: us-central1-a, us-central1-b, etc.).", + "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" }, "zone": { diff --git a/src/apis/sqladmin/v1.ts b/src/apis/sqladmin/v1.ts index 3af5845d1e..a674a3586e 100644 --- a/src/apis/sqladmin/v1.ts +++ b/src/apis/sqladmin/v1.ts @@ -597,6 +597,10 @@ export namespace sqladmin_v1 { * 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 */ outOfDiskReport?: Schema$SqlOutOfDiskReport; + /** + * Output only. The dns name of the primary instance in a replication group. + */ + primaryDnsName?: string | null; /** * The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable. */ @@ -1221,7 +1225,7 @@ export namespace sqladmin_v1 { */ kind?: string | null; /** - * The preferred Compute Engine zone for the secondary/failover (for example: us-central1-a, us-central1-b, etc.). + * 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'. */ secondaryZone?: string | null; /** diff --git a/src/apis/sqladmin/v1beta4.ts b/src/apis/sqladmin/v1beta4.ts index c0cce9ebe7..a4aca8e9eb 100644 --- a/src/apis/sqladmin/v1beta4.ts +++ b/src/apis/sqladmin/v1beta4.ts @@ -597,6 +597,10 @@ export namespace sqladmin_v1beta4 { * 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 */ outOfDiskReport?: Schema$SqlOutOfDiskReport; + /** + * Output only. The dns name of the primary instance in a replication group. + */ + primaryDnsName?: string | null; /** * The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable. */ @@ -1221,7 +1225,7 @@ export namespace sqladmin_v1beta4 { */ kind?: string | null; /** - * The preferred Compute Engine zone for the secondary/failover (for example: us-central1-a, us-central1-b, etc.). + * 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'. */ secondaryZone?: string | null; /** From 83ffc1140d529a6302781035c81ed5da0e3aefd9 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:28 +0000 Subject: [PATCH 24/28] feat(vmmigration): update the API #### vmmigration:v1alpha1 The following keys were added: - schemas.BootDiskDefaults.description - schemas.BootDiskDefaults.id - schemas.BootDiskDefaults.properties.deviceName.description - schemas.BootDiskDefaults.properties.deviceName.type - schemas.BootDiskDefaults.properties.diskName.description - schemas.BootDiskDefaults.properties.diskName.type - schemas.BootDiskDefaults.properties.diskType.description - schemas.BootDiskDefaults.properties.diskType.enum - schemas.BootDiskDefaults.properties.diskType.enumDescriptions - schemas.BootDiskDefaults.properties.diskType.type - schemas.BootDiskDefaults.properties.image.$ref - schemas.BootDiskDefaults.properties.image.description - schemas.BootDiskDefaults.type - schemas.ComputeEngineDisksTargetDefaults.properties.disksTargetDefaults.$ref - schemas.ComputeEngineDisksTargetDefaults.properties.disksTargetDefaults.description - schemas.ComputeEngineDisksTargetDefaults.properties.vmTargetDefaults.$ref - schemas.ComputeEngineDisksTargetDefaults.properties.vmTargetDefaults.description - schemas.ComputeEngineDisksTargetDetails.properties.disksTargetDetails.$ref - schemas.ComputeEngineDisksTargetDetails.properties.disksTargetDetails.description - schemas.ComputeEngineDisksTargetDetails.properties.vmTargetDetails.$ref - schemas.ComputeEngineDisksTargetDetails.properties.vmTargetDetails.description - schemas.DiskImageDefaults.description - schemas.DiskImageDefaults.id - schemas.DiskImageDefaults.properties.sourceImage.description - schemas.DiskImageDefaults.properties.sourceImage.type - schemas.DiskImageDefaults.type - schemas.DisksMigrationDisksTargetDefaults.description - schemas.DisksMigrationDisksTargetDefaults.id - schemas.DisksMigrationDisksTargetDefaults.type - schemas.DisksMigrationDisksTargetDetails.description - schemas.DisksMigrationDisksTargetDetails.id - schemas.DisksMigrationDisksTargetDetails.type - schemas.DisksMigrationVmTargetDefaults.description - schemas.DisksMigrationVmTargetDefaults.id - schemas.DisksMigrationVmTargetDefaults.properties.additionalLicenses.description - schemas.DisksMigrationVmTargetDefaults.properties.additionalLicenses.items.type - schemas.DisksMigrationVmTargetDefaults.properties.additionalLicenses.type - schemas.DisksMigrationVmTargetDefaults.properties.bootDiskDefaults.$ref - schemas.DisksMigrationVmTargetDefaults.properties.bootDiskDefaults.description - schemas.DisksMigrationVmTargetDefaults.properties.computeScheduling.$ref - schemas.DisksMigrationVmTargetDefaults.properties.computeScheduling.description - schemas.DisksMigrationVmTargetDefaults.properties.hostname.description - schemas.DisksMigrationVmTargetDefaults.properties.hostname.type - schemas.DisksMigrationVmTargetDefaults.properties.labels.additionalProperties.type - schemas.DisksMigrationVmTargetDefaults.properties.labels.description - schemas.DisksMigrationVmTargetDefaults.properties.labels.type - schemas.DisksMigrationVmTargetDefaults.properties.machineType.description - schemas.DisksMigrationVmTargetDefaults.properties.machineType.type - schemas.DisksMigrationVmTargetDefaults.properties.machineTypeSeries.description - schemas.DisksMigrationVmTargetDefaults.properties.machineTypeSeries.type - schemas.DisksMigrationVmTargetDefaults.properties.metadata.additionalProperties.type - schemas.DisksMigrationVmTargetDefaults.properties.metadata.description - schemas.DisksMigrationVmTargetDefaults.properties.metadata.type - schemas.DisksMigrationVmTargetDefaults.properties.networkInterfaces.description - schemas.DisksMigrationVmTargetDefaults.properties.networkInterfaces.items.$ref - schemas.DisksMigrationVmTargetDefaults.properties.networkInterfaces.type - schemas.DisksMigrationVmTargetDefaults.properties.networkTags.description - schemas.DisksMigrationVmTargetDefaults.properties.networkTags.items.type - schemas.DisksMigrationVmTargetDefaults.properties.networkTags.type - schemas.DisksMigrationVmTargetDefaults.properties.secureBoot.description - schemas.DisksMigrationVmTargetDefaults.properties.secureBoot.type - schemas.DisksMigrationVmTargetDefaults.properties.serviceAccount.description - schemas.DisksMigrationVmTargetDefaults.properties.serviceAccount.type - schemas.DisksMigrationVmTargetDefaults.properties.vmName.description - schemas.DisksMigrationVmTargetDefaults.properties.vmName.type - schemas.DisksMigrationVmTargetDefaults.type - schemas.DisksMigrationVmTargetDetails.description - schemas.DisksMigrationVmTargetDetails.id - schemas.DisksMigrationVmTargetDetails.properties.vmUri.description - schemas.DisksMigrationVmTargetDetails.properties.vmUri.readOnly - schemas.DisksMigrationVmTargetDetails.properties.vmUri.type - schemas.DisksMigrationVmTargetDetails.type - schemas.PersistentDiskDefaults.properties.vmAttachmentDetails.$ref - schemas.PersistentDiskDefaults.properties.vmAttachmentDetails.description - schemas.VmAttachmentDetails.description - schemas.VmAttachmentDetails.id - schemas.VmAttachmentDetails.properties.deviceName.description - schemas.VmAttachmentDetails.properties.deviceName.type - schemas.VmAttachmentDetails.type #### vmmigration:v1 The following keys were added: - schemas.BootDiskDefaults.description - schemas.BootDiskDefaults.id - schemas.BootDiskDefaults.properties.deviceName.description - schemas.BootDiskDefaults.properties.deviceName.type - schemas.BootDiskDefaults.properties.diskName.description - schemas.BootDiskDefaults.properties.diskName.type - schemas.BootDiskDefaults.properties.diskType.description - schemas.BootDiskDefaults.properties.diskType.enum - schemas.BootDiskDefaults.properties.diskType.enumDescriptions - schemas.BootDiskDefaults.properties.diskType.type - schemas.BootDiskDefaults.properties.image.$ref - schemas.BootDiskDefaults.properties.image.description - schemas.BootDiskDefaults.type - schemas.ComputeEngineDisksTargetDefaults.properties.disksTargetDefaults.$ref - schemas.ComputeEngineDisksTargetDefaults.properties.disksTargetDefaults.description - schemas.ComputeEngineDisksTargetDefaults.properties.vmTargetDefaults.$ref - schemas.ComputeEngineDisksTargetDefaults.properties.vmTargetDefaults.description - schemas.ComputeEngineDisksTargetDetails.properties.disksTargetDetails.$ref - schemas.ComputeEngineDisksTargetDetails.properties.disksTargetDetails.description - schemas.ComputeEngineDisksTargetDetails.properties.vmTargetDetails.$ref - schemas.ComputeEngineDisksTargetDetails.properties.vmTargetDetails.description - schemas.DiskImageDefaults.description - schemas.DiskImageDefaults.id - schemas.DiskImageDefaults.properties.sourceImage.description - schemas.DiskImageDefaults.properties.sourceImage.type - schemas.DiskImageDefaults.type - schemas.DisksMigrationDisksTargetDefaults.description - schemas.DisksMigrationDisksTargetDefaults.id - schemas.DisksMigrationDisksTargetDefaults.type - schemas.DisksMigrationDisksTargetDetails.description - schemas.DisksMigrationDisksTargetDetails.id - schemas.DisksMigrationDisksTargetDetails.type - schemas.DisksMigrationVmTargetDefaults.description - schemas.DisksMigrationVmTargetDefaults.id - schemas.DisksMigrationVmTargetDefaults.properties.additionalLicenses.description - schemas.DisksMigrationVmTargetDefaults.properties.additionalLicenses.items.type - schemas.DisksMigrationVmTargetDefaults.properties.additionalLicenses.type - schemas.DisksMigrationVmTargetDefaults.properties.bootDiskDefaults.$ref - schemas.DisksMigrationVmTargetDefaults.properties.bootDiskDefaults.description - schemas.DisksMigrationVmTargetDefaults.properties.computeScheduling.$ref - schemas.DisksMigrationVmTargetDefaults.properties.computeScheduling.description - schemas.DisksMigrationVmTargetDefaults.properties.hostname.description - schemas.DisksMigrationVmTargetDefaults.properties.hostname.type - schemas.DisksMigrationVmTargetDefaults.properties.labels.additionalProperties.type - schemas.DisksMigrationVmTargetDefaults.properties.labels.description - schemas.DisksMigrationVmTargetDefaults.properties.labels.type - schemas.DisksMigrationVmTargetDefaults.properties.machineType.description - schemas.DisksMigrationVmTargetDefaults.properties.machineType.type - schemas.DisksMigrationVmTargetDefaults.properties.machineTypeSeries.description - schemas.DisksMigrationVmTargetDefaults.properties.machineTypeSeries.type - schemas.DisksMigrationVmTargetDefaults.properties.metadata.additionalProperties.type - schemas.DisksMigrationVmTargetDefaults.properties.metadata.description - schemas.DisksMigrationVmTargetDefaults.properties.metadata.type - schemas.DisksMigrationVmTargetDefaults.properties.networkInterfaces.description - schemas.DisksMigrationVmTargetDefaults.properties.networkInterfaces.items.$ref - schemas.DisksMigrationVmTargetDefaults.properties.networkInterfaces.type - schemas.DisksMigrationVmTargetDefaults.properties.networkTags.description - schemas.DisksMigrationVmTargetDefaults.properties.networkTags.items.type - schemas.DisksMigrationVmTargetDefaults.properties.networkTags.type - schemas.DisksMigrationVmTargetDefaults.properties.secureBoot.description - schemas.DisksMigrationVmTargetDefaults.properties.secureBoot.type - schemas.DisksMigrationVmTargetDefaults.properties.serviceAccount.description - schemas.DisksMigrationVmTargetDefaults.properties.serviceAccount.type - schemas.DisksMigrationVmTargetDefaults.properties.vmName.description - schemas.DisksMigrationVmTargetDefaults.properties.vmName.type - schemas.DisksMigrationVmTargetDefaults.type - schemas.DisksMigrationVmTargetDetails.description - schemas.DisksMigrationVmTargetDetails.id - schemas.DisksMigrationVmTargetDetails.properties.vmUri.description - schemas.DisksMigrationVmTargetDetails.properties.vmUri.readOnly - schemas.DisksMigrationVmTargetDetails.properties.vmUri.type - schemas.DisksMigrationVmTargetDetails.type - schemas.PersistentDiskDefaults.properties.vmAttachmentDetails.$ref - schemas.PersistentDiskDefaults.properties.vmAttachmentDetails.description - schemas.VmAttachmentDetails.description - schemas.VmAttachmentDetails.id - schemas.VmAttachmentDetails.properties.deviceName.description - schemas.VmAttachmentDetails.properties.deviceName.type - schemas.VmAttachmentDetails.type --- discovery/vmmigration-v1.json | 177 +++++++++++++++++++++++++++- discovery/vmmigration-v1alpha1.json | 177 +++++++++++++++++++++++++++- src/apis/vmmigration/v1.ts | 133 +++++++++++++++++++++ src/apis/vmmigration/v1alpha1.ts | 133 +++++++++++++++++++++ 4 files changed, 618 insertions(+), 2 deletions(-) diff --git a/discovery/vmmigration-v1.json b/discovery/vmmigration-v1.json index 66878a3712..7d7f0aa4f7 100644 --- a/discovery/vmmigration-v1.json +++ b/discovery/vmmigration-v1.json @@ -1972,7 +1972,7 @@ } } }, - "revision": "20230907", + "revision": "20230914", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -2590,6 +2590,41 @@ }, "type": "object" }, + "BootDiskDefaults": { + "description": "BootDiskDefaults hold information about the boot disk of a VM.", + "id": "BootDiskDefaults", + "properties": { + "deviceName": { + "description": "Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks.", + "type": "string" + }, + "diskName": { + "description": "Optional. The name of the disk.", + "type": "string" + }, + "diskType": { + "description": "Optional. The type of disk provisioning to use for the VM.", + "enum": [ + "COMPUTE_ENGINE_DISK_TYPE_UNSPECIFIED", + "COMPUTE_ENGINE_DISK_TYPE_STANDARD", + "COMPUTE_ENGINE_DISK_TYPE_SSD", + "COMPUTE_ENGINE_DISK_TYPE_BALANCED" + ], + "enumDescriptions": [ + "An unspecified disk type. Will be used as STANDARD.", + "A Standard disk type.", + "SSD hard disk type.", + "An alternative to SSD persistent disks that balance performance and cost." + ], + "type": "string" + }, + "image": { + "$ref": "DiskImageDefaults", + "description": "The image to use when creating the disk." + } + }, + "type": "object" + }, "CancelCloneJobRequest": { "description": "Request message for 'CancelCloneJob' request.", "id": "CancelCloneJobRequest", @@ -2745,10 +2780,18 @@ }, "type": "array" }, + "disksTargetDefaults": { + "$ref": "DisksMigrationDisksTargetDefaults", + "description": "Details of the disk only migration target." + }, "targetProject": { "description": "The full path of the resource of type TargetProject which represents the Compute Engine project in which to create the Persistent Disks.", "type": "string" }, + "vmTargetDefaults": { + "$ref": "DisksMigrationVmTargetDefaults", + "description": "Details of the VM migration target." + }, "zone": { "description": "The zone in which to create the Persistent Disks.", "type": "string" @@ -2766,6 +2809,14 @@ "$ref": "PersistentDisk" }, "type": "array" + }, + "disksTargetDetails": { + "$ref": "DisksMigrationDisksTargetDetails", + "description": "Details of the disks-only migration target." + }, + "vmTargetDetails": { + "$ref": "DisksMigrationVmTargetDetails", + "description": "Details for the VM the migrated data disks are attached to." } }, "type": "object" @@ -3351,6 +3402,115 @@ }, "type": "object" }, + "DiskImageDefaults": { + "description": "Contains details about the image source used to create the disk.", + "id": "DiskImageDefaults", + "properties": { + "sourceImage": { + "description": "Required. The Image resource used when creating the disk.", + "type": "string" + } + }, + "type": "object" + }, + "DisksMigrationDisksTargetDefaults": { + "description": "Details for a disk only migration.", + "id": "DisksMigrationDisksTargetDefaults", + "properties": {}, + "type": "object" + }, + "DisksMigrationDisksTargetDetails": { + "description": "Details for a disks-only migration.", + "id": "DisksMigrationDisksTargetDetails", + "properties": {}, + "type": "object" + }, + "DisksMigrationVmTargetDefaults": { + "description": "Details for creation of a VM that migrated data disks will be attached to.", + "id": "DisksMigrationVmTargetDefaults", + "properties": { + "additionalLicenses": { + "description": "Optional. Additional licenses to assign to the VM.", + "items": { + "type": "string" + }, + "type": "array" + }, + "bootDiskDefaults": { + "$ref": "BootDiskDefaults", + "description": "Optional. Details of the boot disk of the VM." + }, + "computeScheduling": { + "$ref": "ComputeScheduling", + "description": "Optional. Compute instance scheduling information (if empty default is used)." + }, + "hostname": { + "description": "Optional. The hostname to assign to the VM.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A map of labels to associate with the VM.", + "type": "object" + }, + "machineType": { + "description": "Required. The machine type to create the VM with.", + "type": "string" + }, + "machineTypeSeries": { + "description": "Optional. The machine type series to create the VM with. For presentation only.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The metadata key/value pairs to assign to the VM.", + "type": "object" + }, + "networkInterfaces": { + "description": "Optional. NICs to attach to the VM.", + "items": { + "$ref": "NetworkInterface" + }, + "type": "array" + }, + "networkTags": { + "description": "Optional. A list of network tags to associate with the VM.", + "items": { + "type": "string" + }, + "type": "array" + }, + "secureBoot": { + "description": "Optional. Defines whether the instance has Secure Boot enabled. This can be set to true only if the VM boot option is EFI.", + "type": "boolean" + }, + "serviceAccount": { + "description": "Optional. The service account to associate the VM with.", + "type": "string" + }, + "vmName": { + "description": "Required. The name of the VM to create.", + "type": "string" + } + }, + "type": "object" + }, + "DisksMigrationVmTargetDetails": { + "description": "Details for the VM created VM as part of disks migration.", + "id": "DisksMigrationVmTargetDetails", + "properties": { + "vmUri": { + "description": "Output only. The URI of the Compute Engine VM.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Empty": { "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); }", "id": "Empty", @@ -4259,6 +4419,10 @@ "description": "Required. The ordinal number of the source VM disk.", "format": "int32", "type": "integer" + }, + "vmAttachmentDetails": { + "$ref": "VmAttachmentDetails", + "description": "Optional. Details for attachment of the disk to a VM. Used when the disk is set to be attacked to a target VM." } }, "type": "object" @@ -4722,6 +4886,17 @@ }, "type": "object" }, + "VmAttachmentDetails": { + "description": "Details for attachment of the disk to a VM.", + "id": "VmAttachmentDetails", + "properties": { + "deviceName": { + "description": "Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks.", + "type": "string" + } + }, + "type": "object" + }, "VmCapabilities": { "description": "Migrating VM source information about the VM capabilities needed for some Compute Engine features.", "id": "VmCapabilities", diff --git a/discovery/vmmigration-v1alpha1.json b/discovery/vmmigration-v1alpha1.json index d0574f0e8a..e567267034 100644 --- a/discovery/vmmigration-v1alpha1.json +++ b/discovery/vmmigration-v1alpha1.json @@ -1972,7 +1972,7 @@ } } }, - "revision": "20230907", + "revision": "20230914", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -2590,6 +2590,41 @@ }, "type": "object" }, + "BootDiskDefaults": { + "description": "BootDiskDefaults hold information about the boot disk of a VM.", + "id": "BootDiskDefaults", + "properties": { + "deviceName": { + "description": "Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks.", + "type": "string" + }, + "diskName": { + "description": "Optional. The name of the disk.", + "type": "string" + }, + "diskType": { + "description": "Optional. The type of disk provisioning to use for the VM.", + "enum": [ + "COMPUTE_ENGINE_DISK_TYPE_UNSPECIFIED", + "COMPUTE_ENGINE_DISK_TYPE_STANDARD", + "COMPUTE_ENGINE_DISK_TYPE_SSD", + "COMPUTE_ENGINE_DISK_TYPE_BALANCED" + ], + "enumDescriptions": [ + "An unspecified disk type. Will be used as STANDARD.", + "A Standard disk type.", + "SSD hard disk type.", + "An alternative to SSD persistent disks that balance performance and cost." + ], + "type": "string" + }, + "image": { + "$ref": "DiskImageDefaults", + "description": "The image to use when creating the disk." + } + }, + "type": "object" + }, "CancelCloneJobRequest": { "description": "Request message for 'CancelCloneJob' request.", "id": "CancelCloneJobRequest", @@ -2757,10 +2792,18 @@ }, "type": "array" }, + "disksTargetDefaults": { + "$ref": "DisksMigrationDisksTargetDefaults", + "description": "Details of the disk only migration target." + }, "targetProject": { "description": "The full path of the resource of type TargetProject which represents the Compute Engine project in which to create the Persistent Disks.", "type": "string" }, + "vmTargetDefaults": { + "$ref": "DisksMigrationVmTargetDefaults", + "description": "Details of the VM migration target." + }, "zone": { "description": "The zone in which to create the Persistent Disks.", "type": "string" @@ -2778,6 +2821,14 @@ "$ref": "PersistentDisk" }, "type": "array" + }, + "disksTargetDetails": { + "$ref": "DisksMigrationDisksTargetDetails", + "description": "Details of the disks-only migration target." + }, + "vmTargetDetails": { + "$ref": "DisksMigrationVmTargetDetails", + "description": "Details for the VM the migrated data disks are attached to." } }, "type": "object" @@ -3386,6 +3437,115 @@ }, "type": "object" }, + "DiskImageDefaults": { + "description": "Contains details about the image source used to create the disk.", + "id": "DiskImageDefaults", + "properties": { + "sourceImage": { + "description": "Required. The Image resource used when creating the disk.", + "type": "string" + } + }, + "type": "object" + }, + "DisksMigrationDisksTargetDefaults": { + "description": "Details for a disk only migration.", + "id": "DisksMigrationDisksTargetDefaults", + "properties": {}, + "type": "object" + }, + "DisksMigrationDisksTargetDetails": { + "description": "Details for a disks-only migration.", + "id": "DisksMigrationDisksTargetDetails", + "properties": {}, + "type": "object" + }, + "DisksMigrationVmTargetDefaults": { + "description": "Details for creation of a VM that migrated data disks will be attached to.", + "id": "DisksMigrationVmTargetDefaults", + "properties": { + "additionalLicenses": { + "description": "Optional. Additional licenses to assign to the VM.", + "items": { + "type": "string" + }, + "type": "array" + }, + "bootDiskDefaults": { + "$ref": "BootDiskDefaults", + "description": "Optional. Details of the boot disk of the VM." + }, + "computeScheduling": { + "$ref": "ComputeScheduling", + "description": "Optional. Compute instance scheduling information (if empty default is used)." + }, + "hostname": { + "description": "Optional. The hostname to assign to the VM.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A map of labels to associate with the VM.", + "type": "object" + }, + "machineType": { + "description": "Required. The machine type to create the VM with.", + "type": "string" + }, + "machineTypeSeries": { + "description": "Optional. The machine type series to create the VM with. For presentation only.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The metadata key/value pairs to assign to the VM.", + "type": "object" + }, + "networkInterfaces": { + "description": "Optional. NICs to attach to the VM.", + "items": { + "$ref": "NetworkInterface" + }, + "type": "array" + }, + "networkTags": { + "description": "Optional. A list of network tags to associate with the VM.", + "items": { + "type": "string" + }, + "type": "array" + }, + "secureBoot": { + "description": "Optional. Defines whether the instance has Secure Boot enabled. This can be set to true only if the VM boot option is EFI.", + "type": "boolean" + }, + "serviceAccount": { + "description": "Optional. The service account to associate the VM with.", + "type": "string" + }, + "vmName": { + "description": "Required. The name of the VM to create.", + "type": "string" + } + }, + "type": "object" + }, + "DisksMigrationVmTargetDetails": { + "description": "Details for the VM created VM as part of disks migration.", + "id": "DisksMigrationVmTargetDetails", + "properties": { + "vmUri": { + "description": "Output only. The URI of the Compute Engine VM.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Empty": { "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); }", "id": "Empty", @@ -4304,6 +4464,10 @@ "description": "Required. The ordinal number of the source VM disk.", "format": "int32", "type": "integer" + }, + "vmAttachmentDetails": { + "$ref": "VmAttachmentDetails", + "description": "Optional. Details for attachment of the disk to a VM. Used when the disk is set to be attacked to a target VM." } }, "type": "object" @@ -4926,6 +5090,17 @@ }, "type": "object" }, + "VmAttachmentDetails": { + "description": "Details for attachment of the disk to a VM.", + "id": "VmAttachmentDetails", + "properties": { + "deviceName": { + "description": "Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks.", + "type": "string" + } + }, + "type": "object" + }, "VmCapabilities": { "description": "Migrating VM source information about the VM capabilities needed for some Compute Engine features.", "id": "VmCapabilities", diff --git a/src/apis/vmmigration/v1.ts b/src/apis/vmmigration/v1.ts index cabd50a763..2b52f466b0 100644 --- a/src/apis/vmmigration/v1.ts +++ b/src/apis/vmmigration/v1.ts @@ -512,6 +512,27 @@ export namespace vmmigration_v1 { */ details?: Schema$AzureVmDetails[]; } + /** + * BootDiskDefaults hold information about the boot disk of a VM. + */ + export interface Schema$BootDiskDefaults { + /** + * Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks. + */ + deviceName?: string | null; + /** + * Optional. The name of the disk. + */ + diskName?: string | null; + /** + * Optional. The type of disk provisioning to use for the VM. + */ + diskType?: string | null; + /** + * The image to use when creating the disk. + */ + image?: Schema$DiskImageDefaults; + } /** * Request message for 'CancelCloneJob' request. */ @@ -615,10 +636,18 @@ export namespace vmmigration_v1 { * The details of each Persistent Disk to create. */ disks?: Schema$PersistentDiskDefaults[]; + /** + * Details of the disk only migration target. + */ + disksTargetDefaults?: Schema$DisksMigrationDisksTargetDefaults; /** * The full path of the resource of type TargetProject which represents the Compute Engine project in which to create the Persistent Disks. */ targetProject?: string | null; + /** + * Details of the VM migration target. + */ + vmTargetDefaults?: Schema$DisksMigrationVmTargetDefaults; /** * The zone in which to create the Persistent Disks. */ @@ -632,6 +661,14 @@ export namespace vmmigration_v1 { * The details of each created Persistent Disk. */ disks?: Schema$PersistentDisk[]; + /** + * Details of the disks-only migration target. + */ + disksTargetDetails?: Schema$DisksMigrationDisksTargetDetails; + /** + * Details for the VM the migrated data disks are attached to. + */ + vmTargetDetails?: Schema$DisksMigrationVmTargetDetails; } /** * ComputeEngineTargetDefaults is a collection of details for creating a VM in a target Compute Engine project. @@ -1002,6 +1039,89 @@ export namespace vmmigration_v1 { */ sizeGb?: number | null; } + /** + * Contains details about the image source used to create the disk. + */ + export interface Schema$DiskImageDefaults { + /** + * Required. The Image resource used when creating the disk. + */ + sourceImage?: string | null; + } + /** + * Details for a disk only migration. + */ + export interface Schema$DisksMigrationDisksTargetDefaults {} + /** + * Details for a disks-only migration. + */ + export interface Schema$DisksMigrationDisksTargetDetails {} + /** + * Details for creation of a VM that migrated data disks will be attached to. + */ + export interface Schema$DisksMigrationVmTargetDefaults { + /** + * Optional. Additional licenses to assign to the VM. + */ + additionalLicenses?: string[] | null; + /** + * Optional. Details of the boot disk of the VM. + */ + bootDiskDefaults?: Schema$BootDiskDefaults; + /** + * Optional. Compute instance scheduling information (if empty default is used). + */ + computeScheduling?: Schema$ComputeScheduling; + /** + * Optional. The hostname to assign to the VM. + */ + hostname?: string | null; + /** + * Optional. A map of labels to associate with the VM. + */ + labels?: {[key: string]: string} | null; + /** + * Required. The machine type to create the VM with. + */ + machineType?: string | null; + /** + * Optional. The machine type series to create the VM with. For presentation only. + */ + machineTypeSeries?: string | null; + /** + * Optional. The metadata key/value pairs to assign to the VM. + */ + metadata?: {[key: string]: string} | null; + /** + * Optional. NICs to attach to the VM. + */ + networkInterfaces?: Schema$NetworkInterface[]; + /** + * Optional. A list of network tags to associate with the VM. + */ + networkTags?: string[] | null; + /** + * Optional. Defines whether the instance has Secure Boot enabled. This can be set to true only if the VM boot option is EFI. + */ + secureBoot?: boolean | null; + /** + * Optional. The service account to associate the VM with. + */ + serviceAccount?: string | null; + /** + * Required. The name of the VM to create. + */ + vmName?: string | null; + } + /** + * Details for the VM created VM as part of disks migration. + */ + export interface Schema$DisksMigrationVmTargetDetails { + /** + * Output only. The URI of the Compute Engine VM. + */ + vmUri?: string | null; + } /** * 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); \} */ @@ -1603,6 +1723,10 @@ export namespace vmmigration_v1 { * Required. The ordinal number of the source VM disk. */ sourceDiskNumber?: number | null; + /** + * Optional. Details for attachment of the disk to a VM. Used when the disk is set to be attacked to a target VM. + */ + vmAttachmentDetails?: Schema$VmAttachmentDetails; } /** * PostProcessingStep contains specific step details. @@ -1909,6 +2033,15 @@ export namespace vmmigration_v1 { */ vms?: Schema$VmUtilizationInfo[]; } + /** + * Details for attachment of the disk to a VM. + */ + export interface Schema$VmAttachmentDetails { + /** + * Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks. + */ + deviceName?: string | null; + } /** * Migrating VM source information about the VM capabilities needed for some Compute Engine features. */ diff --git a/src/apis/vmmigration/v1alpha1.ts b/src/apis/vmmigration/v1alpha1.ts index bf5d009903..36892982bd 100644 --- a/src/apis/vmmigration/v1alpha1.ts +++ b/src/apis/vmmigration/v1alpha1.ts @@ -512,6 +512,27 @@ export namespace vmmigration_v1alpha1 { */ details?: Schema$AzureVmDetails[]; } + /** + * BootDiskDefaults hold information about the boot disk of a VM. + */ + export interface Schema$BootDiskDefaults { + /** + * Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks. + */ + deviceName?: string | null; + /** + * Optional. The name of the disk. + */ + diskName?: string | null; + /** + * Optional. The type of disk provisioning to use for the VM. + */ + diskType?: string | null; + /** + * The image to use when creating the disk. + */ + image?: Schema$DiskImageDefaults; + } /** * Request message for 'CancelCloneJob' request. */ @@ -623,10 +644,18 @@ export namespace vmmigration_v1alpha1 { * The details of each Persistent Disk to create. */ disks?: Schema$PersistentDiskDefaults[]; + /** + * Details of the disk only migration target. + */ + disksTargetDefaults?: Schema$DisksMigrationDisksTargetDefaults; /** * The full path of the resource of type TargetProject which represents the Compute Engine project in which to create the Persistent Disks. */ targetProject?: string | null; + /** + * Details of the VM migration target. + */ + vmTargetDefaults?: Schema$DisksMigrationVmTargetDefaults; /** * The zone in which to create the Persistent Disks. */ @@ -640,6 +669,14 @@ export namespace vmmigration_v1alpha1 { * The details of each created Persistent Disk. */ disks?: Schema$PersistentDisk[]; + /** + * Details of the disks-only migration target. + */ + disksTargetDetails?: Schema$DisksMigrationDisksTargetDetails; + /** + * Details for the VM the migrated data disks are attached to. + */ + vmTargetDetails?: Schema$DisksMigrationVmTargetDetails; } /** * ComputeEngineTargetDefaults is a collection of details for creating a VM in a target Compute Engine project. @@ -1023,6 +1060,89 @@ export namespace vmmigration_v1alpha1 { */ sizeGb?: number | null; } + /** + * Contains details about the image source used to create the disk. + */ + export interface Schema$DiskImageDefaults { + /** + * Required. The Image resource used when creating the disk. + */ + sourceImage?: string | null; + } + /** + * Details for a disk only migration. + */ + export interface Schema$DisksMigrationDisksTargetDefaults {} + /** + * Details for a disks-only migration. + */ + export interface Schema$DisksMigrationDisksTargetDetails {} + /** + * Details for creation of a VM that migrated data disks will be attached to. + */ + export interface Schema$DisksMigrationVmTargetDefaults { + /** + * Optional. Additional licenses to assign to the VM. + */ + additionalLicenses?: string[] | null; + /** + * Optional. Details of the boot disk of the VM. + */ + bootDiskDefaults?: Schema$BootDiskDefaults; + /** + * Optional. Compute instance scheduling information (if empty default is used). + */ + computeScheduling?: Schema$ComputeScheduling; + /** + * Optional. The hostname to assign to the VM. + */ + hostname?: string | null; + /** + * Optional. A map of labels to associate with the VM. + */ + labels?: {[key: string]: string} | null; + /** + * Required. The machine type to create the VM with. + */ + machineType?: string | null; + /** + * Optional. The machine type series to create the VM with. For presentation only. + */ + machineTypeSeries?: string | null; + /** + * Optional. The metadata key/value pairs to assign to the VM. + */ + metadata?: {[key: string]: string} | null; + /** + * Optional. NICs to attach to the VM. + */ + networkInterfaces?: Schema$NetworkInterface[]; + /** + * Optional. A list of network tags to associate with the VM. + */ + networkTags?: string[] | null; + /** + * Optional. Defines whether the instance has Secure Boot enabled. This can be set to true only if the VM boot option is EFI. + */ + secureBoot?: boolean | null; + /** + * Optional. The service account to associate the VM with. + */ + serviceAccount?: string | null; + /** + * Required. The name of the VM to create. + */ + vmName?: string | null; + } + /** + * Details for the VM created VM as part of disks migration. + */ + export interface Schema$DisksMigrationVmTargetDetails { + /** + * Output only. The URI of the Compute Engine VM. + */ + vmUri?: string | null; + } /** * 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); \} */ @@ -1632,6 +1752,10 @@ export namespace vmmigration_v1alpha1 { * Required. The ordinal number of the source VM disk. */ sourceDiskNumber?: number | null; + /** + * Optional. Details for attachment of the disk to a VM. Used when the disk is set to be attacked to a target VM. + */ + vmAttachmentDetails?: Schema$VmAttachmentDetails; } /** * PostProcessingStep contains specific step details. @@ -2039,6 +2163,15 @@ export namespace vmmigration_v1alpha1 { */ vmsCount?: number | null; } + /** + * Details for attachment of the disk to a VM. + */ + export interface Schema$VmAttachmentDetails { + /** + * Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks. + */ + deviceName?: string | null; + } /** * Migrating VM source information about the VM capabilities needed for some Compute Engine features. */ From dcef5c015375727a64d6db5df091de1dcc458105 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:28 +0000 Subject: [PATCH 25/28] fix(workflowexecutions): update the API #### workflowexecutions:v1 The following keys were changed: - resources.projects.resources.locations.resources.workflows.resources.executions.methods.exportData.description - resources.projects.resources.locations.resources.workflows.resources.executions.methods.exportData.parameters.name.description - resources.projects.resources.locations.resources.workflows.resources.executions.resources.callbacks.methods.list.description - schemas.Callback.properties.method.description - schemas.ExportDataResponse.properties.data.description --- discovery/workflowexecutions-v1.json | 12 ++++++------ src/apis/workflowexecutions/v1.ts | 10 +++++----- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/discovery/workflowexecutions-v1.json b/discovery/workflowexecutions-v1.json index 48f2b0f20f..d451caa2a2 100644 --- a/discovery/workflowexecutions-v1.json +++ b/discovery/workflowexecutions-v1.json @@ -200,7 +200,7 @@ ] }, "exportData": { - "description": "Returns all metadata stored about an execution, excluding most data that is already accessible via other API methods.", + "description": "Returns all metadata stored about an execution, excluding most data that is already accessible using other API methods.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workflows/{workflowsId}/executions/{executionsId}:exportData", "httpMethod": "GET", "id": "workflowexecutions.projects.locations.workflows.executions.exportData", @@ -209,7 +209,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the execution to be data exported. Format: projects/{project}/locations/{location}/workflows/{workflow}/executions/{execution}", + "description": "Required. Name of the execution for which data is to be exported. Format: projects/{project}/locations/{location}/workflows/{workflow}/executions/{execution}", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/workflows/[^/]+/executions/[^/]+$", "required": true, @@ -330,7 +330,7 @@ "callbacks": { "methods": { "list": { - "description": "Returns a list of active callbacks which belong to the execution with the given name. The returned callbacks are ordered by callback ID. first).", + "description": "Returns a list of active callbacks that belong to the execution with the given name. The returned callbacks are ordered by callback ID.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workflows/{workflowsId}/executions/{executionsId}/callbacks", "httpMethod": "GET", "id": "workflowexecutions.projects.locations.workflows.executions.callbacks.list", @@ -376,7 +376,7 @@ } } }, - "revision": "20230905", + "revision": "20230912", "rootUrl": "https://workflowexecutions.googleapis.com/", "schemas": { "Callback": { @@ -392,7 +392,7 @@ "type": "array" }, "method": { - "description": "Output only. The method accepted by the callback. E.g. GET, POST, PUT.", + "description": "Output only. The method accepted by the callback. For example: GET, POST, PUT.", "readOnly": true, "type": "string" }, @@ -545,7 +545,7 @@ "id": "ExportDataResponse", "properties": { "data": { - "description": "The JSON string with customer data and metadata of an execution of the given name", + "description": "The JSON string with customer data and metadata for an execution with the given name", "type": "string" } }, diff --git a/src/apis/workflowexecutions/v1.ts b/src/apis/workflowexecutions/v1.ts index 62cfac24e2..c7208896bc 100644 --- a/src/apis/workflowexecutions/v1.ts +++ b/src/apis/workflowexecutions/v1.ts @@ -133,7 +133,7 @@ export namespace workflowexecutions_v1 { */ availablePayloads?: string[] | null; /** - * Output only. The method accepted by the callback. E.g. GET, POST, PUT. + * Output only. The method accepted by the callback. For example: GET, POST, PUT. */ method?: string | null; /** @@ -228,7 +228,7 @@ export namespace workflowexecutions_v1 { */ export interface Schema$ExportDataResponse { /** - * The JSON string with customer data and metadata of an execution of the given name + * The JSON string with customer data and metadata for an execution with the given name */ data?: string | null; } @@ -703,7 +703,7 @@ export namespace workflowexecutions_v1 { } /** - * Returns all metadata stored about an execution, excluding most data that is already accessible via other API methods. + * Returns all metadata stored about an execution, excluding most data that is already accessible using other API methods. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. @@ -1002,7 +1002,7 @@ export namespace workflowexecutions_v1 { export interface Params$Resource$Projects$Locations$Workflows$Executions$Exportdata extends StandardParameters { /** - * Required. Name of the execution to be data exported. Format: projects/{project\}/locations/{location\}/workflows/{workflow\}/executions/{execution\} + * Required. Name of the execution for which data is to be exported. Format: projects/{project\}/locations/{location\}/workflows/{workflow\}/executions/{execution\} */ name?: string; } @@ -1052,7 +1052,7 @@ export namespace workflowexecutions_v1 { } /** - * Returns a list of active callbacks which belong to the execution with the given name. The returned callbacks are ordered by callback ID. first). + * Returns a list of active callbacks that belong to the execution with the given name. The returned callbacks are ordered by callback ID. * * @param params - Parameters for request * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. From df12518a76d0d171c8c10c66bb436e00eff9250a Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:28 +0000 Subject: [PATCH 26/28] fix(workflows): update the API #### workflows:v1 The following keys were changed: - resources.projects.resources.locations.resources.workflows.methods.listRevisions.parameters.name.description - resources.projects.resources.locations.resources.workflows.methods.listRevisions.parameters.pageSize.description - resources.projects.resources.locations.resources.workflows.methods.patch.parameters.name.description - schemas.Workflow.properties.createTime.description - schemas.Workflow.properties.description.description - schemas.Workflow.properties.labels.description - schemas.Workflow.properties.name.description - schemas.Workflow.properties.updateTime.description --- discovery/workflows-v1.json | 18 +++++++++--------- src/apis/workflows/v1.ts | 16 ++++++++-------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/discovery/workflows-v1.json b/discovery/workflows-v1.json index 5f28e77e67..9728e75255 100644 --- a/discovery/workflows-v1.json +++ b/discovery/workflows-v1.json @@ -418,14 +418,14 @@ ], "parameters": { "name": { - "description": "Required. Workflow from which the revisions should be listed. Format: projects/{project}/locations/{location}/workflows/{workflow}", + "description": "Required. Workflow for which the revisions should be listed. Format: projects/{project}/locations/{location}/workflows/{workflow}", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/workflows/[^/]+$", "required": true, "type": "string" }, "pageSize": { - "description": "The maximum number of revisions to return per page. If a value is not specified, a default value of 20 is used. The maximum permitted value is 100 and values greater than 100 coerced down to 100.", + "description": "The maximum number of revisions to return per page. If a value is not specified, a default value of 20 is used. The maximum permitted value is 100. Values greater than 100 are coerced down to 100.", "format": "int32", "location": "query", "type": "integer" @@ -454,7 +454,7 @@ ], "parameters": { "name": { - "description": "The resource name of the workflow. Format: projects/{project}/locations/{location}/workflows/{workflow}", + "description": "The resource name of the workflow. Format: projects/{project}/locations/{location}/workflows/{workflow}. This is a workflow-wide field and is not tied to a specific revision.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/workflows/[^/]+$", "required": true, @@ -485,7 +485,7 @@ } } }, - "revision": "20230906", + "revision": "20230913", "rootUrl": "https://workflows.googleapis.com/", "schemas": { "Empty": { @@ -742,7 +742,7 @@ "type": "string" }, "createTime": { - "description": "Output only. The timestamp for when the workflow was created.", + "description": "Output only. The timestamp for when the workflow was created. This is a workflow-wide field and is not tied to a specific revision.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -752,18 +752,18 @@ "type": "string" }, "description": { - "description": "Description of the workflow provided by the user. Must be at most 1000 unicode characters long.", + "description": "Description of the workflow provided by the user. Must be at most 1000 Unicode characters long. This is a workflow-wide field and is not tied to a specific revision.", "type": "string" }, "labels": { "additionalProperties": { "type": "string" }, - "description": "Labels associated with this workflow. Labels can contain at most 64 entries. Keys and values can be no longer than 63 characters and can only contain lowercase letters, numeric characters, underscores, and dashes. Label keys must start with a letter. International characters are allowed.", + "description": "Labels associated with this workflow. Labels can contain at most 64 entries. Keys and values can be no longer than 63 characters and can only contain lowercase letters, numeric characters, underscores, and dashes. Label keys must start with a letter. International characters are allowed. This is a workflow-wide field and is not tied to a specific revision.", "type": "object" }, "name": { - "description": "The resource name of the workflow. Format: projects/{project}/locations/{location}/workflows/{workflow}", + "description": "The resource name of the workflow. Format: projects/{project}/locations/{location}/workflows/{workflow}. This is a workflow-wide field and is not tied to a specific revision.", "type": "string" }, "revisionCreateTime": { @@ -806,7 +806,7 @@ "readOnly": true }, "updateTime": { - "description": "Output only. The timestamp for when the workflow was last updated.", + "description": "Output only. The timestamp for when the workflow was last updated. This is a workflow-wide field and is not tied to a specific revision.", "format": "google-datetime", "readOnly": true, "type": "string" diff --git a/src/apis/workflows/v1.ts b/src/apis/workflows/v1.ts index 3c4bd9239e..7714754d0b 100644 --- a/src/apis/workflows/v1.ts +++ b/src/apis/workflows/v1.ts @@ -298,7 +298,7 @@ export namespace workflows_v1 { */ callLogLevel?: string | null; /** - * Output only. The timestamp for when the workflow was created. + * Output only. The timestamp for when the workflow was created. This is a workflow-wide field and is not tied to a specific revision. */ createTime?: string | null; /** @@ -306,15 +306,15 @@ export namespace workflows_v1 { */ cryptoKeyName?: string | null; /** - * Description of the workflow provided by the user. Must be at most 1000 unicode characters long. + * Description of the workflow provided by the user. Must be at most 1000 Unicode characters long. This is a workflow-wide field and is not tied to a specific revision. */ description?: string | null; /** - * Labels associated with this workflow. Labels can contain at most 64 entries. Keys and values can be no longer than 63 characters and can only contain lowercase letters, numeric characters, underscores, and dashes. Label keys must start with a letter. International characters are allowed. + * Labels associated with this workflow. Labels can contain at most 64 entries. Keys and values can be no longer than 63 characters and can only contain lowercase letters, numeric characters, underscores, and dashes. Label keys must start with a letter. International characters are allowed. This is a workflow-wide field and is not tied to a specific revision. */ labels?: {[key: string]: string} | null; /** - * The resource name of the workflow. Format: projects/{project\}/locations/{location\}/workflows/{workflow\} + * The resource name of the workflow. Format: projects/{project\}/locations/{location\}/workflows/{workflow\}. This is a workflow-wide field and is not tied to a specific revision. */ name?: string | null; /** @@ -342,7 +342,7 @@ export namespace workflows_v1 { */ stateError?: Schema$StateError; /** - * Output only. The timestamp for when the workflow was last updated. + * Output only. The timestamp for when the workflow was last updated. This is a workflow-wide field and is not tied to a specific revision. */ updateTime?: string | null; /** @@ -1472,11 +1472,11 @@ export namespace workflows_v1 { export interface Params$Resource$Projects$Locations$Workflows$Listrevisions extends StandardParameters { /** - * Required. Workflow from which the revisions should be listed. Format: projects/{project\}/locations/{location\}/workflows/{workflow\} + * Required. Workflow for which the revisions should be listed. Format: projects/{project\}/locations/{location\}/workflows/{workflow\} */ name?: string; /** - * The maximum number of revisions to return per page. If a value is not specified, a default value of 20 is used. The maximum permitted value is 100 and values greater than 100 coerced down to 100. + * The maximum number of revisions to return per page. If a value is not specified, a default value of 20 is used. The maximum permitted value is 100. Values greater than 100 are coerced down to 100. */ pageSize?: number; /** @@ -1487,7 +1487,7 @@ export namespace workflows_v1 { export interface Params$Resource$Projects$Locations$Workflows$Patch extends StandardParameters { /** - * The resource name of the workflow. Format: projects/{project\}/locations/{location\}/workflows/{workflow\} + * The resource name of the workflow. Format: projects/{project\}/locations/{location\}/workflows/{workflow\}. This is a workflow-wide field and is not tied to a specific revision. */ name?: string; /** From efd9a5384127d12e47c569ced48e3d60576ad5df Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 26 Sep 2023 01:31:28 +0000 Subject: [PATCH 27/28] feat: regenerate index files --- discovery/aiplatform-v1.json | 94 +++++++++++----------- discovery/aiplatform-v1beta1.json | 100 ++++++++++++------------ discovery/appengine-v1beta.json | 6 +- discovery/artifactregistry-v1.json | 4 +- discovery/artifactregistry-v1beta1.json | 2 +- discovery/index.json | 60 ++++++++++++++ discovery/logging-v2.json | 4 +- discovery/pubsub-v1.json | 6 +- discovery/pubsub-v1beta1a.json | 6 +- src/apis/index.ts | 3 + src/index.ts | 3 + 11 files changed, 178 insertions(+), 110 deletions(-) diff --git a/discovery/aiplatform-v1.json b/discovery/aiplatform-v1.json index cb8f69180e..2ae6f808b7 100644 --- a/discovery/aiplatform-v1.json +++ b/discovery/aiplatform-v1.json @@ -20,9 +20,9 @@ "documentationLink": "https://cloud.google.com/vertex-ai/", "endpoints": [ { + "endpointUrl": "https://asia-east1-aiplatform.googleapis.com/", "description": "Locational Endpoint", - "location": "asia-east1", - "endpointUrl": "https://asia-east1-aiplatform.googleapis.com/" + "location": "asia-east1" }, { "location": "asia-east2", @@ -30,19 +30,19 @@ "description": "Locational Endpoint" }, { - "location": "asia-northeast1", "endpointUrl": "https://asia-northeast1-aiplatform.googleapis.com/", + "location": "asia-northeast1", "description": "Locational Endpoint" }, { "endpointUrl": "https://asia-northeast2-aiplatform.googleapis.com/", - "description": "Locational Endpoint", - "location": "asia-northeast2" + "location": "asia-northeast2", + "description": "Locational Endpoint" }, { "description": "Locational Endpoint", - "endpointUrl": "https://asia-northeast3-aiplatform.googleapis.com/", - "location": "asia-northeast3" + "location": "asia-northeast3", + "endpointUrl": "https://asia-northeast3-aiplatform.googleapis.com/" }, { "location": "asia-south1", @@ -50,8 +50,8 @@ "description": "Locational Endpoint" }, { - "endpointUrl": "https://asia-southeast1-aiplatform.googleapis.com/", "description": "Locational Endpoint", + "endpointUrl": "https://asia-southeast1-aiplatform.googleapis.com/", "location": "asia-southeast1" }, { @@ -60,9 +60,9 @@ "description": "Locational Endpoint" }, { + "location": "australia-southeast1", "description": "Locational Endpoint", - "endpointUrl": "https://australia-southeast1-aiplatform.googleapis.com/", - "location": "australia-southeast1" + "endpointUrl": "https://australia-southeast1-aiplatform.googleapis.com/" }, { "location": "australia-southeast2", @@ -70,39 +70,39 @@ "endpointUrl": "https://australia-southeast2-aiplatform.googleapis.com/" }, { - "endpointUrl": "https://europe-central2-aiplatform.googleapis.com/", "description": "Locational Endpoint", + "endpointUrl": "https://europe-central2-aiplatform.googleapis.com/", "location": "europe-central2" }, { + "endpointUrl": "https://europe-north1-aiplatform.googleapis.com/", "location": "europe-north1", - "description": "Locational Endpoint", - "endpointUrl": "https://europe-north1-aiplatform.googleapis.com/" + "description": "Locational Endpoint" }, { + "endpointUrl": "https://europe-southwest1-aiplatform.googleapis.com/", "description": "Locational Endpoint", - "location": "europe-southwest1", - "endpointUrl": "https://europe-southwest1-aiplatform.googleapis.com/" + "location": "europe-southwest1" }, { - "description": "Locational Endpoint", + "endpointUrl": "https://europe-west1-aiplatform.googleapis.com/", "location": "europe-west1", - "endpointUrl": "https://europe-west1-aiplatform.googleapis.com/" + "description": "Locational Endpoint" }, { + "location": "europe-west2", "description": "Locational Endpoint", - "endpointUrl": "https://europe-west2-aiplatform.googleapis.com/", - "location": "europe-west2" + "endpointUrl": "https://europe-west2-aiplatform.googleapis.com/" }, { - "description": "Locational Endpoint", + "endpointUrl": "https://europe-west3-aiplatform.googleapis.com/", "location": "europe-west3", - "endpointUrl": "https://europe-west3-aiplatform.googleapis.com/" + "description": "Locational Endpoint" }, { - "location": "europe-west4", "endpointUrl": "https://europe-west4-aiplatform.googleapis.com/", - "description": "Locational Endpoint" + "description": "Locational Endpoint", + "location": "europe-west4" }, { "description": "Locational Endpoint", @@ -115,19 +115,19 @@ "location": "europe-west8" }, { - "description": "Locational Endpoint", "endpointUrl": "https://europe-west9-aiplatform.googleapis.com/", - "location": "europe-west9" + "location": "europe-west9", + "description": "Locational Endpoint" }, { "description": "Locational Endpoint", - "location": "me-west1", - "endpointUrl": "https://me-west1-aiplatform.googleapis.com/" + "endpointUrl": "https://me-west1-aiplatform.googleapis.com/", + "location": "me-west1" }, { "description": "Locational Endpoint", - "location": "northamerica-northeast1", - "endpointUrl": "https://northamerica-northeast1-aiplatform.googleapis.com/" + "endpointUrl": "https://northamerica-northeast1-aiplatform.googleapis.com/", + "location": "northamerica-northeast1" }, { "description": "Locational Endpoint", @@ -135,43 +135,43 @@ "endpointUrl": "https://northamerica-northeast2-aiplatform.googleapis.com/" }, { + "description": "Locational Endpoint", "location": "southamerica-east1", - "endpointUrl": "https://southamerica-east1-aiplatform.googleapis.com/", - "description": "Locational Endpoint" + "endpointUrl": "https://southamerica-east1-aiplatform.googleapis.com/" }, { - "location": "southamerica-west1", "description": "Locational Endpoint", - "endpointUrl": "https://southamerica-west1-aiplatform.googleapis.com/" + "endpointUrl": "https://southamerica-west1-aiplatform.googleapis.com/", + "location": "southamerica-west1" }, { + "description": "Locational Endpoint", "location": "us-central1", - "endpointUrl": "https://us-central1-aiplatform.googleapis.com/", - "description": "Locational Endpoint" + "endpointUrl": "https://us-central1-aiplatform.googleapis.com/" }, { "description": "Locational Endpoint", - "endpointUrl": "https://us-central2-aiplatform.googleapis.com/", - "location": "us-central2" + "location": "us-central2", + "endpointUrl": "https://us-central2-aiplatform.googleapis.com/" }, { "location": "us-east1", - "description": "Locational Endpoint", - "endpointUrl": "https://us-east1-aiplatform.googleapis.com/" + "endpointUrl": "https://us-east1-aiplatform.googleapis.com/", + "description": "Locational Endpoint" }, { - "endpointUrl": "https://us-east4-aiplatform.googleapis.com/", "location": "us-east4", - "description": "Locational Endpoint" + "description": "Locational Endpoint", + "endpointUrl": "https://us-east4-aiplatform.googleapis.com/" }, { "endpointUrl": "https://us-south1-aiplatform.googleapis.com/", - "description": "Locational Endpoint", - "location": "us-south1" + "location": "us-south1", + "description": "Locational Endpoint" }, { - "location": "us-west1", "description": "Locational Endpoint", + "location": "us-west1", "endpointUrl": "https://us-west1-aiplatform.googleapis.com/" }, { @@ -180,14 +180,14 @@ "location": "us-west2" }, { - "description": "Locational Endpoint", "endpointUrl": "https://us-west3-aiplatform.googleapis.com/", + "description": "Locational Endpoint", "location": "us-west3" }, { + "location": "us-west4", "description": "Locational Endpoint", - "endpointUrl": "https://us-west4-aiplatform.googleapis.com/", - "location": "us-west4" + "endpointUrl": "https://us-west4-aiplatform.googleapis.com/" } ], "fullyEncodeReservedExpansion": true, diff --git a/discovery/aiplatform-v1beta1.json b/discovery/aiplatform-v1beta1.json index 5d5fabb471..bb2ab4719a 100644 --- a/discovery/aiplatform-v1beta1.json +++ b/discovery/aiplatform-v1beta1.json @@ -20,49 +20,49 @@ "documentationLink": "https://cloud.google.com/vertex-ai/", "endpoints": [ { - "endpointUrl": "https://asia-east1-aiplatform.googleapis.com/", "location": "asia-east1", + "endpointUrl": "https://asia-east1-aiplatform.googleapis.com/", "description": "Locational Endpoint" }, { - "location": "asia-east2", "endpointUrl": "https://asia-east2-aiplatform.googleapis.com/", + "location": "asia-east2", "description": "Locational Endpoint" }, { + "description": "Locational Endpoint", "endpointUrl": "https://asia-northeast1-aiplatform.googleapis.com/", - "location": "asia-northeast1", - "description": "Locational Endpoint" + "location": "asia-northeast1" }, { - "endpointUrl": "https://asia-northeast2-aiplatform.googleapis.com/", "location": "asia-northeast2", - "description": "Locational Endpoint" + "description": "Locational Endpoint", + "endpointUrl": "https://asia-northeast2-aiplatform.googleapis.com/" }, { - "endpointUrl": "https://asia-northeast3-aiplatform.googleapis.com/", "description": "Locational Endpoint", + "endpointUrl": "https://asia-northeast3-aiplatform.googleapis.com/", "location": "asia-northeast3" }, { + "location": "asia-south1", "endpointUrl": "https://asia-south1-aiplatform.googleapis.com/", - "description": "Locational Endpoint", - "location": "asia-south1" + "description": "Locational Endpoint" }, { "endpointUrl": "https://asia-southeast1-aiplatform.googleapis.com/", - "location": "asia-southeast1", - "description": "Locational Endpoint" + "description": "Locational Endpoint", + "location": "asia-southeast1" }, { + "endpointUrl": "https://asia-southeast2-aiplatform.googleapis.com/", "location": "asia-southeast2", - "description": "Locational Endpoint", - "endpointUrl": "https://asia-southeast2-aiplatform.googleapis.com/" + "description": "Locational Endpoint" }, { - "location": "australia-southeast1", + "endpointUrl": "https://australia-southeast1-aiplatform.googleapis.com/", "description": "Locational Endpoint", - "endpointUrl": "https://australia-southeast1-aiplatform.googleapis.com/" + "location": "australia-southeast1" }, { "endpointUrl": "https://australia-southeast2-aiplatform.googleapis.com/", @@ -70,29 +70,29 @@ "description": "Locational Endpoint" }, { - "endpointUrl": "https://europe-central2-aiplatform.googleapis.com/", "location": "europe-central2", + "endpointUrl": "https://europe-central2-aiplatform.googleapis.com/", "description": "Locational Endpoint" }, { - "endpointUrl": "https://europe-north1-aiplatform.googleapis.com/", + "description": "Locational Endpoint", "location": "europe-north1", - "description": "Locational Endpoint" + "endpointUrl": "https://europe-north1-aiplatform.googleapis.com/" }, { + "description": "Locational Endpoint", "endpointUrl": "https://europe-southwest1-aiplatform.googleapis.com/", - "location": "europe-southwest1", - "description": "Locational Endpoint" + "location": "europe-southwest1" }, { - "description": "Locational Endpoint", "endpointUrl": "https://europe-west1-aiplatform.googleapis.com/", + "description": "Locational Endpoint", "location": "europe-west1" }, { "description": "Locational Endpoint", - "location": "europe-west2", - "endpointUrl": "https://europe-west2-aiplatform.googleapis.com/" + "endpointUrl": "https://europe-west2-aiplatform.googleapis.com/", + "location": "europe-west2" }, { "endpointUrl": "https://europe-west3-aiplatform.googleapis.com/", @@ -101,8 +101,8 @@ }, { "location": "europe-west4", - "description": "Locational Endpoint", - "endpointUrl": "https://europe-west4-aiplatform.googleapis.com/" + "endpointUrl": "https://europe-west4-aiplatform.googleapis.com/", + "description": "Locational Endpoint" }, { "description": "Locational Endpoint", @@ -110,24 +110,24 @@ "location": "europe-west6" }, { + "endpointUrl": "https://europe-west8-aiplatform.googleapis.com/", "description": "Locational Endpoint", - "location": "europe-west8", - "endpointUrl": "https://europe-west8-aiplatform.googleapis.com/" + "location": "europe-west8" }, { - "description": "Locational Endpoint", "endpointUrl": "https://europe-west9-aiplatform.googleapis.com/", + "description": "Locational Endpoint", "location": "europe-west9" }, { + "description": "Locational Endpoint", "endpointUrl": "https://me-west1-aiplatform.googleapis.com/", - "location": "me-west1", - "description": "Locational Endpoint" + "location": "me-west1" }, { - "description": "Locational Endpoint", "location": "northamerica-northeast1", - "endpointUrl": "https://northamerica-northeast1-aiplatform.googleapis.com/" + "endpointUrl": "https://northamerica-northeast1-aiplatform.googleapis.com/", + "description": "Locational Endpoint" }, { "endpointUrl": "https://northamerica-northeast2-aiplatform.googleapis.com/", @@ -135,24 +135,24 @@ "location": "northamerica-northeast2" }, { - "endpointUrl": "https://southamerica-east1-aiplatform.googleapis.com/", "description": "Locational Endpoint", - "location": "southamerica-east1" + "location": "southamerica-east1", + "endpointUrl": "https://southamerica-east1-aiplatform.googleapis.com/" }, { - "description": "Locational Endpoint", "location": "southamerica-west1", - "endpointUrl": "https://southamerica-west1-aiplatform.googleapis.com/" + "endpointUrl": "https://southamerica-west1-aiplatform.googleapis.com/", + "description": "Locational Endpoint" }, { + "endpointUrl": "https://us-central1-aiplatform.googleapis.com/", "description": "Locational Endpoint", - "location": "us-central1", - "endpointUrl": "https://us-central1-aiplatform.googleapis.com/" + "location": "us-central1" }, { - "description": "Locational Endpoint", "location": "us-central2", - "endpointUrl": "https://us-central2-aiplatform.googleapis.com/" + "endpointUrl": "https://us-central2-aiplatform.googleapis.com/", + "description": "Locational Endpoint" }, { "endpointUrl": "https://us-east1-aiplatform.googleapis.com/", @@ -165,29 +165,29 @@ "endpointUrl": "https://us-east4-aiplatform.googleapis.com/" }, { + "location": "us-south1", "description": "Locational Endpoint", - "endpointUrl": "https://us-south1-aiplatform.googleapis.com/", - "location": "us-south1" + "endpointUrl": "https://us-south1-aiplatform.googleapis.com/" }, { "description": "Locational Endpoint", - "location": "us-west1", - "endpointUrl": "https://us-west1-aiplatform.googleapis.com/" + "endpointUrl": "https://us-west1-aiplatform.googleapis.com/", + "location": "us-west1" }, { - "location": "us-west2", "endpointUrl": "https://us-west2-aiplatform.googleapis.com/", - "description": "Locational Endpoint" + "description": "Locational Endpoint", + "location": "us-west2" }, { "description": "Locational Endpoint", - "endpointUrl": "https://us-west3-aiplatform.googleapis.com/", - "location": "us-west3" + "location": "us-west3", + "endpointUrl": "https://us-west3-aiplatform.googleapis.com/" }, { "description": "Locational Endpoint", - "location": "us-west4", - "endpointUrl": "https://us-west4-aiplatform.googleapis.com/" + "endpointUrl": "https://us-west4-aiplatform.googleapis.com/", + "location": "us-west4" } ], "fullyEncodeReservedExpansion": true, diff --git a/discovery/appengine-v1beta.json b/discovery/appengine-v1beta.json index f3117a361d..775135c14b 100644 --- a/discovery/appengine-v1beta.json +++ b/discovery/appengine-v1beta.json @@ -1063,7 +1063,9 @@ "$ref": "ListRuntimesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ] } } @@ -1861,7 +1863,7 @@ } } }, - "revision": "20230918", + "revision": "20230925", "rootUrl": "https://appengine.googleapis.com/", "schemas": { "ApiConfigHandler": { diff --git a/discovery/artifactregistry-v1.json b/discovery/artifactregistry-v1.json index 0799d3ff50..c94c4cee0f 100644 --- a/discovery/artifactregistry-v1.json +++ b/discovery/artifactregistry-v1.json @@ -20,8 +20,8 @@ "documentationLink": "https://cloud.google.com/artifacts/docs/", "endpoints": [ { - "endpointUrl": "https://artifactregistry.me-central2.rep.googleapis.com/", "location": "me-central2", + "endpointUrl": "https://artifactregistry.me-central2.rep.googleapis.com/", "description": "Regional Endpoint" } ], @@ -1668,7 +1668,7 @@ } } }, - "revision": "20230913", + "revision": "20230918", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "AptArtifact": { diff --git a/discovery/artifactregistry-v1beta1.json b/discovery/artifactregistry-v1beta1.json index af6ec380ed..3c2ff8f62a 100644 --- a/discovery/artifactregistry-v1beta1.json +++ b/discovery/artifactregistry-v1beta1.json @@ -20,8 +20,8 @@ "documentationLink": "https://cloud.google.com/artifacts/docs/", "endpoints": [ { - "description": "Regional Endpoint", "endpointUrl": "https://artifactregistry.me-central2.rep.googleapis.com/", + "description": "Regional Endpoint", "location": "me-central2" } ], diff --git a/discovery/index.json b/discovery/index.json index ecb4fde926..887021014f 100644 --- a/discovery/index.json +++ b/discovery/index.json @@ -287,6 +287,51 @@ "documentationLink": "https://developers.google.com/admin-sdk/alertcenter/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "alloydb:v1alpha", + "name": "alloydb", + "version": "v1alpha", + "title": "AlloyDB API", + "description": "AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases.", + "discoveryRestUrl": "https://alloydb.googleapis.com/$discovery/rest?version=v1alpha", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/alloydb/", + "preferred": false + }, + { + "kind": "discovery#directoryItem", + "id": "alloydb:v1beta", + "name": "alloydb", + "version": "v1beta", + "title": "AlloyDB API", + "description": "AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases.", + "discoveryRestUrl": "https://alloydb.googleapis.com/$discovery/rest?version=v1beta", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/alloydb/", + "preferred": false + }, + { + "kind": "discovery#directoryItem", + "id": "alloydb:v1", + "name": "alloydb", + "version": "v1", + "title": "AlloyDB API", + "description": "AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance. AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases.", + "discoveryRestUrl": "https://alloydb.googleapis.com/$discovery/rest?version=v1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/alloydb/", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "analytics:v3", @@ -676,6 +721,21 @@ "documentationLink": "https://developers.google.com/authorized-buyers/apis/marketplace/reference/rest/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "backupdr:v1", + "name": "backupdr", + "version": "v1", + "title": "Backup and DR Service API", + "description": "", + "discoveryRestUrl": "https://backupdr.googleapis.com/$discovery/rest?version=v1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "baremetalsolution:v2", diff --git a/discovery/logging-v2.json b/discovery/logging-v2.json index 1d6764d7fa..99b058da59 100644 --- a/discovery/logging-v2.json +++ b/discovery/logging-v2.json @@ -29,8 +29,8 @@ "documentationLink": "https://cloud.google.com/logging/docs/", "endpoints": [ { - "endpointUrl": "https://logging.me-central2.rep.googleapis.com/", "location": "me-central2", + "endpointUrl": "https://logging.me-central2.rep.googleapis.com/", "description": "Regional Endpoint" } ], @@ -7084,7 +7084,7 @@ } } }, - "revision": "20230915", + "revision": "20230924", "rootUrl": "https://logging.googleapis.com/", "schemas": { "BigQueryDataset": { diff --git a/discovery/pubsub-v1.json b/discovery/pubsub-v1.json index c043718ebe..4d38540a16 100644 --- a/discovery/pubsub-v1.json +++ b/discovery/pubsub-v1.json @@ -21,8 +21,8 @@ "endpoints": [ { "endpointUrl": "https://pubsub.me-central2.rep.googleapis.com/", - "location": "me-central2", - "description": "Regional Endpoint" + "description": "Regional Endpoint", + "location": "me-central2" } ], "icons": { @@ -1573,7 +1573,7 @@ } } }, - "revision": "20230830", + "revision": "20230921", "rootUrl": "https://pubsub.googleapis.com/", "schemas": { "AcknowledgeRequest": { diff --git a/discovery/pubsub-v1beta1a.json b/discovery/pubsub-v1beta1a.json index 73b92ec8b2..7f1f278d0a 100644 --- a/discovery/pubsub-v1beta1a.json +++ b/discovery/pubsub-v1beta1a.json @@ -20,9 +20,9 @@ "documentationLink": "https://cloud.google.com/pubsub/docs", "endpoints": [ { + "description": "Regional Endpoint", "endpointUrl": "https://pubsub.me-central2.rep.googleapis.com/", - "location": "me-central2", - "description": "Regional Endpoint" + "location": "me-central2" } ], "icons": { @@ -464,7 +464,7 @@ } } }, - "revision": "20230830", + "revision": "20230921", "rootUrl": "https://pubsub.googleapis.com/", "schemas": { "AcknowledgeRequest": { diff --git a/src/apis/index.ts b/src/apis/index.ts index b7971810fd..e29113b67d 100644 --- a/src/apis/index.ts +++ b/src/apis/index.ts @@ -51,6 +51,7 @@ import { } from './advisorynotifications'; import {VERSIONS as aiplatformVersions, aiplatform} from './aiplatform'; import {VERSIONS as alertcenterVersions, alertcenter} from './alertcenter'; +import {VERSIONS as alloydbVersions, alloydb} from './alloydb'; import {VERSIONS as analyticsVersions, analytics} from './analytics'; import { VERSIONS as analyticsadminVersions, @@ -682,6 +683,7 @@ export const APIS: APIList = { advisorynotifications: advisorynotificationsVersions, aiplatform: aiplatformVersions, alertcenter: alertcenterVersions, + alloydb: alloydbVersions, analytics: analyticsVersions, analyticsadmin: analyticsadminVersions, analyticsdata: analyticsdataVersions, @@ -961,6 +963,7 @@ export class GeneratedAPIs { advisorynotifications = advisorynotifications; aiplatform = aiplatform; alertcenter = alertcenter; + alloydb = alloydb; analytics = analytics; analyticsadmin = analyticsadmin; analyticsdata = analyticsdata; diff --git a/src/index.ts b/src/index.ts index 078d0fe786..a51dd0e035 100644 --- a/src/index.ts +++ b/src/index.ts @@ -42,6 +42,9 @@ export {advisorynotifications_v1} from './apis/advisorynotifications/v1'; export {aiplatform_v1} from './apis/aiplatform/v1'; export {aiplatform_v1beta1} from './apis/aiplatform/v1beta1'; export {alertcenter_v1beta1} from './apis/alertcenter/v1beta1'; +export {alloydb_v1} from './apis/alloydb/v1'; +export {alloydb_v1alpha} from './apis/alloydb/v1alpha'; +export {alloydb_v1beta} from './apis/alloydb/v1beta'; export {analytics_v3} from './apis/analytics/v3'; export {analyticsadmin_v1alpha} from './apis/analyticsadmin/v1alpha'; export {analyticsadmin_v1beta} from './apis/analyticsadmin/v1beta'; From 636318a6b01c3856004babd099edfff65394f224 Mon Sep 17 00:00:00 2001 From: Owl Bot Date: Tue, 26 Sep 2023 01:34:48 +0000 Subject: [PATCH 28/28] =?UTF-8?q?=F0=9F=A6=89=20Updates=20from=20OwlBot=20?= =?UTF-8?q?post-processor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --- release-please-config.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/release-please-config.json b/release-please-config.json index 9fb76e7172..ec648e1dea 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -278,6 +278,7 @@ "src/apis/cloudbilling": {}, "src/apis/metastore": {}, "src/apis/rapidmigrationassessment": {}, - "src/apis/playgrouping": {} + "src/apis/playgrouping": {}, + "src/apis/alloydb": {} } } \ No newline at end of file